File format for VOCALOID3

vsqxとか呼ばれているファイル形式に関するメモ。

以下は生成したファイルから類推した情報。DTDとかrelaxNGとか書いたことないのでかなりテキトウな表記法になってる点に注意。データの性質からすると表にするよりクラス継承的な表記の方がいいかも知れない。

entity名親ノード子ノードメモ
vsq3なし。
これがroot
vender/version
vVoiceTable/mixer/masterTrack
vsTrack+/seTrack/karaokeTrack/aux
xmlns="http://www.yamaha.co.jp/vocaloid/schema/vsq3/"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.yamaha.co.jp/vocaloid/schema/vsq3/ vsq3.xsd"
vendervsq3CDATA固定'Yamaha corporation'。
vendorじゃないので注意。
versionvsq3CDATA'3.0.0.11'
多分ファイルフォーマットの更新時に変化する。
(とはいえVocaloid3 Editorは現在3.0.4.0でupdateは都合4回のはず?)。
vVoiceTablevsq3vVoice+歌手テーブル。
そのファイルで利用するかに関わらず生成環境で設定されている全歌手に対応する
vVoice要素が作られるようだ。だから雑誌付録DVDの「ボカロPのvsqx」を読むとエラーがでやすいの…。
mixervsq3masterUnit/vsUnit+/seUnit/karaokeUnitミキサ全体に相当。
vstPluginをつかうと該当*Unit要素にvstPlugin要素が追加されるみたい
(詳細調査は保留)。
設定値はaux/content以下のCDATAに「も」書き出されてる
ようだけどそっちの解読はかなり気力と時間が要りそう。
masterTrackvsq3seqName/comment/
resolution/preMeasure/timeSig/tempo*
マスタートラック。ミキサの'Master'と
「Track Editorの一番上あたり」の設定。
vsTrackvsq3vsTrackNo/trackName/comment/musicalPart+トラックデータ
vsTrackNovsTrack数値トラック番号
Track1=0
trackNamevsTrackCDATAトラックエディタ画面上のトラック名
commentvsTrackCDATAコメント
musicalPartvsTrackposTick/playTime/partName/comment/
stylePlugin/
partStyle/singer/mCtrl+/note+
「パート」のデータ
posTickmusicalPart数値多分この「パート」の、Trackの中での開始タイミング。in Tick。
playTimemusicalPart数値多分この「パート」の再生時間。in Tick。
partNamemusicalPartCDATAトラックエディタ画面上の「パート名」
commentmusicalPartCDATA「パート」のコメント。
Vocaloid Editorではパートのプロパティダイアログで書ける。
stylePluginmusicalPartstylePluginID/stylePluginName/version不明。
Vocaloid3 Editorの操作で変化させる方法があるかも未確認。
stylePluginIDstylePluginCDATAデフォルト'ACA9C502-A04B-42b5-B2EB-5CEA36D16FCE'
stylePluginNamestylePluginCDATAデフォルト'VOCALOID2 Compatible Style'
versionstylePluginCDATAデフォルト'3.0.0.1'
partStylemusicalPartattr+「パートの歌唱スタイル」ダイアログに
相当すると思われる。
attrpartStyle数値要素のアトリビュート'id'でさらに細かく指定。
idの取りうる値:
accent/bendDep/bendLen/decay/fallPort/opening/risePort
singermusicalPartposTick/vBS/vPCパートを歌う歌手
posTicksinger数値このパート内でこの歌手を使い始めるタイミング? in Tick。
vBSsinger数値歌手の言語?(多分vVoice要素で定義されたもの)
vPCsinger数値歌手の番号(多分vVoice要素で定義された通し番号)
mCtrlmusicalPartposTick/attrピアノロール上のパラメータエディタの曲線に相当
posTickmCtrl数値パート中の、コントロールパラメータ設定位置。in Tick。
(デフォルトで)生成されるのは最小10Tick単位?
attrmCtrl数値パート中の、コントロールパラメータ設定値。
'id'アトリビュートでパラメータ種別指定。
idの取りうる値は未確認。とりあえず'DYN'はある。
notemusicalPartposTick/durTick/noteNum/velocity
lyric/phnms
noteStyle
ピアノロール上の1音
posTicknote数値音を出す(≒note on)までの、「このパートの演奏開始からの相対時間」。in Tick。
durTicknote数値音を出してから音を切る(≒note off)までの時間? in Tick。デフォルトで480=四分音符相当
velocitynote数値このノートのvelocityだと思うけど、vel?dyn?vol?
lyricnoteCDATAこのノートの、ピアノロール上の歌詞表記。
phnmsnoteCDATAこのノートの、ピアノロール上の音素表記
(phnms=PHoneticナントカ?)。
noteStylenoteattr+/seqAttr+このノートの「音の出し方」。
note onしてからの音量(エンベロープ)音程(ビブラートやポルタメント)変化の設定と、
発話的なVocaloid用固有の発音情報みたい。
openingもあるけど…?
attrnoteStyle数値noteStyleのパラメータに相当するもの。
idアトリビュート必須でパラメータ名が入るみたい。
差し当たって確認できるのは:
accent/bendDep/bendLen/decay/
fallPort/opening/risePort
vibLen/vibType
seqAttrnoteStyleelem+noteStyleのパラメータに相当するもの。
多分数値一つで済まないタイプのパラメータのための汎用要素で、
idアトリビュートでパラメータ名を示す。
とりあえずid=vibDep/id=vibRateがある。
posNrmelem数値デフォルト'22391'
名前からするとnote発音開始からパラメータ補正まで(ビブラートかけるまで、とか)の時間とか?
(<ややあてずっぽう)。
elvelem数値
名前からするとnote発音開始後にから音色補正する際の「度合い」と思われる(ビブラート幅とか)
文脈によって意味が違いそう。
seTrackvsq3wavPart*効果音WAVトラック関係っぽい。
画面上では「Track(Mono)」に相当して主にブレスで使われる。
wavPartseTrackposTick/playTime/partName/comment/
sampleRate/sampleReso/channels/filePath
効果音WAVトラックにある「パート」。
Editor3.0.4.0でWAVコピーした場合「./filename.wavparts/」を作って
そこに*.wavをコピーしてそこにリンクする仕様みたい。
posTickwavPart数値未調査。多分このパートの再生開始タイミングを表すTick数。
playTimewavPart数値未調査。多分wavの再生時間に相当するTick数。
partNamewavPartCDATAデフォルト'NewPart'
Track Editor上の表記。
commentwavPartCDATAデフォルト'New WAV Part'
コメント
sampleRatewavPart数値サンプリング周波数。
'44100'Hz等。3.0.4.0のマニュアルによれば対応しているWAVファイルの
サンプリングレートの種類は44.1、48、96KHzの3種類
sampleResowavPart数値量子化ビット数。
'16'bit等。3.0.4.0のマニュアルによれば対応しているWAVファイルの
量子化ビット数は16ビットのみ
channelswavPart数値1=Mono
seTrackの文脈では1固定なのか、元データのことかは不明。
filePathwavPartCDATAWAVデータのパス。
相対パスで書いてある場合は./filename.wavparts/をカレントとして見るみたい。
CDATAにデータ丸ごと埋め込んだりするワザがあるかは不明だけど
少なくともVocaloid EditorのUIからは不可能でサポート外な気がする。
やるとしたらxmlとかディレクトリごとアーカイブしちゃうとかの方が楽?
karaokeTrackvsq3未調査。どう見ても伴奏WAVトラック関係。
auxvsq3auxID/content未調査。多分VST(e)プラグインの設定値とか。
auxIDauxCDATAデフォルト'AUX_VST_HOST_CHUNK_INFO'
contentauxCDATAデフォルト'VlNDSwAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA='
VSTプラグインを使うとこの値が変化する。
設定値はミキサの方にもあるので「プロジェクトファイル的な情報」かも。
ミキサのVSTe以外で使ってるかは不明。
ドキュメントないと解析は文字通りhack作業になるので大変。

トップ 一覧 単語検索 最終更新 ヘルプ最終更新のRSS