记录FFmpeg常用的命令,留作备忘。

1. 将本地文件推流至RTMP Server,并循环播放

1
ffmpeg -stream_loop -1 -re -i ./file.mp4 -c copy -f flv "rtmp://localhost:1935/live/video live=1 timeout=5"

2. 将音频流转发到其他RTMP Server

1
ffmpeg -probesize 1M -analyzeduration 5M "rtmp://localhost:1935/live/audio1 live=1 timeout=5" -c copy -f flv "rtmp://localhost:1935/live/audio2 live=1 timeout=5"

3. 将视频缩放至指定分辨率(640x320),宽高比不一致时填充黑边

1
ffmpeg -i ./file.mp4 -vf "scale=iw*min(640/iw\,360/ih):ih*min(640/iw\,360/ih),pad=640:360:(640-iw)/2:(320-ih)/2" -c:v libx264 -crf 18 -c:a aac -f mp4 ./output.mp4

4. -vf -filter_complex 的区别: