 

0
20
0
UID: 74329
权限: 30
属性: 受性 发帖: 90
(1精)
积分: 494
章鱼: 5
大葱: 42
茄子: 4563
注册:2010/12/26
存在感:295
|
本帖最后由 RainのNight 于 2011/5/18 09:25 编辑
首先,要感谢大家的支持!
回复 4# regnad
特别感谢4L提供这么好的情报!
发表一下这一个多星期的努力成果,可能没什么用来着。。。
因为找不到反编译VocalTure的工具(那东西貌似用C++编的,我不是很清楚)
下面的东西是通过WinHex以及对那个口型生成工具(叫什么来的着,名字忘了)的vsq模块反编译后总结出来的
'文件Chunk(共14字节)
4d 54 68 64 '4字节 File Chank ///MThd
00 00 00 06 '4字节 Chank length ///6
00 01 '2字节 Format number ///1
00 XX '2字节 Track number(XX默认02) ///2
01 e0 '2字节 时间单位 ///480 注:这是指MID中将每一拍被分为480份
'音轨Chunk(多轨文件则重新从此处开始)
主音轨部分:
4d 54 72 6b '4字节 Track Chank ///MTrk
00 00 00 XX '4字节 Track Data length ///一般为33
00 ff '2字节 格式标识 ///255
03 '1字节 シーケンス名标识 ///3
0c '1字节 シーケンス名偏移 ///12
4d 61 73 74 65 72 20 54 72 61 63 6b シーケンス名 '12字节 シーケンス名 ///Master Track
00 ff '2字节 格式标识 ///255
51 '1字节 テンポ标识 ///81
03 '1字节 テンポ偏移 ///3
0a 0d da '3字节 テンポ值 ///658906 注:这是转换后的值
00 ff '2字节 格式标识 ///255
58 '1字节 拍子标识 ///88
04 '1字节 拍子偏移 ///4
04 02 18 08 '4字节 拍子 ///
00 ff '2字节 格式标识 ///255
2f 00 '2字节 此段结束
内存值如下:
00 ff 03 0c 4d 61 73 74 65 72
20 54 72 61 63 6b 00 ff 51 03 0a 0d da 00 ff 58
04 04 02 18 08 00 ff 2f 00
第一音轨部分:
4d 54 72 6b '4字节 Track Chank ///MTrk
00 04 e7 7d '4字节 Track Data length ///321405 此例的值
00 ff '2字节 格式标识 ///255
03 '1字节 シーケンス名标识 ///3
06 '1字节 シーケンス名偏移 ///6 此例的值
a5 dc a5 a4 a5 b9 '字节为上述的值 シーケンス名 ///ボイス 注:Shift-JIS 此例的值
00 ff '2字节 格式标识 ///255
7f '1字节 テキスト长度 ///127
44 4d 3a 30 30 30 30 3a ... '127字节 文本数据 注:删去DM:0000:之类的数据后应为119字节
'循环上述3条N次后,每次得到119字节的有效数据
直到如下情况:
00 b0 '2字节 文本主体可识别部分结束 ///
或者
2f '1字节 文本主体读取完毕 ///此处正确的内存值应该为2f 00,所以处理要偏移2个字节
除上述两种情况外,其它情况则说明这是个错误文件
'音轨信息
[Common]
Version=DSB301 '版本
Name=Voice1 '音轨名称
Color=181,162,123 '音轨选项卡的颜色
DynamicsMode=1
PlayMode=1
[Master]
PreMeasure=4
[Mixer]
MasterFeder=0
MasterPanpot=0
MasterMute=0
OutputMode=0
Tracks=1
Feder0=0
Panpot0=0
Mute0=0
Solo0=0
'音轨数据
[EventList]
0=ID#0000 '格式为MID时间点或段=ID#索引号
7680=ID#0001 '第一个音(例)
230400=EOS '音轨结束(例)不指定索引
[ID#0000] '无音索引号的数据
Type=Singer
IconHandle=h#0000
[ID#0001] '有音索引号的数据
Type=Anote
Length=240
Note#=64
Dynamics=64
PMBendDepth=8
PMBendLength=0
PMbPortamentoUse=0
DEMdecGainRate=50
DEMaccent=50
LyricHandle=h#0001 '歌词索引号
[h#0001] '第一个歌词
L0="i","i",0.000000,0,0
[h#0002] '下一个歌词(例)
L0="tsu","ts M",0.000000,64,0,0
[h#0066] '无歌词,音的结束点(例)
IconID=$04040001
IDS=normal
Original=1
Caption=[Normal] Type 1
Length=680
StartDepth=64
DepthBPNum=0
StartRate=50
RateBPNum=0
'参数
[PitchBendBPList] 'PIT参数(-8192到8191,默认0)
7680=0 '格式为MID时间点或段=参数值
[PitchBendSensBPList] 'PBS参数(0到24,默认2)
7680=2 '格式为MID时间点或段=参数值
[DynamicsBPList] 'DYN参数(0到127,默认64)
7680=64 '格式为MID时间点或段=参数值
[EpRResidualBPList] 'BRE参数(0到127,默认0)
7680=0 '格式为MID时间点或段=参数值
[EpRESlopeBPList] 'BRI参数(0到127,默认64)
7680=64 '格式为MID时间点或段=参数值
[EpRESlopeDepthBPList] 'CLE参数(0到127,默认0)
7680=0 '格式为MID时间点或段=参数值
[GenderFactorBPList] 'GEN参数(0到127,默认64)
7680=64 '格式为MID时间点或段=参数值
[PortamentoTimingBPList] 'POR参数(0到127,默认64)
7680=64 '格式为MID时间点或段=参数值
[OpeningBPList] 'OPE参数(0到127,默认127)
7680=127 '格式为MID时间点或段=参数值
有一些东西貌似可有可无 |
|