VQF: Difference between revisions
Jump to navigation
Jump to search
(general information) |
m (layout) |
||
Line 3: | Line 3: | ||
VQF files are used to store a stream of [[TwinVQ]] encoded audio data. | VQF files are used to store a stream of [[TwinVQ]] encoded audio data. | ||
__TOC__ | |||
==General Information== | ==General Information== | ||
Line 15: | Line 17: | ||
==Standard Chunks== | ==Standard Chunks== | ||
{| border="1" cellpadding="8" style="font-family: fixed;" | {| border="1" cellpadding="8" style="font-family: fixed; font-size: 10pt;" | ||
|- | |- | ||
! Chunk ID | ! Chunk ID | ||
Line 46: | Line 48: | ||
{| border="1" cellpadding="8" style="font-family: fixed;" | {| border="1" cellpadding="8" style="font-family: fixed; font-size: 10pt;" | ||
|- | |- | ||
! Chunk ID | ! Chunk ID | ||
Line 104: | Line 106: | ||
|- | |- | ||
| EXTR || reserved || || | | EXTR || reserved || || | ||
|- | |- valign="top" | ||
| _ID3 || Reserved for ID3v2 tags || char id3v2_data[] || Not sure if such files exist; priority for tags conflicting with previous chunks is undefined | | _ID3 || Reserved for ID3v2 tags || char id3v2_data[] || Not sure if such files exist; <br/> priority for tags conflicting with <br/> previous chunks is undefined | ||
|- | |- | ||
| _YMH || Reserved chunk || || | | _YMH || Reserved chunk || || |
Revision as of 13:54, 7 November 2007
- Extensions: .vqf
- Company: Nippon TT
VQF files are used to store a stream of TwinVQ encoded audio data.
General Information
All fields are stored in big-endian order.
A file consists of a magic marker (TWIN) and several chunks. Chunks are stored as chunk_size (uint32) and chunk_id (char[4]). The chunk size includes the ID and the size field itself. After various standard and extension chunks, there's a DATA chunk that contains the compressed audio data.
Standard Chunks
Chunk ID | Contents | Field | Description |
---|---|---|---|
COMM | Mandatory information | int32 channel_mode | 0: mono, 1: stereo |
int32 bitrate | kbit/s | ||
int32 samplerate | 44: 44100 Hz, 22: 22050 Hz, 11: 11025 Hz | ||
int32 security_level | always 0 | ||
NAME | Song title | char name[] | |
COMT | Comment | char comment[] | |
AUTH | Author | char author[] | |
(c)<space> | Copyright | char copyright[] | |
FILE | Filename | char filename[] | |
DSIZ | Data size | uint32 data_size | size of compressed audio data |
Extension Chunks
Chunk ID | Contents | Field | Description |
---|---|---|---|
ALBM | Album title | char album_title[] | |
YEAR | Recording date | int16 year | 0 means unspecified |
char month | idem | ||
ENCD | Compression date | int16 year | 0 means unspecified |
char month | idem | ||
char day | idem | ||
char hour | idem | ||
char minute | idem | ||
char timeZone | idem | ||
TRAC | Track number | int16 track_number | |
LYRC | Lyrics | char lyrics[] | |
GUID | Globally Unique Identifier | uchar guid[16] | |
ISRC | International Standard Record Code | char isrc[] | Identifier of CD |
WORD | Words | char words[] | |
MUSC | Composer | char composer[] | |
ARNG | Arranger | char arranger[] | |
PROD | Producer | char producer[] | |
REMX | Remixer | char remixer[] | |
CDCT | Conductor | char conductor[] | |
SING | Singer | char singer[] | |
BAND | Band name | char band_name[] | |
PRSN | Personnel | char personnel[] | |
LABL | Record label | char record_label[] | |
NOTE | Liner notes | char liner_notes[] | |
SCND | Auxiliary information | char aux_info[] | |
EXTR | reserved | ||
_ID3 | Reserved for ID3v2 tags | char id3v2_data[] | Not sure if such files exist; priority for tags conflicting with previous chunks is undefined |
_YMH | Reserved chunk | ||
_NTT | Reserved chunk |