Struktur ACMSTREAMHEADER (msacm.h)
Struktur ACMSTREAMHEADER menentukan header yang digunakan untuk mengidentifikasi sumber konversi ACM dan pasangan buffer tujuan untuk aliran konversi.
Sintaks
typedef struct tACMSTREAMHEADER {
DWORD cbStruct;
DWORD fdwStatus;
DWORD_PTR dwUser;
LPBYTE pbSrc;
DWORD cbSrcLength;
DWORD cbSrcLengthUsed;
DWORD_PTR dwSrcUser;
LPBYTE pbDst;
DWORD cbDstLength;
DWORD cbDstLengthUsed;
DWORD_PTR dwDstUser;
DWORD dwReservedDriver[_DRVRESERVED];
} ACMSTREAMHEADER, *PACMSTREAMHEADER, *LPACMSTREAMHEADER;
Anggota
cbStruct
Ukuran, dalam byte, dari struktur ACMSTREAMHEADER . Anggota ini harus diinisialisasi sebelum aplikasi memanggil fungsi aliran ACM apa pun menggunakan struktur ini. Ukuran yang ditentukan dalam anggota ini harus cukup besar untuk memuat struktur ACMSTREAMHEADER dasar.
fdwStatus
Bendera yang memberikan informasi tentang buffer konversi. Anggota ini harus diinisialisasi ke nol sebelum aplikasi memanggil fungsi acmStreamPrepareHeader dan tidak boleh dimodifikasi oleh aplikasi sementara header stream tetap disiapkan.
Nama | Deskripsi |
---|---|
|
Diatur oleh ACM atau driver untuk menunjukkan bahwa itu selesai dengan konversi dan mengembalikan buffer ke aplikasi. |
|
Atur oleh ACM atau driver untuk menunjukkan bahwa buffer diantrekan untuk konversi. |
|
Atur oleh ACM untuk menunjukkan bahwa buffer telah disiapkan dengan menggunakan fungsi acmStreamPrepareHeader . |
dwUser
Data pengguna. Ini bisa menjadi data instans apa pun yang ditentukan oleh aplikasi.
pbSrc
Arahkan ke buffer sumber. Pointer ini harus selalu merujuk ke lokasi yang sama sementara header stream tetap disiapkan. Jika aplikasi perlu mengubah lokasi sumber, aplikasi harus membatalkan pra-penyebaran header dan mereprepa ulang dengan lokasi alternatif.
cbSrcLength
Panjang, dalam byte, dari buffer sumber yang diacu oleh pbSrc. Ketika header disiapkan, anggota ini harus menentukan ukuran maksimum yang akan digunakan dalam buffer sumber. Konversi dapat dilakukan pada panjang sumber kurang dari atau sama dengan ukuran asli yang disiapkan. Namun, anggota ini harus direset ke ukuran asli ketika aplikasi tidak menyiapkan header.
cbSrcLengthUsed
Jumlah data, dalam byte, digunakan untuk konversi. Anggota ini tidak valid sampai konversi selesai. Nilai ini bisa kurang dari atau sama dengan cbSrcLength. Aplikasi harus menggunakan anggota cbSrcLengthUsed saat maju ke bagian data sumber berikutnya untuk aliran konversi.
dwSrcUser
Data pengguna. Ini bisa menjadi data instans apa pun yang ditentukan oleh aplikasi.
pbDst
Arahkan ke buffer tujuan. Pointer ini harus selalu merujuk ke lokasi yang sama sementara header stream tetap disiapkan. Jika aplikasi perlu mengubah lokasi tujuan, aplikasi harus membatalkan pra-penyebaran header dan mereprepare dengan lokasi alternatif.
cbDstLength
Panjang, dalam byte, dari buffer tujuan yang diacu oleh pbDst. Ketika header disiapkan, anggota ini harus menentukan ukuran maksimum yang akan digunakan dalam buffer tujuan.
cbDstLengthUsed
Jumlah data, dalam byte, dikembalikan oleh konversi. Anggota ini tidak valid sampai konversi selesai. Nilai ini bisa kurang dari atau sama dengan cbDstLength. Aplikasi harus menggunakan anggota cbDstLengthUsed saat maju ke lokasi tujuan berikutnya untuk aliran konversi.
dwDstUser
Data pengguna. Ini bisa menjadi data instans apa pun yang ditentukan oleh aplikasi.
dwReservedDriver[_DRVRESERVED]
Dipesan; jangan gunakan. Anggota ini tidak memerlukan inisialisasi oleh aplikasi dan tidak boleh dimodifikasi sementara header tetap disiapkan.
Keterangan
Sebelum struktur ACMSTREAMHEADER dapat digunakan untuk konversi, struktur tersebut harus disiapkan dengan menggunakan fungsi acmStreamPrepareHeader . Ketika aplikasi selesai dengan struktur ACMSTREAMHEADER , aplikasi harus memanggil fungsi acmStreamUnprepareHeader sebelum membebaskan buffer sumber dan tujuan.
Persyaratan
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Header | msacm.h |
Lihat juga
Pengelola Kompresi Audio