vlcj在java中的网络摄像头流

时间:2017-03-29 12:08:02

标签: java vlcj

我正在尝试制作一个从我的网络摄像头直播的简单程序。

public static void main(String[] args) throws Exception
{
    int port = nextAvailable();
    //String media = "/root/Desktop/525600.mp4";
    String media = "/dev/video0";
    String[] options = {":sout=#duplicate{dst=rtp{sdp=rtsp://:"+port+"/stream},dst=display}", ":sout-all", ":sout-keep"};
    MediaPlayerFactory mediaPlayerFactory = new MediaPlayerFactory(args);
    HeadlessMediaPlayer mediaPlayer = mediaPlayerFactory.newHeadlessMediaPlayer();
    mediaPlayer.playMedia(media,options);
    System.out.println("Using port: "+port);
    Thread.currentThread().join();
}

如果我使用评论媒体(/root/Desktop/525600.mp4),则流可以正常运行。但是,我不知道如何从网络摄像头流式传输。我尝试了/ dev / video0但它出现了以下错误:

  

[00007fae70008f78]核心访问错误:读取错误:参数无效

     

[00007fae70008f78] filesystem access error:读取错误:无效   参数

     <00> [00007fae7000d3d8]核心流错误:无法预填充缓冲区

我做错了什么?

2 个答案:

答案 0 :(得分:0)

答案 1 :(得分:0)

简单地替换

String media = "/dev/video0";

String media = "v4l2:///dev/video0";

现在有效。