用Myst4Viewer看了一下patch.m4b里面的字幕文件,发现字幕文件也是有一定的层次结构的。 & M( o* _! i# p
层次如下,字幕ID, 对应的语音文件ID, 后面是和语音文件对应的一组字幕,每句字幕还包含显示的起始时间。
& y x& o# _: ~+ r# f! i3 X5 K5 p
6 y* I, a% P9 l1 L' Q- w抓图如下 . @* c. Z0 g! w, `
& w, J3 g0 I5 q8 }/ k- o6 ?
7 Y3 F( @$ P/ e# L0 r
--------------------------------------------------
' F9 Z! C- e! F* W! b9 b2009.12.19 更新 0 \# y! K+ Q5 L
分析了一下字幕文件patch.m4b中的english.m4b中的bin文件的格式。 7 e! c. x7 [; w- }" R
格式如下,都画在图片上了。其中1-5是代表5句字幕的定义信息,
6 O5 e5 h' D: v1 \2 v最后4个字节定义了字幕的长度。
" r9 o' o7 G( c- p% \. g3 K 5 Z9 _5 k; S. f& c0 w
-------------------------------------------------- 7 f/ O/ R' K! ^' i
2009.12.21 更新
! B9 j' w( z6 E c& ^1 V字幕文件里面有一个特殊的文件main_menu_ui.bin。
! t0 ]! q$ a4 G估计游戏主菜单上的一些字幕都保存在这个文件里。 # S0 |, L, v3 `: ?
大致分析了一下,格式也比较简单,下面是这个文件的格式。
) g: o5 f& b7 a( m! z到0x2A为止都是一些固定的信息,从0x2B开始是一组一组的字幕信息,结构如下。 ; c" ?3 {& X- t( y9 o( w6 I9 W
: e7 O* p4 q) C5 K3 w
4字节 字幕ID长度 ! b+ l! `) ?, d
n字节 字幕ID
1 t0 l7 I# V' e4字节 字幕长度
5 l. x# ~% H W' ]" V& d# Xn字节 字幕
, K* i% g8 q$ N
% B/ o0 g9 i0 V7 }( x# d分析清楚了这个结构就很容易可以导出这个文件里的字幕了。 |