用Myst4Viewer看了一下patch.m4b里面的字幕文件,发现字幕文件也是有一定的层次结构的。 ) W% E7 L7 [1 X P
层次如下,字幕ID, 对应的语音文件ID, 后面是和语音文件对应的一组字幕,每句字幕还包含显示的起始时间。 7 e& p5 p& D* t3 `2 {1 n) r
; c+ I/ Y0 j' k. x m
抓图如下 $ `2 A2 N+ ]2 c6 r5 }/ a
# h% i/ k+ Z4 @% M5 @2 @/ U: O
' V; Q2 L: _" R# C# k-------------------------------------------------- ) I4 H+ t5 A4 e6 C
2009.12.19 更新
8 I+ x# O# K$ C/ C+ v0 Y1 U分析了一下字幕文件patch.m4b中的english.m4b中的bin文件的格式。
7 r* Q2 l1 @+ m* y8 z3 M# x格式如下,都画在图片上了。其中1-5是代表5句字幕的定义信息, $ H; o+ z; T( U( ?& B1 U
最后4个字节定义了字幕的长度。
' {( T2 R* P* J* r! A1 N
. H0 e m8 H# J9 @/ u! n9 t$ h--------------------------------------------------
; Q# g" I$ H0 o) d B& ^2009.12.21 更新
& w; H- o- T$ a8 {9 [, G字幕文件里面有一个特殊的文件main_menu_ui.bin。
/ K3 O1 I) w! A估计游戏主菜单上的一些字幕都保存在这个文件里。
! }5 ]3 D2 M! ]5 a+ @" a# c大致分析了一下,格式也比较简单,下面是这个文件的格式。
% F" t3 H* F0 X到0x2A为止都是一些固定的信息,从0x2B开始是一组一组的字幕信息,结构如下。 ; O; L8 s: a, P* g5 N* G+ p8 Y
, h5 V- m8 m1 D$ Y
4字节 字幕ID长度 " Y% Q6 J5 c$ E1 R5 B
n字节 字幕ID & C1 z+ s' C @
4字节 字幕长度
# X5 K" f8 k1 [, n; ^( s! [: |/ G# B( [n字节 字幕 % D1 \" k9 B! r4 S2 n( D' m) r
& z2 m: x/ `- z7 V. h7 ~. h: X. z分析清楚了这个结构就很容易可以导出这个文件里的字幕了。 |