Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Gambaran umum ini menjelaskan Format File Pertukaran Sumber Daya (RIFF), yang digunakan dalam file .wav. RIFF adalah format khas tempat data audio untuk XAudio2 akan dimuat.
RIFF
File RIFF terdiri dari beberapa bagian data diskrit yang disebut potongan .
Pengidentifikasi FOURCC
Jenis data dalam gugus ditunjukkan oleh pengidentifikasi kode empat karakter (FOURCC). FOURCC adalah bilangan bulat tanpa tanda 32-bit yang dibuat dengan menggabungkan empat karakter ASCII yang digunakan untuk mengidentifikasi jenis gugus dalam file RIFF. Misalnya, "abcd" FOURCC diwakili pada sistem little-endian sebagai 0x64636261. FOURCC dapat berisi karakter spasi, jadi " abc" adalah FOURCC yang valid. File audio menggunakan kode FOURCC untuk mengidentifikasi potongan format audio, potongan data audio, dan gugus lainnya yang khusus untuk format audio.
Tabel berikut ini memperlihatkan pengidentifikasi FOURCC yang dapat diharapkan dalam format audio yang didukung oleh XAudio2.
Format | Pengidentifikasi FOURCC | Informasi tambahan |
---|---|---|
PCM | "RIFF", "fmt" , "data" | |
ADPCM | "RIFF", "fmt", "data", "smpl", "wsmpl" | Lihat Gambaran Umum ADPCM untuk deskripsi pengidentifikasi FOURCC khusus ADPCM. |
Pengidentifikasi FOURCC "RIFF", "fmt", dan "data" umum untuk semua format yang didukung. Tabel berikut ini menjelaskan pengidentifikasi FOURCC yang ditemukan dalam semua format yang didukung.
Pengidentifikasi FOURCC | Deskripsi |
---|---|
"RIFF" | Potongan RIFF standar yang berisi jenis file dengan nilai "WAVE" atau "XWMA" di empat byte pertama dari bagian datanya dan gugus lain dalam file di sisa bagian datanya. |
"fmt" | Berisi header format untuk file audio. Data dalam gugus ini sesuai dengan salah satu struktur berikut: WAVEFORMATEX, WAVEFORMATEXTENSIBLE ADPCMWAVEFORMAT. |
"data" | Berisi data audio untuk file audio. Di XAudio2, konten potongan data akan dibaca menjadi buffer dan diteruskan ke suara sumber sebagai pAudioData anggota struktur XAUDIO2_BUFFER. |
Potongan
File RIFF terdiri dari gugus RIFF yang berisi nol atau lebih gugus lainnya.
Potongan RIFF memiliki bentuk berikut:
"RIFF", fileSize, fileType, data
Di mana "RIFF" adalah kode FOURCC harfiah "RIFF", fileSize adalah nilai 4-byte yang memberikan ukuran data dalam file, dan fileType adalah FOURCC yang mengidentifikasi jenis file tertentu. Nilai fileSize mencakup ukuran fileType FOURCC ditambah ukuran data berikut, tetapi tidak termasuk ukuran FOURCC "RIFF" atau ukuran file Ukuran. Data terdiri dari potongan dalam urutan apa pun.
Potongan lain memiliki formulir berikut:
chunkID, chunkSize, data
Di mana chunkID adalah FOURCC yang mengidentifikasi data yang terkandung dalam gugus, chunkSize adalah nilai 4 byte yang memberikan ukuran bagian data dari potongan, dan data adalah nol atau lebih byte data. Data selalu diisi ke batas WORD terdekat. chunkSize memberikan ukuran data yang valid dalam gugus. Ini tidak termasuk padding, ukuran chunkID, atau ukuran chunkSize.
Topik terkait