我使用以下代码从我的网络摄像头广播实时 mjpeg 流。
import com.github.sarxos.webcam.Webcam;
import com.github.sarxos.webcam.WebcamStreamer;
public class MjpegStreamingExample {
public static void main(String[] args) throws InterruptedException {
Webcam w = Webcam.getDefault();
new WebcamStreamer(8080, w, 0.5, true);
do {
Thread.sleep(5000);
} while (true);
}
我如何接收这个直播流并在另一台计算机上用 java 显示它?
最佳答案
我相信这个代码示例就是您所追求的:
IpCamDevice ipcam = new B7210("B7210", "114.32.216.24");
ipcam.setAuth(new IpCamAuth("demo", "demo"));
ipcam.setSize(B7210.SIZE_QVGA);
IpCamDriver driver = new IpCamDriver();
driver.register(ipcam);
Webcam.setDriver(driver);
WebcamPanel panel = new WebcamPanel(Webcam.getDefault());
panel.setFPS(0.5); // 1 frame per 2 seconds
JFrame f = new JFrame("Night Tree Somewhere");
f.add(panel);
f.pack();
f.setVisible(true);
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
因此 WebcamStreamer 使流在某些流(在您的情况下为端口 8080)上可用,然后在下面的代码中输入您要查找的摄像头的 IP 地址。
关于java - 在 java 中从 mjpeg 流读取和显示视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21692890/