Stream audio with FFMPEG Slideshow
利用 FFMPEG Slideshow 推流音频

按照wiki里的用法, 首先

ffmpeg -loop 1 -i img.jpg -i audio.wav -c:v libx264 -c:a aac -b:a 192k -shortest out.mp4

分析: -loop 1 循环一次

-i img.jpg 你的图片

-i audio.wav 你的音频

-c:v libx264 视频编码器 libx264

也可以写成 -vcodec libx264

-c:a aac -b:a 192k 音频编码器 aac 采样率 192k

-shortest 告诉编码器 在音频流结束后停止.

改一下, 用于推流.

ffmpeg -loop 1 -i img.jpg -i audio.wav -c:v libx264 -c:a aac -b:a 192k -shortest -f flv -y rtmp://localhost"

能用 , 但是

frame=  807 fps= 37 q=28.0 size=    3155kB time=00:00:30.18 bitrate= 856.3kbits/s speed= 1.4x       
speed= 1.4x

这意味着推流将早于观众结束, 又因为使用了 -shortest 参数, 所以观众看到一半 服务端就会停止推流.

ffmpeg -re -loop 1 -i img.jpg -i audio.wav -c:v libx264 -c:a aac -b:a 192k -shortest -f flv -y "rtmp://localhost"

加上 -re , 让他按帧率发送.

能用了.

Ref:https://trac.ffmpeg.org/wiki/Slideshow


最后修改于 Sun, 01 Apr 2018