【问题标题】:FFMPEG YouTube Live Too FastFFMPEG YouTube 直播太快了
【发布时间】:2017-04-06 12:15:59
【问题描述】:

所以我将视频和音频流式传输到 YouTube,如下所示

背景

1. 首先我将图形 GIF 转换为 MP4 文件

ffmpeg -f gif -i graphic.gif -c:v libx264 -pix_fmt yuv420p -vf scale=1280:-1 temp.mp4


2. 然后我在 MP4 上覆盖一个带有文本的 PNG

ffmpeg -i temp.mp4 -i overlay.png -filter_complex "overlay=10:10" '.$graphicsPath.'/graphic.mp4


3. 然后我开始流式传输视频并使用以下代码将其与音频结合(sources.txt 只是一个 concat 列表 *)

ffmpeg -f concat -i sources.txt -i music.mp3 \
    -c:v libx264 -c:a aac -shortest -deinterlace \
    -pix_fmt yuv420p -preset '.$encoding.' -r 30 -g 60 -b:v 2500k \
    -acodec libmp3lame -ar 44100 -threads 6 -qscale 3 -b:a 712000 \
    -maxrate 800k -bufsize 1400k \
    -f flv rtmp://a.rtmp.youtube.com/live2/KEY


4. 流结束后,代码重新开始,用一首新歌模仿 247 流。


问题

所以我遇到的问题是它似乎流得太快了。这与缓冲区太长的缓冲问题相反(例如,如果您打开流,则在第一首歌曲完成时缓冲的完整歌曲)

有谁知道我可以如何限制输出?我试过maxrate 和bufsize 但没有真正的结果。


* sources.txt 示例 文件'graphic.mp4'
文件'graphic.mp4'
文件'graphic.mp4'
文件'graphic.mp4'
文件'graphic.mp4'
文件'graphic.mp4'
等等

【问题讨论】:

    标签: video youtube ffmpeg streaming


    【解决方案1】:

    Ffmpeg 尽可能快地处理输入。要将其减慢到实时,请在流式传输到 rtmp 时添加“-re”标志

    【讨论】:

      猜你喜欢
      • 2017-09-18
      • 2017-09-21
      • 1970-01-01
      • 2018-07-16
      • 2018-06-03
      • 2018-10-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多