搜档网
当前位置:搜档网 › 如何在BD原盘中加入字幕

如何在BD原盘中加入字幕

如何在BD原盘中加入字幕
如何在BD原盘中加入字幕

1.得到片源

朋友到国外出差,就顺带捎回了几张蓝光光盘,本教程中,我以修改《最后的武士》这部电影为例,较为详细的向大家讲解整个制作过程。

图1

2. 复制数据

首先,需要安装AnyDVD 这个软件,通过它可以完整的将蓝光数据复制到硬盘上,这样才能继续下面的工作。

图2

我当时用的是6.4.6.5 版本,最新版的可以在论坛上搜索。

打开AnyDVD,检查一下蓝光设置,去除一些光盘的保护。

图3

Ripper 的过程很简单,安装好AnyDVD,然后将蓝光光盘放到蓝光光驱中,程序会自动清除所有的保护,这时我们只需要在状态栏里用右键点击那个

红色的狐狸图标,并选择"刻录DVD影碟到硬盘上...(R)"。

图4

在弹出的界面里,选择好"源目录"(就是放蓝光的光驱盘符)和"目的目录"(存放数据的本地磁盘目录,不要用中文目录因为后面用到的工具不支持

中文目录名),然后点击"拷贝DVD",就开始复制过程了。

图5

复制过程完成后,在E 盘THE_LAST_SAMURA 目录,我们会得到BDMV 和CERTIFICATE 两个目录,其结构如图所示,这就是我们需要的蓝光数据。

图6

3. 分析片源

为了工作准备,首先在 E 盘建一个"Temp" 的临时目录,以存放过程中所需要的文件。然后开始对这部电影的数据进行一些简单的分析,进入

"E:\THE_LAST_SAMURA\BDMV\STREAM" 目录,这里面存放了电影的正片、花絮、菜单、广告等等内容。一般来说,最大的那个文件就是电影正片视频主

文件,当然也有分成几个主文件的光盘,那个我们就不讨论了。按大小排序后,很明显的找出"00000.m2ts" 这个22.7G 的主文件。

图7

然后用"BDedit" 软件来进一步分析出这个主文件的"PLAYLIST" 和"CLIPINF"。打开"BDedit" 点击"Read" 按钮左边的"文件夹" 按钮,指定目

录到"E:\THE_LAST_SAMURA",在"BDMV" 窗口里会读出"index.bdmv" 和"MovieObject.bdmv" 的文件信息。

图8

这里不需要做什么操作,直接点到下一个"PLAYLIST" 窗口,程序一开始不会预读数据,要点一下上面的"Read" 按钮,首先读取的是

"00000.mpls" 数据,在"PlayList" 框中注意看"file" 这一项,它表示对应的"Stream文件",很巧的是00000.m2ts 就是我们刚才找到的主文件

,所以一下子我们就找到了。核对一下片长以确定没有找错。不是每个电影都是在第一个的,有的要仔细找哦。接着保存"PlayListMark" 的段落信

息,点击下面像磁盘一样的按钮,保存到"E:\Temp" 目录(开始我们建立的临时目录),文件名为:"chapter_00000_time.txt"。

图9

再进入下一个"CLIPINF" 窗口,读取"00000.clip",CLIP 文件和Stream 文件是一一对应的,显然"00000.clip" 就保存着电影正片的信息,我们

可以看到,电影正片VC-1 编码的,带DD5.1 英语、DD5.1 法语、DD2.0 西班牙语和导演

解说共四条音轨,六条字幕。

图10

找到这两个关键性的文件"00000.mpls" 和"00000.clpi",先复制到"E:\Temp",以做备份。

4. 准备资料

下载中文字幕,解压后取disk1 那条完整字幕,保存到"E:\Temp" 目录,重命名为"zho1.srt"。

既然有导演解说,就上射手网找找有没有解说的字幕,只找到一条Vobsub 的繁体字幕里有解说的内容

