首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从ffmpeg向ffserver发送2种不同的摄像机馈送

从ffmpeg向ffserver发送2种不同的摄像机馈送
EN

Stack Overflow用户
提问于 2015-04-28 19:24:53
回答 1查看 3.9K关注 0票数 2

我目前正在一个项目中工作,在这个项目中,我必须通过TCP连接将2个网络摄像机流从计算机流到另一个计算机,我可以没有问题地流1:

使用

ffserver.conf:

代码语言:javascript
复制
            HTTPPort 8090
            HTTPBindAddress 0.0.0.0
            MaxClients 40
            MaxBandwidth 30000

            CustomLog -
            NoDaemon

            <Stream status.html>
            Format status
            ACL allow localhost
            ACL allow 192.168.0.0 192.168.255.255
            </Stream>

           #feed for camera 1
           <Feed webcam1.ffm>
           File /tmp/webcam1.ffm
           FileMaxSize 100M
           </Feed>

           #feed for camera 2
           <Feed webcam2.ffm>
           File /tmp/webcam2.ffm
           FileMaxSize 100M
           </Feed>

          #stream for feed 1
          <Stream webcam1.mjpeg>
          Feed webcam1.ffm
          Format mjpeg
          VideoSize 1280x720
          VideoFrameRate 30
          Preroll 0
          NoAudio
          Strict -1
          </Stream>

          #stream for feed2
          <Stream webcam2.mjpeg>
          Feed webcam2.ffm
          Format mjpeg
          VideoSize 1280x720
          VideoFrameRate 30
          Preroll 0
          NoAudio
          Strict -1
          </Stream>

命令运行ffserver:

代码语言:javascript
复制
          ffserver /etc/ffserver.conf

命令来发送ffserver:

代码语言:javascript
复制
         ffmpeg -v 2 -r 20 -f video4linux2 -i /dev/video0 http://localhost:8090/webcam1.ffm

它工作得很好,但是当我尝试运行另一个提要时:

代码语言:javascript
复制
         ffmpeg -v 2 -r 20 -f video4linux2 -i /dev/video1 http://localhost:8090/webcam2.ffm

我只能看到第二条流和第一条不再工作了。什么主意?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-04-30 20:11:52

同时使用多个USB摄像头可以使总线饱和。这似乎是你的情况,因为启动第二个相机切断了第一个。

这种情况已经从USB1.1很普遍的时候开始改善了。大多数甚至低端主板都有多个USB2 2/3控制器,这些控制器是完全独立的,可以运行多个摄像头而无需担心。USB2可以支持多个低分辨率和帧的相机。发送未压缩图像的高帧率高分辨率相机可能仍会使总线饱和。

来源

可能的解决办法:

  1. 切换到MJPEG输入(较低带宽使用)

检查设备的功能:

ffmpeg -f v4l2 -list_formats all -i /dev/video0

如果它支持MJPEG,那么使用它而不是原始视频:

ffplay -f v4l2 -input_format mjpeg -i /dev/video0 ...

  1. 为第二个摄像头使用不同的USB控制器。

如果主板不具有多个控制器,那么就获得一个PCI USB卡。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/29928153

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档