想用JAVA实现个视频聊天室,大家有资料么 RT大家有这方面的资料么?给我参考下 多谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 哈哈,,好像那个JMF里有一个支持播放影像的,你用那个包,再用java最强的网络方面的啊,,把数据传过来,设一个缓存,再播放不就可以了啊,, java可以播放视频文件,但不能捕获,只能用jni 用c import java.awt.*;import java.awt.event.*;import javax.swing.*;import java.net.*;import java.io.IOException;public class ChatDemo extends JFrame { private JTextField tfIP,tfMessage; private List display; DatagramSocket ds = null; DatagramPacket dp = null; public ChatDemo(){ super("聊天程序"); //set up GUI JPanel southPanel= new JPanel(); southPanel.setLayout(new BorderLayout()); tfIP = new JTextField(10); tfMessage = new JTextField(15); southPanel.add(tfIP,BorderLayout.WEST); southPanel.add(tfMessage,BorderLayout.EAST); display = new List(); //display.setVisibleRowCount(10); getContentPane().add(display,BorderLayout.CENTER); getContentPane().add(southPanel,BorderLayout.SOUTH); try{ ds = new DatagramSocket(3000); } catch(SocketException e){ e.printStackTrace(); } new Thread( new Runnable(){ public void run(){ byte[] buf = new byte[1024]; DatagramPacket dp = new DatagramPacket(buf,1024); while(true){ try{ ds.receive(dp); display.add(new String(buf,0,dp.getLength())+"\n\n From:"+dp.getAddress().getHostAddress()+":"+ dp.getPort()); } catch(IOException e){ if(!ds.isClosed()) e.printStackTrace(); } } } } ).start(); tfMessage.addActionListener( new ActionListener(){ public void actionPerformed(ActionEvent event){ try{ dp = new DatagramPacket(tfMessage.getText().getBytes(),tfMessage.getText().getBytes().length, InetAddress.getByName(tfIP.getText()),3000); ds.send(dp); tfMessage.setText(""); } catch(IOException e){ e.printStackTrace(); } } } ); addWindowListener( new WindowAdapter(){ public void windowClosing(WindowEvent event){ ds.close(); dispose(); System.exit(0); } } ); setSize(300,400); setVisible(true); setResizable(false); } public static void main(String[] args){ ChatDemo application = new ChatDemo(); application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); }} 太乐观了,在WINDOWS上用JAVA做种东东,是在找死,LINUX上俺没试过。 jmf可以从摄像头采集视频的。 如何在JList组件中显示TreeMap中的Key 数据源获取连接慢? 这样的题目好难,求高手解答 如何将对象序列化成XML文本? 一个有点基础的问题,关于类加载。 谁能给一段java写的生成缩略图的代码? java程序执行时,引用类何时装载? 请问谁有关于JDK中基本类的详细解释! 怎么在LINUX下编译JAVA? 刚过了SCJP,来散分,大家来捧场啊!!! 基础的问题:谁能给一个简单的在JPanel加载图片的成功例子? 求助String()构造函数
import java.awt.event.*;
import javax.swing.*;
import java.net.*;
import java.io.IOException;public class ChatDemo extends JFrame {
private JTextField tfIP,tfMessage;
private List display;
DatagramSocket ds = null;
DatagramPacket dp = null;
public ChatDemo(){
super("聊天程序");
//set up GUI
JPanel southPanel= new JPanel();
southPanel.setLayout(new BorderLayout());
tfIP = new JTextField(10);
tfMessage = new JTextField(15);
southPanel.add(tfIP,BorderLayout.WEST);
southPanel.add(tfMessage,BorderLayout.EAST);
display = new List();
//display.setVisibleRowCount(10);
getContentPane().add(display,BorderLayout.CENTER);
getContentPane().add(southPanel,BorderLayout.SOUTH);
try{
ds = new DatagramSocket(3000);
}
catch(SocketException e){
e.printStackTrace();
}
new Thread(
new Runnable(){
public void run(){
byte[] buf = new byte[1024];
DatagramPacket dp = new DatagramPacket(buf,1024);
while(true){
try{
ds.receive(dp);
display.add(new String(buf,0,dp.getLength())+"\n\n From:"+dp.getAddress().getHostAddress()+":"+
dp.getPort());
}
catch(IOException e){
if(!ds.isClosed())
e.printStackTrace();
}
}
}
}
).start();
tfMessage.addActionListener(
new ActionListener(){
public void actionPerformed(ActionEvent event){
try{
dp = new DatagramPacket(tfMessage.getText().getBytes(),tfMessage.getText().getBytes().length,
InetAddress.getByName(tfIP.getText()),3000);
ds.send(dp);
tfMessage.setText("");
}
catch(IOException e){
e.printStackTrace();
}
}
}
);
addWindowListener(
new WindowAdapter(){
public void windowClosing(WindowEvent event){
ds.close();
dispose();
System.exit(0);
}
}
);
setSize(300,400);
setVisible(true);
setResizable(false);
}
public static void main(String[] args){
ChatDemo application = new ChatDemo();
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
}
}