三星不支持 FFmpeg 导出编解码器

FFmpeg export codec not supported by Samsung

我正在使用 FFmpeg 渲染视频(将图像文件与音频连接起来,然后应用速度和音量过滤器)以导出视频以上传到 TikTok。因此,我必须先将视频移动到我的phone。

我不明白为什么我的 phone (S20) 会愉快地播放其中一个视频(编解码器信息如图),但在播放另一个时会出现错误“不支持编解码器”(信息第二) .

编解码器信息来自 VLC,如您所见,两个视频具有相同的编解码器 (H264-MPEG4)。

通过分析资料,我得出的唯一结论是,这与不同视频的“解码格式”不同有关。我如何更改后者的导出命令以便我的 phone 支持编解码器?

连接代码 ffmpeg -f concat -safe 0 -i {path_temp}\clips.txt -c copy -y "{path_temp}\{title}_a.mp4

过滤代码 ffmpeg -i input.mp4 -filter:a "volume={volume}" -y temp.mp4"

第二个过滤器 ffmpeg -i temp.mp4 -filter_complex "[0:v]setpts={1/speed}*PTS[v];[0:a]atempo={speed}[a]" -map "[v]" -map "[a]" -y output.mp4

既然是重新编码,那就一步完成吧。

ffmpeg -f concat -safe 0 -i {path_temp}\clips.txt -filter_complex "[0:v]setpts={1/speed}*PTS,format=yuv420p[v];[0:a]volume={volume},atempo={speed}[a]" -map "[v]" -map "[a]" -y output.mp4

format=yuv420p 生成广泛兼容的像素格式。