用Myst4Viewer看了一下patch.m4b里面的字幕文件,发现字幕文件也是有一定的层次结构的。
8 T7 x4 m% |2 E" ]0 c( @层次如下,字幕ID, 对应的语音文件ID, 后面是和语音文件对应的一组字幕,每句字幕还包含显示的起始时间。
# V% a) C! `4 l. z7 s2 `$ [/ h; c; I( C, o3 K
抓图如下 + D9 O0 d! f/ \( W5 ~, Y( ?/ N
9 ~ g7 j( x% N% Z5 L, Z$ ]
7 Y6 ^% D/ n K9 E+ `) f0 `
--------------------------------------------------
^9 W+ a- v5 S2009.12.19 更新
) R0 A* \2 q3 q6 l4 S5 Y分析了一下字幕文件patch.m4b中的english.m4b中的bin文件的格式。
' {' v2 _( ^( Q# j3 ^3 e格式如下,都画在图片上了。其中1-5是代表5句字幕的定义信息,
% M. T2 C. o' X4 m0 x% v, e: y& j2 G最后4个字节定义了字幕的长度。 / b) u: q2 l# Q' t! D
5 `' b; _$ N$ {6 h* }--------------------------------------------------
$ @2 w% L) [4 u0 Y( K0 t% z2009.12.21 更新 8 j4 Z. }! ~$ C
字幕文件里面有一个特殊的文件main_menu_ui.bin。 $ W3 ?- N; {2 f& A, T4 I2 a
估计游戏主菜单上的一些字幕都保存在这个文件里。
2 A& ]* G0 E8 } X/ n1 e大致分析了一下,格式也比较简单,下面是这个文件的格式。 % J% J9 M/ e8 r% ]& I$ c
到0x2A为止都是一些固定的信息,从0x2B开始是一组一组的字幕信息,结构如下。 ; {* q& s* u2 J( M0 M
' I7 m; @- A6 | }* W
4字节 字幕ID长度 ^7 C) L& q, Q4 f
n字节 字幕ID . S: F, Z& @% p! ~* |8 t {
4字节 字幕长度
2 V6 [# [, v7 C6 N0 u2 ~n字节 字幕 7 Y8 D1 j4 i: F8 ?
( r4 U+ F# }# c I4 ]. i7 P* _
分析清楚了这个结构就很容易可以导出这个文件里的字幕了。 |