我想把我的网络摄像头的实况流发送到YouTube。我可以跟随YouTube's guide一直到步骤8。"Stream Connection“告诉我”没有数据“,"Go Live”按钮仍然不可点击。这种情况的屏幕截图可以在

作为编码软件,我计划使用FFmpeg,因为它可以在目标平台上运行,一个带有Raspbian的树莓派。使用video4linux2支持的USB网络摄像头。
FFmpeg's wiki显示,可以通过以下方式实现文件流式传输:
ffmpeg -re -i input.mkv \
-c:v libx264 -preset veryfast -maxrate 3000k \
-bufsize 6000k -pix_fmt yuv420p -g 50 -c:a aac -b:a 160k -ac 2 \
-ar 44100 -f flv rtmp://live.twitch.tv/app/<stream key>我对这个命令做了如下修改: 1.用-f v4l2 -i /dev/video0从摄像头中获取视频流。2. -an不播放任何音频。3.它向YouTube的RTMP服务器rtmp://a.rtmp.youtube.com/live2/<stream key>进行广播
该命令的最终版本现在是:
RTMP_URL="rtmp://a.rtmp.youtube.com/live2"
STREAM_KEY="secr-etse-cret-secr"
OUTPUT=$RTMP_URL/$STREAM_KEY
ffmpeg -re -f v4l2 -i /dev/video0 \
-c:v libx264 -preset veryfast -maxrate 3000k \
-bufsize 6000k -pix_fmt yuv420p -g 50 -an \
-f flv $OUTPUT当我运行这个命令时,我本以为"Stream connection“会在几秒钟后变为"No data”之外的其他值,但这并没有发生。
我尝试使用以下命令将流记录到本地文件:
ffmpeg -re -f v4l2 -i /dev/video0 \
-c:v libx264 -preset veryfast -maxrate 3000k \
-bufsize 6000k -pix_fmt yuv420p -g 50 -an \
-f flv test.flv这样做效果很好。这向我证明了问题出在如何让YouTube接受视频流。
发布于 2020-02-21 02:51:34
下面的代码在使用Windows时运行良好,您可以根据需要进行调整
ffmpeg -loglevel debug -threads:v 2 -threads:a 8 -filter_threads 2 -thread_queue_size 512 -f dshow -i video="HP Wide Vision HD" -f dshow -i audio="Microphone Array (Realtek Audio)" -pix_fmt yuv420p -c:v libx264 -qp:v 19 -profile:v high -rc:v cbr_ld_hq -level:v 4.2 -r:v 60 -g:v 120 -bf:v 3 -refs:v 16 -f flv rtmp://youtube_stream_url/stream_keyhttps://stackoverflow.com/questions/57540004
复制相似问题