使用Pymkv在mp4视频中添加字幕的python中的mkvmerge等效代码

时间:2019-04-14 11:15:25

标签: python-3.x

如果我有vid.mp4文件和subs.srt(字幕文件),则可以在Linux上使用mkvmerge来创建带有如下字幕的新mkv文件:

mkvmerge -o newmkv.mkv vid.mp4 subs.srt 

如何使用Pymkv模块(mkvmerge的包装器)执行相同的操作?我尝试过:

import pymkv
mkv = pymkv.MKVFile()
mkv.add_track('vid.mp4')
mkv.add_track('subs.srt')
mkv.mux('newmkv.mkv')

newmkv.mkv文件创建了字幕,但声音消失了。我想念什么?

1 个答案:

答案 0 :(得分:1)

添加mp4文件add_track仅添加文件的第一首曲目,仅添加视频时,您需要在另一轨道中添加音频并指定track_id

mkv.add_track(pymkv.MKVTrack('vid.mp4', track_id=1))

通常,音频轨道为1,但最好使用mkvmerge -J vid.mp4

进行验证