ffmpeg - 从 ffmpeg 流式传输到 Youtube 时没有音频
问题描述
因此,在使用 ffmpeg 进行流式传输时,我无法在 youtube 上播放声音。
我尝试运行的命令;
ffmpeg \
-f v4l2 \
-vcodec h264 \
-video_size 864x480 \
-r 24 \
-i /dev/video1 \
-f alsa \
-thread_queue_size 1024 \
-ac 2 \
-i plughw:CARD=C920,DEV=0 \
-c:a aac \
-filter:a "volume=1.5" \
-b:a 128k \
-ar 44100 \
-vcodec copy \
-b:v 2000k \
-r 24 \
-g 48 \
-x264opts no-scenecut \
-bufsize 4096k \
-maxrate 2048k \
-f flv \
rtmp://a.rtmp.youtube.com/live2/STREAM_KODE
如果我使用 test.flv 之类的文件切换 rmtp 流。然后我尝试用 VLC 观看这个,我确实得到了声音。
如果我检查 VLC 中的音频编解码器,我确实看到编解码器是 aac。据我从他们的帮助页面中可以看出, aac 是正确的音频编解码器。
我不确定如何继续调试此问题,对此的想法会很棒。
解决方案
好的,所以我能够让它工作。我使用SRS
测试我的流,我注意到声音不连贯,我删除了
-x264opts no-scenecut \
and -ar 44100 \
,然后我可以在 youtube 上看到它
推荐阅读
- javascript - 想要生成唯一的数字 id,不能使用 node-uuid,因为后端需要数字 id
- assembly - 压缩的 C.LW 和 C.SW 指令不能使用标签吗?
- r - 遍历列表 R 中每个矩阵的值
- image - JavaFX:如何将多个图像组合成一个?
- hadoop - 创建表查询中的嵌套选择
- mysql - 如何在时间范围之间打印表 1 的值
- c++ - 带有单元测试的仅标头库的现代 CMake 项目
- php - 如何正确地将结果提取到数组中并传递给 php 中的 curl
- c# - 是否可以执行每分钟查询 Azure Cosmos DB 的服务?
- javascript - 如何在 mongo db 2.6 中使用“$dateToString”可以替代吗?