(https://www.sodocs.net/doc/011309415.html,/xml/sub/13/13456.xml),虽然还要转换比较麻烦,不过总比没有的强,呵呵。下载解压到"E:\Temp" 目录,得到

"VTS_01_0.idx" 和"VTS_01_0.sub" 2个文件。

在论坛里搜索时意外发现有人共享了一条384K DD5.1 的6区国语配音,欢喜之余,自然是下载保存了,呵呵。用纳米机器人下载后解压到

"E:\Temp" 目录,重命名为"zho.ac3"。

资料准备齐后,就计划一下,用国语配音替换掉西班牙语配音,用中文字幕替换掉1203 西班牙字幕,用解说字幕替换掉1205 西班牙字幕。

5. 处理字幕

中文字幕相对比较简单,首先用KMP 打开"00000.m2ts" 播放正片,再按"Alt+O" 加载外部字幕"E:\Temp\zho1.srt",检查字幕和电影的时间

轴是否吻合,然后用"Subtitle Workshop" 软件,打开zho1.srt 字幕进行调整和修改,主要需要注意修改的地方是:

1. 把字幕超过二行的进行合并;

2. 第一句字幕不要从00:00:00:000 开始;

3. 去除所有字幕修饰的标签 之类的;

4. 检查字幕的每行不要超过30个字;(这个是要根据你制作字体的大小以及电影的分辨率来判断的);

SRT 字幕的调整相对比较简单,我就不重复说了,论坛字幕区里有详细的教程,如果这个还不会,可以先去学习一下。

图11

解说字幕比较麻烦,因为是Vobsub 格式的,所以要转成SRT 格式才能使用,开始转换字幕的过程。

首先使用"SubRip" 这个软件,打开软件后按"Ctrl+O",点击"IFO文件" 按钮,打开"E:\Temp\VTS_01_0.idx" 索引文件,再点击左边

"Verify" 按钮以显示实际的字幕轨道。打开下拉列表,我们看到,其中包括一条英文字幕和两条中文字幕。

图12

选择第三个中文字幕(解说字幕),操作选择"字幕图片保存为4bit的BMP文件",选中"加时间及尺寸",然后点击"开始" 按钮。我们在"E:\Temp"

里新建一个文件夹叫"zho2",在弹出的窗口中指定它为保存BMP文件的位置,文件名随便,输个"0" 就行了。

图13

点击保存按钮后,我们需要对生成的BMP 文件进行一些设置,这样才方便下面的OCR 工作,点击颜色窗口,选中"Custom Colors and Contrast",

选择I-Author,颜色设置如图所示,然后点击确定。

图14

程序会把每一条字幕生成BMP文件存放在"E:\Temp\zho2" 目录中。结束后出现了文本窗口,首先核对一下帧数要和主文件的一样为23.976,然后设置

文本格式,点击"输出格式" - "设置输出格式",选择"SubRip(*.srt)",点击"转换成此格式" 按钮。得到SRT 格式的时间轴后,点击"文件" -

"另存为" 保存到"E:\Temp\zho2" 目录里,命名为"zho2.srt"。(一定要保存到和BMP文件同一个目录里)

图15

关于"SubRip" 软件的使用请参考说明。

得到时间轴和BMP 文件后,我们就可以用"SubToSrt" 软件进行OCR 识别转换了。打开"SubToSrt" 软件,打开"E:\Temp\zho2\zho2.srt" 文

件,程序会自动载入对应的BMP 文件,点击"开始识别",进行OCR 的过程,程序不是万能的,有些字也会不认识,特别是一些繁体字,所以需要你

坐在一旁看着,有些不认识的你要告诉它是什么字哦。还有些字会只识别到偏旁,没有识别到整个字,你需要按一下"扩展(Expand)" 按钮,然后再

输入正确的字符,最后点"保存Save" 按钮。

图16

OCR 的过程需要非常的仔细和认真,因为这直接关系到你制作字幕的质量,所以要感谢那些默默无闻的字幕工作者,没有他们辛勤的劳动,就没有我

们现在这么多电影的享受。完成后仔细的校对,确认无误后保存到"E:\Temp\zho2.srt",这样我们就拥有了SRT 格式的解说字幕了。

重复第5步一开始处理中文字幕的方法,把解说字幕重新调整到适合封装的形式,以备使用。

6. 处理音频

用KMP 加载外部音频来试听一个国配音轨的效果,发现音轨速度要快一些,没有办法和电影对的上,仔细分析后发现6 区DVD 使用的是PAL

制式,而蓝光用的是NTSC 制式,两者在帧数上是有差别的,所以导致了时间长度上的不一致,所以我们需要利用"Eac3to" 这个软件来进行转换。

下载"Eac3to" 解压到"E:\Temp\Eac3to" 目录里,然后打开"EAC3toGUI.exe" 图形化界面,首先设置"Eac3to.exe" 的位置,指定到

"E:\Temp\Eac3to\eac3to.exe"。

图17

在"Source file" 里输入"E:\Temp\zho.ac3" 原国配音轨文件路径,在"Destination file" 里输入"E:\Temp\zho_NTSC.ac3" 新国配音轨文件路

径,在"Conversion Options 1" 里设置编码率和原来保持一样就行了,原音轨是384K 的,GUI 里无法选择,只能自己在"Other Options" 里增加

-384 参数,(注意此时命令行里已经加入了这个参数)。

图18

再到"Conversion Options 2" 里选中PAL Slowdown,此时命令行应该是"eac3to.exe "E:\Temp\zho.ac3" "E:\Temp\zho_NTSC.ac3" -slowdown -

384",确认后就可以点"Convert" 按钮就行转换了。

图19

经过将近半小时后,得到"zho_NTSC.ac3" 以后就可以用KMP 加载试听了,测试发现不同步,有一定延时,接下来就需要进行调校了,方法可以参考

https://www.sodocs.net/doc/011309415.html,/viewthread.php?tid=276250这个帖子,darkhole 版主已经说的很详细了,我就简单说一下步骤:首先用"tsMuxeR" 软件

提取一条原片中的音轨,加入"E:\THE_LAST_SAMURA\BDMV\STREAM\00000.m2ts" 主文件,选中需要的音轨,选择"Demux" 保存到"E:\Temp"。

图20

打开"E:\Temp" 目录,发现已经有"00000.track_4352.ac3" 这个原片的英文音轨了,下面就用"电影魔方(MPEG Video Wizard)" 同时加载

"00000.track_4352.ac3" 和"zho_NTSC.ac3" 这两个文件到两条音轨上,进行比对,利用两个音轨都具体相同音效的时候进行比较,通过右边的输出

窗口播放,让两个音效听上去完全重叠在一起就行了,然后点击国配音轨,按"Ctrl+F",单位设置成"秒",得到位置的数值:0.9009 秒,约等于

900ms 这个就是延时的数值了。

图21

7. 重新封装

所有素材准备好后,就可以开始封装了,打开"tsMuxeR","Input"窗口加入

"E:\THE_LAST_SAMURA\BDMV\STREAM\00000.m2ts"、"E:\Temp\zho_NTSC.ac3"、"E:\Temp\zho1.srt"、"E:\Temp\zho2.srt" 这四个文件,用国配替换

掉第4轨西班牙语,设置900ms 的延时,语言设为"zho(chinese)",用中文字幕替换掉第9轨西班牙字幕,语言设为"zho(chinese)",用解说字幕替

换掉第11轨西班牙字幕,语言设为"zho(chinese)",选择"Create Blu-ray disk",保存到"E:\Temp"。

图22

"General" 窗口,选择"Mux VBR",选中"Use async I/O",关于这个"异步I/O",有人说选中了会报错,不过我试了没有发现,选中后在封装的时

候速度会快一些。

图23

"Blu-ray" 窗口,选择"Custom chapters list" 把第3步做好的"E:\Temp\chapter_00000_time.txt" 文件内容复制到下面的文本框中。

图24

"Split & cut" 窗口,选择"No split" 因为我们是做蓝光盘嘛,所以不需要分割。

图25

"Subtitles" 窗口,Font 选择"HeiTi",常规,大小65,Additional border, pixels: 1(加边1),bottom offse, pixels: 60(距离底边60)

,这些是控制字幕效果的,根据各人的习惯设置,关于使用自定义字体的方法参见别的帖子。

图26

所有设置好后,就可以点"Start muxing" 按钮开始进行封装了。当然这里写的是我已经试验成功的过程,在一开始试验的时候,最好用"tsMuxeR"

先将SRT 字幕Demux 成SUP 检查一下有没有错误,在这里也推荐大家先将字幕做成SUP 格式,最后再一起封装,这个SRT 转SUP 的操作很简单

,我就不再说明了。在第一次封装音轨的时候,最好在完成10% 或者20% 的时候,取消掉,然后先用KMP 播放一下新封装的这个m2ts 文件,看看

音轨是否吻合,因为有遇到过外挂测试正常,封装后却不正常的情况,所以先试一下以防万一,免得花了老半天封装出来的没有用,浪费时间。

8. 合成光盘

封装完成后,进入"E:\THE_LAST_SAMURA\BDMV\STREAM" 目录把"00000.m2ts" 文件移动到"E:\Temp" 以做备份,然后将

"E:\Temp\BDMV\STREAM" 目录里的"00001.m2ts" 文件(新封装的正片)改名为"00000.m2ts" 再移动到"E:\THE_LAST_SAMURA\BDMV\STREAM" 目录

,以替换原来的正片。

进入"E:\Temp\BDMV\CLIPINF" 目录,将"00001.clpi" 文件改名为"00000.clpi" 再移动到"E:\THE_LAST_SAMURA\BDMV\CLIPINF" 目录,在第

三步我们已经做过备份,所以这里直接覆盖就行了。

PLAYLIST 的修改相对麻烦一些,因为我们要保留原盘的弹出菜单,所以不能直接覆盖PLAYLIST 文件,要在原文件的基础上修改,下面请出小巧

而且免费的Hex 编辑器"MiTeC Hexadecimal Editor",分别打开"E:\Temp\BDMV\PLAYLIST\00000.mpls" 文件和

"E:\THE_LAST_SAMURA\BDMV\PLAYLIST\00000.mpls" 文件,然后选择菜单里的"File" - "Compare File"(比较文件)。

图27

软件会将两者不同内容的字节做上阴影标记,这样就方便我们查找和修改了,在新封装文件(E:\Temp\BDMV\PLAYLIST\00000.mpls)里找到从0x050

开始的02 到09 的8 个字节,复制也行照抄也行,反正只要修改到原文件(E:\THE_LAST_SAMURA\BDMV\PLAYLIST\00000.mpls)相同的位置就可以

了。

图28

接着打开"Bdedit" 软件,和第3步一样,指定目录到"E:\THE_LAST_SAMURA",进入PLAYLIST 窗口,在00000 文件点一下Read 按钮,会发现在

"IN time" 有了变化,这也就是我们刚才修改所造成的,我们需要重新导入段落信息,点击"导入按钮",指定第3步生成的

"E:\Temp\chapter_00000_time.txt",然后点击"Save" 按钮。

图29

以上合成过程可以参考别的帖子。

9. 测试完成

此时全部的工作基本上已经完成,可以用TotalMedia Theatre 或者PowerDVD 7 进行目录播放测试了,经测试国语配音、中文字幕、解说字幕

全部OK,弹出菜单有效,章节选择正常,选择西班牙语或字幕对应出现中文,因为目前还没有办法修改菜单图片,所以这样已经接近完美了。

图30

图31

进入"E:\THE_LAST_SAMURA\BDMV\PLAYLIST" 目录,删除"00000.mpls.bak" 和"00000.mpls.backup" 两个程序自动的备份文件,将"00000.mpls"

复制到"E:\THE_LAST_SAMURA\BDMV\BACKUP\PLAYLIST" 目录里覆盖原文件,进入"E:\THE_LAST_SAMURA\BDMV\CLIPINF" 目录,将"00000.clpi" 复

制到"E:\THE_LAST_SAMURA\BDMV\BACKUP\CLIPINF" 目录里覆盖原文件,用脚本小程序检查一下目录结构的完整性,再打开Nero 8 开始制作ISO 镜

像文件。

图32

利用"Image Recorder" 映像刻录功能,新建"蓝光光盘(UDF)" 选项:"手动设置",UDF分区型号:"物理分区",文件系统版本:"UDF 2.50",将

""E:\THE_LAST_SAMURA" 下的所有文件拖入光盘内,由于容量超过了25G,所以可以选择"BD DL"(双层蓝光),输入光盘卷标,点"刻录",输入保

存文件名,类型选择"ISO",20分钟后,一个完美的蓝光映像文件就产生了,以后用虚拟光盘加载播放或者刻成蓝光光盘,都很方便啦。

图33

10. 最后感想

自己也是刚学习蓝光技术时间不长,也经过了很多次的失败,自己把一些平时试验的经验总结起来给大家分享,也是希望大家可以少走弯路,尽

快的掌握蓝光光盘的修改方法。当然这个方法是有一定局限性的,并不能应用在所有的光盘上,不同的光盘,不同的结构,都会有不同的应对方法,

所以也拿了一个相对比较简单的光盘来做为例子讲解,希望大家不要死搬硬套,最好能学会举一反三,这样才能使技术不断的发展。

文章中所用到的软件工具,在百度都可以搜到,我就不一个一个上传了,这篇教程也花了近一天的时间才完成,其中难免会有错误和疏漏,希望

????,??????/ ????

相关主题