6. 复合型FFmpeg命令行
6.1. 多路视频合成一路
使用1080p的4图像,以2*2方式合成为一个1080p视频
ffmpeg -hwaccel mxvid -c:v h264_mxvid -i xxx0.mp4 -hwaccel mxvid -c:v h264_mxvid -i xxx1.mp4 -hwaccel mxvid -c:v h264_mxvid -i xxx2.mp4 -hwaccel mxvid -c:v h264_mxvid -i xxx3.mp4 -filter_complex "[0:v]scale_metax=w=1920:h=1080[base];[0:v]scale_metax=w=960:h=540[video_1];[1:v]scale_metax=w=960:h=540[video_2];[2:v]scale_metax=w=960:h=540[video_3];[3:v]scale_metax=w=960:h=540[video_4];[base][video_1]overlay_metax=x=0:y=0[overlay1];[overlay1][video_2]overlay_metax=x=960:y=0[overlay2];[overlay2][video_3]overlay_metax=x=0:y=540[overlay3];[overlay3][video_4]overlay_metax=x=960:y=540" -c:v h264_mxenc -y -f mp4 xxx4.mp4
6.2. 一路视频转码多路
将1路视频转码为4路
ffmpeg -i xxx0.mp4 -map 0 -c:v hevc_mxenc -preset faster -rc vbr -b:v 1M -y output1.mp4 -map 0 -c:v hevc_mxenc -preset fast -rc vbr -b:v 2M -y output2.mp4 -map 0 -c:v hevc_mxenc -preset medium -rc vbr -b:v 2M -y output3.mp4 -map 0 -c:v hevc_mxenc -preset fast -rc crf -qp 23 -y output4.mp4
6.3. 使用PNG添加水印
ffmpeg -hwaccel mxvid -c:v h264_mxvid -i Bosphorus.mp4 -i 0023.png -filter_complex "[0:v]scale_metax=format=bgra[in0];[1:v]hwupload_metax,scale_metax=format=bgra [in1];[in0][in1]overlay_metax=x=960:y=540:b=1[ov3];[ov3]scale_metax=format=nv12" -c:v h264_mxenc -f mp4 -y BrosOver.mp4
6.4. 多路解码
ffmpeg -hwaccel metax -c:v h264_mxvid -i xxx1.mp4 -hwaccel metax -c:v h264_mxvid -i xxx2.mp4 -hwaccel metax -c:v h264_mxvid -i xxx3.mp4 -map 0:v -y xxx1out.yuv -map 1:v -f rawvideo -y xxx2out.yuv -map 2:v -f rawvideo -y xxx3out.yuv
6.5. 多路转码
ffmpeg -s 1920x1080 -pix_fmt nv12 -i 1.yuv -s 1920x1080 -pix_fmt nv12 -i 2.yuv -map 0 -c:v hevc_mxenc -preset medium -rc vbr -b:v 2M -r 30 -y 1.mp4 -map 1 -c:v hevc_mxenc -preset medium -rc vbr -b:v 2M -r 25 -y 2.mp4
6.6. 多路转码
ffmpeg -hwaccel mxvid -c:v h264_mxvid -i xxx1.mp4 -hwaccel mxvid -c:v h264_mxvid -i xxx2.mp4 -hwaccel mxvid -c:v h264_mxvid -i xxx3.mp4 -map 0 -c:v hevc_mxenc -preset medium -rc vbr -b:v 2M -r 30 -y 1.mp4 -map 1 -c:v hevc_mxenc -preset medium -rc vbr -b:v 2M -r 25 -y 2.mp4 -map 2 -c:v hevc_mxenc -preset medium -rc vbr -b:v 2M -r 25 -y 3.mp4