Eac3to
eac3to是一个免费音频转换工具,主要可以用来方便的处理BD。作者是madshi。
在doom9讨论帖里,作者madshi会很友好地回答每个问题的。请不要怕,勇敢的发问吧,当然前提是用英语问他。
下载: http://madshi.net/eac3to.zip
配合工具:
- mkvtoolnix - mkv工具套装。
- NeroAACEnc - AAC编码器,输出mp4或m4a文件。
- Haali媒体分离器 - 分离多种视频文件。
- ArcSoft TotalMedia Theater - 提供DTS-HD解码器。
把NeroAACEnc的可执行文件放在eac3to的目录里即可被调用。TMT则需要安装,如果安装好了还是没法调用,参考这里和madshi给的信息。安装mkvtoolnix或Haali分离器后,可以把视频封装成mkv。
eac3to可以显示BD主要播放列表的结构,显示mkv、(m2)ts、VOB、EVO等文件的信息。 也可以解码/编码很多种音频。也可以抽出AC3、E-AC3、DTS(HD/MA)、TrueHD等音轨,或抽出TrueHD的AC3核心。也可以抽出BD的章节文件信息,把MPEG2、AVC、VC-1视频封成Matroska文件。还能干很多事,同时也在不断的添加新功能。
命令
eac3to是一个命令行工具,和[x264]等一样。命令很简单和人性化。 一般性用法:
>eac3to sourcefile[+sourcefile2] [trackno:] [destfile|stdout] [-options]
- sourcefile是源文件,只要eac3to支持。sourcefile+sourcefile2是把两个文件按照顺序接在一起,可以用于处理BD中分开的m2ts。
- trackno: destifile -option是对特定轨道号以option指定的方式进行处理,输出文件destifile。option对于之前的destifile起作用。可以一次性以不同的方式处理不同的轨道输出多个文件,像这样trackno1: destifle1 -option1 trackno2: destifile2 -option2。eac3to会根据destifile的扩展名选择编码。
不加选项和输入文件执行eac3to,会返回帮助。
用法举例
下面以处理CLANNAD的BDMV第一卷为例。
此BDMV文件夹位于"G:\CLANNAD\BDMV\",BD的树形目录如下:
H:. ├─BDMV │ ├─BACKUP │ │ ├─CLIPINF │ │ └─PLAYLIST │ ├─CLIPINF │ ├─PLAYLIST │ └─STREAM └─CERTIFICATE └─BACKUP
- 查看BD信息
>eac3to "G:\CLANNAD\BDMV\" 1) 00000.mpls, 2:01:30 [0+1+2+3+4+8].m2ts - Chapters, 30 chapters - h264/AVC, 1080p24 /1.001 (16:9) - RAW/PCM, Japanese, multi-channel, 48kHz - DTS Master Audio, Japanese, multi-channel, 48kHz - RAW/PCM, Japanese, stereo, 48kHz
- 直接执行eac3to,什么参数都不加,直接输出BD的章节、音频等信息。
- 查看章节文件
>eac3to.exe 00000.mpls 1) 00000.mpls, 2:01:30 [0+1+2+3+4+8].m2ts - Chapters, 30 chapters - h264/AVC, 1080p24 /1.001 (16:9) - RAW/PCM, Japanese, multi-channel, 48kHz - DTS Master Audio, Japanese, multi-channel, 48kHz - RAW/PCM, Japanese, stereo, 48kHz
- 和上面的基本一样。查看播放列表是看不到有没有字幕的。
- 抽出章节文件
cd到"G:\CLANNAD\BDMV\STREAM\"
>eac3to ..\PLAYLIST\00000.mpls chap01.txt
- "chap01.txt"会被写入"G:\CLANNAD\BDMV\STREAM\"文件夹。
- chap01.txt里有30个章节,时间是从0000.m2ts到00004.m2ts按顺序排下来的。可以用VempX的章节时间计算工具处理这个章节文件。
- 查看00000.m2ts的信息
>eac3to 00000.m2ts M2TS, 1 video track, 3 audio tracks, 2 subtitle tracks, 0:24:12, 24p /1.001 1: h264/AVC, 1080p24 /1.001 (16:9) 2: RAW/PCM, Japanese, 5.1 channels, 16 bits, 48kHz 3: DTS Master Audio, Japanese, 5.1 channels, 16 bits, 48kHz (core: DTS, 5.1 channels, 16 bits, 1509kbps, 48kHz) 4: RAW/PCM, Japanese, 2.0 channels, 16 bits, 48kHz 5: Subtitle (PGS), Japanese 6: Subtitle (PGS), English
- eac3to告诉我们,这个文件有视频轨1条,音频轨3条,字幕轨两条,在下面显示出了具体的信息:
- 1号视频轨AVC编码,分辨率1080p,帧率24000/1001,比例16/9。
- 2号音频轨是PCM(可以认为是wav),语言日语,声道5.1,深度16bits,频率48kHz。
- 3号音频轨DTS-MA,语言日语,声道5.1,深度16bits,频率48kHz。同时带了DTS core,同样也是声道5.1,深度16bits,频率48kHz,但码率是1509kbps。
- 4号音频轨是PCM,语言日语,声道2.0,深度16bits,频率48kHz。
- 5号字幕轨是PGS字幕,语言日语。
- 6号字幕轨是PGS字幕,语言英语。
- 知道了文件信息后,就可以针对不同的轨道进行处理了。
- 将5.1声道的PCM编码成无损的FLAC:
>eac3to 00000.m2ts 2: audio_1.flac
- 在经过一段时间后,会编码出audio_1.flac。
- 直接抽出DTS-MA:
>eac3to 00000.m2ts 3: audio_2.dtsma
- eac3to可以同时操作多条轨道
- 以640kbps把5.1的PCM压成AC3,从DTS-MA抽出DTS-core,以quality=0.5把2.0的PCM压成AAC,把2.0的PCM压成FLAC,并且抽出日语字幕:
>ea3to 00000.m2ts 2: audio_3.ac3 -640 3: audio_4.dts -core 4: audio_5.m4a -quality=0.5 4: audio_6.flac 5: sub_1.sup
- 可以一次都做完。
尽管CLANNAD的BD是一个很好很典型的例子,但也有一定局限性。如果BD里有TrueHD音轨,可以抽TrueHD的AC3核心。假设00000.m2ts的第二条轨道是TrueHD。
>eac3to 00000.m2ts 2: auido_c.ac3
- 更多用法
eac3to source.pcm destination.flac eac3to source.thd destination.flac destination.ac3 eac3to source.evo 1: chapters.txt 2: video.mkv 3: audio.flac 5: subtitle.sup eac3to feature_1.evo+feature_2.evo movie.mkv eac3to blurayMovieFolder movie.mkv
其他
解码器
ffmpeg/lavc(eac3to已经内置)可以正确的处理各种音频,除了6.1和7.1声道的DTS(HD)和(E-)AC3。6.1和7.1声道的DTS(HD)需要用ArcSoft的解码器解码,而且ffmpeg/lavc似乎会无视DTS-HD的HD部分。但是现在用7.1声道DTS的动画还没出现过,用6.1声道DTS-HD的EVA2.22里也有同等质量的替代音轨。(E-)AC3方面,madshi推荐用Nero的解码器解码,事实上ffmpeg/lavc完全可以胜任5.1声道以下的解码任务。 因此eac3to内置的ffmpeg/lavc完全能够满足普通需求。
如果不巧碰到高级音轨了,就尽情折腾吧:)
GUI
madshi并没有为eac3to写GUI,但有热心人写了GUI,madshi都列在他的帖子里了:
参考资料
- eac3to - audio conversion tool - http://forum.doom9.org/showthread.php?t=125966
- eac3to @ wikibooks - http://en.wikibooks.org/wiki/Eac3to
- Eac3to and More GUI eac3to的一个GUI - http://forum.doom9.org/showthread.php?t=135095
- Clown BD 分离BD的工具 - http://forum.slysoft.com/showthread.php?t=25818