Raspberry Pi的WebRTC H.264视频流仅适用于Pi相机,不适用于USB相机

问题描述 投票:2回答:1

我已经设置Janus,以通过Raspberry Pi通过WebRTC传输H.264视频。使用Pi Camera时可以使用。但是,当我使用USB网络摄像头(Logitech C270)时,视频不会显示在浏览器中。

Pi Camera流和USB网络摄像头流之间的配置和命令行参数几乎相同。唯一的区别是使用Pi Camera,我使用raspivid生成H.264编码的视频,然后将其通过管道传输到ffmpeg以用作RTP流。而对于USB网络摄像头,我直接使用ffmpeg从V4L2设备获取输入并将其编码为H.264。

更具体地说,对于Pi Camera,我的命令是:

raspivid -t 0 -n -fps 20 -pf baseline -b 700000 -o - | ./ffmpeg -re -i - -c:v copy -bsf dump_extra -an -r 20 -f rtp rtp://0.0.0.0:8004?pkt_size=1300

使用USB摄像头(Legitech C270),我的命令是:

./ffmpeg -f v4l2 -i /dev/video0 -bsf dump_extra -an -r 20 -codec:v h264_omx -profile:v baseline -f rtp rtp://0.0.0.0:8004?pkt_size=1300

Janus配置完全相同。

当视频不显示时,在Javascript控制台或Janus控制台上没有打印错误。 chrome://media-internals/也没有显示任何错误。

如何进一步调试此问题?

raspberry-pi webrtc h.264 janus janus-gateway
1个回答
0
投票

您确定/ dev / video0实际上是您的Logitech摄像机吗?只要连接树莓派pi摄像头模块/ dev / video0就是pi摄像头模块。尝试找出您是否拥有正确的设备。

您可能还想创建一个mp4文件而不是rtp流。这样,您至少可以将问题追溯到ffmpeg或janus。如果您从ffmpeg得到了一个好的mp4文件,则问题可能出在其他地方。

您也没有从ffmpeg收到任何错误吗?

© www.soinside.com 2019 - 2024. All rights reserved.