MKV 高清视频文件分解与封装和音频编码的转换

购买液晶电视之后,发现无法播放 DTS 音轨(就是图像很正常,可就是没有声音),提示无法识别的声音格式,查看说明书,不支持 DTS 音轨,上网搜索了一番才发现液晶电视几乎都不支持 DTS,太过分了!要知道网上下载的高清电音几乎都是DTS格式的啊,郁闷中。。。

没办法,发现一篇文章提到可以使用工具解决,经过几番折腾后,终于成功搞定;

这里需要使用两个工具 EAC3TO 和 MKVTOOLNIX ,可以自行下载,都是开源的免费软件

首先使用命令查看文件的信息:

F:\> mkvmerge -i avatar.mkv

可以看到输出里面包含有视频、音频和字幕,并且是英文字幕,根据数据轨道信息,使用下面的命令将文件进行拆解
F:\> mkvextract tracks avatar.mkv 1:video.x264 2:audio.dts 3:subtitles.srt

该命令将 mkv 文件中的不同数据轨道拆解到不同的文件中,如果只是想要音频信息,可以使用下面的命令:

F:\> mkvextract tracks avatar.mkv 2:audio.dts

下一步,可以看一下音轨的信息
F:\> eac3to audio.dts

好,下面是将 DTS 格式的转换为 AC3 格式
F:\> eac3to audio.dts audio.ac3

然后查看一下 AC3 格式声音的参数,会发现声道和采样频率没有变化,但是 bps 变小了,所以文件也变小了,大约是原来的一半
F:\> eac3to audio.ac3

最后使用工具将视频、转换后音频合并为 MKV ,当然也可以将字幕文件替换为中文的,这里需要注意字幕文件的格式,UTF8+格式的最好;

F:\> mkvmerge -o output.mkv video.x264 audio.ac3 subtitles.srt

另外液晶电视一般不支持内置的 srt 格式的字幕,所以可以将字幕文件单独存放为一个和高清MKV同名的文件,因此可以不必将字幕文件内置到MKV文件中;
最后发现播放时开始的声音是对的,但是越往后,越不对头,声音明显的滞后,难道是什么参数设置的有问题,使用界面程序MMG ,添加 video.x264时提示,说无法确定视频的FPS,如果不设置,就是用默认的 25FPS,天啊,原来如此,24FPS的视频使用 25FPS 播放,当然视频就播放的比较快了,24分钟就播放完了之前25分钟的影片,声音自然就原来越滞后了,嗯 设置--default-duration 0:24000/1001fps 就OK 了,完整的命令行如下:

F:\> mkvmerge -o output.mkv --default-duration 0:24000/1001fps video.x264 audio.ac3 subtitles.srt

附加说明,这一步还是使用 MMG 来的方便啊,否则命令后打起来挺容易出错的;

但是该文件放到 USB 中使用电视播放居然说文件格式错误,为什么?电脑播放很正常的啊!

难道是原来 MKV 中的其他信息被搞丢了?嗯,很有可能,这次尝试直接替换原来文件中的音轨,其他都不变,命令行如下:

F:\> mkvmerge -o output.mkv -A -S avatar.mkv audio.ac3

该命令是将原来的 MKV 中的 Audio 和 Subtitles 去除,然后附加上 audio.ac3 作为音轨,最后将输出文件和字幕一起放到电视上播放,OK ,终于全部通过了;

为了方便以后使用,特作 BAT 方便自动化处理,如下所示:

 
  
@ ECHO Extract DTS Audio From %1 File
@ MKVExtract tracks
%1 2 :input . dts

@
ECHO cut audio delay info
@ DelayCut -out Audio
. dts input . dts

@
ECHO Convert DTS Audio To AC3 Audio
@ eac3to Audio
. dts Audio . ac3 - 640

@
ECHO Replace DTS Audio With AC3 Audio
@ MKVMerge -o
%2 -A -S %1 Audio . ac3

@
ECHO Delete All Temporary Files
@
DEL Audio . ac3 Audio . dts input . dts

@
PAUSE

该批处理两个参数,第一个参数是 输入文件,第二个是输出文件,命令行如下(批处理文件名称为 DTS2AC3.bat)

 
  
DTS2AC3 D: \ Movies \ Avatar . 1080 . DTS . mkv Avatar . 1080 . AC3 . mkv

需要注意的是,中间文件存放在当前目录,输出文件如果没有路径,那么也存放在当前目录中。

同时需要注意:保证磁盘空间够用啊,否则到了中间报磁盘工具不足就只能清理磁盘后重来了;

转载于:https://www.cnblogs.com/WonKerr/archive/2011/01/07/MKV_HD_EXTRACT_MERGE.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值