我有一个节目有两个来源,蓝光和 DVD。蓝光不包含正确的音频语言,但 DVD 包含。我想将 DVD 音轨添加到蓝光中。所以我决定翻录它们。
我已经ffmpeg
从 DVD 中提取了音轨并将其转换为正确的长度:
ffmpeg -i "dvd source" -map 0:a:1 -af "atempo=0.95904096" "audio track"
然后我将音轨添加到蓝光文件中:
ffmpeg -i "blu ray source" -i "audio track" -map 0 -map 1 -c:v copy -c:s copy -c:a copy "merged mkv"
该集以正确的音轨正确播放,然后几分钟后,音频停止播放。
DVD 翻录后,我单独检查了音轨,音轨可以正常工作。我还从合并的 MKV 中重新提取了音频,音轨也可以正常工作。音轨的时长很好。
我想知道我是否做错了什么。
答案1
我认为我已经找到了一些方法,使它在我的前两集上工作。我没有向蓝光源添加音频,而是从两个源中提取了音频,还只从蓝光中提取了字幕(因为我不希望为我的语言使用字幕 ;) ),并通过从蓝光复制视频、从两个源复制音频轨迹和字幕来创建一个新文件。
以下是我目前所做的有效措施:
- ffmpeg -i“ dvd 源” -map 0:a:1 -af“ atempo = 0.95904096”“音轨 1”
- ffmpeg -i“蓝光源”-map 0:a -c copy“音轨 2”
- ffmpeg -i“蓝光源”-map 0:s -c copy“subs”
- ffmpeg -i“蓝光源”-i“音轨 1”-i“音轨 2”-i“subs”-map 0:v-map 1:a-map 2:a-map 3:s-c copy“合并文件”
我不太明白为什么这个能工作而之前却不行,因为理论上我做的是同样的事情。也许它不喜欢没有按顺序排列的轨道 ID?