Enumerasi TVAudioMode (strmif.h)
[Fitur yang terkait dengan halaman ini, DirectShow, adalah fitur warisan. Ini telah digantikan oleh MediaPlayer, IMFMediaEngine, dan Tangkapan Audio/Video di Media Foundation. Fitur-fitur tersebut telah dioptimalkan untuk Windows 10 dan Windows 11. Microsoft sangat menyarankan agar kode baru menggunakan MediaPlayer, IMFMediaEngine dan Audio/Video Capture di Media Foundation alih-alih DirectShow, jika memungkinkan. Microsoft menyarankan agar kode yang ada yang menggunakan API warisan ditulis ulang untuk menggunakan API baru jika memungkinkan.]
Menentukan mode kontrol audio TV.
Sintaks
typedef enum tagTVAudioMode {
AMTVAUDIO_MODE_MONO = 0x1,
AMTVAUDIO_MODE_STEREO = 0x2,
AMTVAUDIO_MODE_LANG_A = 0x10,
AMTVAUDIO_MODE_LANG_B = 0x20,
AMTVAUDIO_MODE_LANG_C = 0x40,
AMTVAUDIO_PRESET_STEREO = 0x200,
AMTVAUDIO_PRESET_LANG_A = 0x1000,
AMTVAUDIO_PRESET_LANG_B = 0x2000,
AMTVAUDIO_PRESET_LANG_C = 0x4000
} TVAudioMode;
Konstanta
AMTVAUDIO_MODE_MONO Nilai: 0x1 Mono. |
AMTVAUDIO_MODE_STEREO Nilai: 0x2 Stereo. |
AMTVAUDIO_MODE_LANG_A Nilai: 0x10 Bahasa A: Saluran audio utama. |
AMTVAUDIO_MODE_LANG_B Nilai: 0x20 Languag B: Program audio sekunder (SAP). |
AMTVAUDIO_MODE_LANG_C Nilai: 0x40 Bahasa C: Baik bahasa ketiga, atau program audio utama ditambah SAP (misalnya, Bahasa Inggris dari satu pembicara dan bahasa Jepang dari pembicara lainnya). |
AMTVAUDIO_PRESET_STEREO Nilai: 0x200 Prasetel stereo. |
AMTVAUDIO_PRESET_LANG_A Nilai: 0x1000 Languag A preset. |
AMTVAUDIO_PRESET_LANG_B Nilai: 0x2000 Preset Bahasa B. |
AMTVAUDIO_PRESET_LANG_C Nilai: 0x4000 Preset Bahasa C. |
Keterangan
Bendera TVAudioMode tergabung dalam dua kelompok.
- Bit 0 - 7: Bendera mode. Bendera ini termasuk mono/stereo dan bahasa (A, B, atau C).
- Bit 8 dan yang lebih tinggi: Bendera prasetel.
Keterangan berikut menjelaskan bagaimana metode IAMTVAudio menginterpretasikan bendera ini.
- Jika Anda mengatur bendera mode, tuner akan segera beralih ke mode tersebut. Jika mode tidak segera tersedia, metode gagal.
- Jika Anda mengatur bendera prasetel, driver akan segera beralih ke mode tersebut jika memungkinkan; jika tidak, driver menyimpan permintaan. Jika mode yang diminta tersedia nanti, driver akan beralih ke mode tersebut. Driver mempertahankan bendera prasetel di seluruh perubahan program atau perubahan saluran. Mode prasetel gagal hanya jika tuner tidak dapat mendukung mode tersebut. Ini tidak pernah gagal karena isi sinyal audio.
Anda dapat menggabungkan lebih dari satu bendera prasetel. Driver mencobanya dalam urutan berikut:
- Bahasa C
- Bahasa B
- Bahasa A
- Stereo
Jika metode gagal karena alasan apa pun, status penyetel — yaitu, mode saat ini ditambah preset yang disimpan — tidak berubah.
Kecuali untuk bahasa C, tuner selalu mengalirkan bahasa yang sama melalui kedua saluran audio.
Contoh: Penelepon mengatur AMTVAUDIO_PRESET_LANG_B AMTVAUDIO_PRESET_STEREO | . Misalkan program saat ini tersedia dalam bahasa A dengan stereo atau bahasa B dengan mono. Driver memilih bahasa B (mono), karena bendera tersebut lebih diutamakan. Kemudian, program beralih ke komersial yang hanya tersedia dalam bahasa A. Driver beralih ke bahasa A, karena bahasa B tidak tersedia. Ketika program dilanjutkan, driver beralih kembali ke bahasa B.
IAMTVAudio::GetAvailableTVAudioModes: Metode ini mengembalikan mode yang saat ini tersedia dalam sinyal. Metode ini tidak pernah mengembalikan bendera prasetel.
IAMTVAudio::GetHardwareSupportedTVAudioModes: Metode ini mengembalikan semua mode yang didukung oleh perangkat keras, termasuk mode prasetel.
IAMTVAudio::get_TVAudioMode: Metode ini mengembalikan mode saat ini. Metode ini tidak pernah mengembalikan bendera prasetel.
Konstanta Masker
Konstanta berikut didefinisikan dalam Strmif.h:#define TVAUDIO_MODE_MASK 0x000000ff
#define TVAUDIO_PRESET_MASK 0x0000ff00
Anda dapat menggunakan TVAUDIO_MODE_MASK untuk memilih bendera mode dan TVAUDIO_PRESET_MASK untuk memilih bendera prasetel:
C++ |
---|
DWORD ModeFlags(DWORD AudioMode) { return AudioMode & TVAUDIO_MODE_MASK; } |
Persyaratan
Persyaratan | Nilai |
---|---|
Header | strmif.h (termasuk Dshow.h) |