我想ffmpeg
将视频文件转换为包含一个特定音频文件和一个特定字幕流的输出文件。
我想要选择的流如下:
Stream #0:0: Video: hevc (Main), yuv420p(tv), 1920x1036 [SAR 1:1 DAR 480:259], 23.98 fps, 23.98 tbr, 1k tbn, 23.98 tbc (default)
Stream #0:4(jpn): Audio: aac (LC), 48000 Hz, stereo, fltp
Stream #0:6(eng): Subtitle: ass
所以我尝试了命令
ffmpeg -i input.mkv -c:v libx264 -c:a mp3lame -map 0:v:0 -map 0:a:4 -map 0:s:6 output.mp4
但我收到错误
Automatic encoder selection failed for output stream #0:2. Default encoder for format mp4 (codec none) is probably disabled. Please choose an encoder manually.
Error selecting an encoder for stream 0:2
我不明白该错误消息,因为我没有选择“stream 0:2”。也许我误解了地图选项? 使用什么选项可以解决这个问题?
答案1
ass
字幕无法放入mp4
容器中。请尝试使用-c:s mov_text
:
ffmpeg -i input.mkv -c:v libx264 -c:a libmp3lame -c:s mov_text -map 0:0 -map 0:4 -map 0:6 output.mp4