Bagikan melalui


Pemilihan Titik Akhir Audio Default Dimulai di Windows 10

Subsistem audio Windows 10 menggunakan algoritma dengan heuristik yang ditingkatkan untuk pemilihan titik akhir audio default. Topik ini menjelaskan heuristik ini dan bagaimana subsistem audio Windows 10 menggunakannya untuk memilih titik akhir audio default. Agar Anda paling memahami mekanisme pemilihan Windows 10 baru, topik ini juga menjelaskan bagaimana pemilihan titik akhir audio default terjadi di Windows 7. Audiens target topik ini adalah OEM dan IHV.

Informasi ini berlaku untuk sistem operasi Windows 10.

Referensi dan sumber daya yang dibahas di sini tercantum di akhir topik ini.

Pengantar

Sebagian besar perangkat audio PC berisi beberapa fitur audio yang independen secara logis. Di Windows 7 dan Windows 10 setiap fitur diekspos sebagai titik akhir audio terpisah. Titik akhir tercantum dalam aplikasi Panel Kontrol Suara, seperti yang diperlihatkan dalam kotak dialog contoh berikut dari Windows 7.

Cuplikan layar kotak dialog aplikasi Panel Kontrol Suara di Windows 7.

Dan di halaman pengaturan suara baru yang tersedia di Windows 10.

Cuplikan layar halaman pengaturan suara di Windows 10.

Hanya satu titik akhir audio pada satu waktu yang dapat diatur sebagai default untuk konsol atau peran komunikasi tertentu. Namun, mulai dari Windows 10 ada opsi untuk menargetkan titik akhir yang berbeda untuk peran ini ke aplikasi yang berbeda menggunakan volume Aplikasi dan halaman preferensi perangkat.

Cuplikan layar halaman Volume aplikasi dan preferensi perangkat di Windows 10.

Subsistem audio Windows 7 dan Windows 10 menggunakan algoritma serupa untuk menentukan titik akhir audio default ketika tidak ada preferensi pengguna yang ditentukan. Namun, algoritma Windows 10 berbeda dari Windows 7 dengan cara menangani pemilihan pengguna default dan menangani preferensi per aplikasi.

Topik ini menjelaskan bagaimana titik akhir audio default dipilih di Windows 10. Untuk pemahaman yang lebih baik tentang apa yang baru untuk Windows 10, pemilihan titik akhir audio default di Windows 7 juga dijelaskan.

Algoritma Dasar untuk Pilihan Titik Akhir Audio Default

Subsistem audio Windows 7 dan Windows 10 menggunakan algoritma serupa untuk menentukan titik akhir audio default. Algoritma beroperasi sebagai berikut:

  • Ulangi semua titik akhir ACTIVE untuk menemukan titik akhir yang ditetapkan sebagai default pilihan oleh pengguna untuk aplikasi ini (baru untuk Windows 10)
    • Jika titik akhir diidentifikasi, titik akhir dikembalikan, dan proses selesai.
  • Jika tidak ada titik akhir yang diidentifikasi, ulangi semua titik akhir ACTIVE untuk menemukan titik akhir yang ditetapkan sebagai default pilihan oleh pengguna untuk sistem (pilihan dimodifikasi untuk Windows 10).
    • Jika titik akhir diidentifikasi, titik akhir dikembalikan, dan proses selesai.
  • Jika tidak ada titik akhir yang diidentifikasi, ulangi semua titik akhir ACTIVE untuk menemukan titik akhir dengan properti "peringkat" tertinggi untuk peran yang diminta, dan tidak memiliki yang tidak pernah ditetapkan sebagai kumpulan properti PKEY_AudioDevice_NeverSetAsDefaultEndpoint default. (nilai pembobotan peringkat dimodifikasi untuk Windows 10).
    • Jika titik akhir diidentifikasi, titik akhir dikembalikan, dan proses selesai.
  • Jika tidak ada titik akhir yang diidentifikasi, permintaan gagal menunjukkan E_NOTFOUND.

Ada empat status titik akhir: ACTIVE, UNPLUGGED, DISABLED, dan NOT PRESENT, yang ditentukan dalam DEVICE_STATE_XXX Constants. Subsistem audio hanya mempertimbangkan titik akhir ACTIVE (dalam status saat ini dan diaktifkan) saat menentukan titik akhir audio default. Setiap peristiwa yang menyebabkan status titik akhir berubah dari atau ke status ACTIVE berpotensi memengaruhi titik akhir audio default saat ini. Peristiwa tersebut termasuk menyisipkan perangkat audio, mencolokkan perangkat, dan menginstal perangkat audio baru. Sebagai respons terhadap operasi tersebut, subsistem audio Windows menjalankan algoritma heuristik titik akhir audio default untuk menentukan titik akhir audio default baru.

Properti tanda waktu titik akhir di Windows 7

Properti tanda waktu titik akhir adalah kunci properti yang berisi waktu sistem. Di Windows 7, properti tanda waktu titik akhir dibuat atau diperbarui saat diatur sebagai titik akhir audio default melalui aplikasi Panel Kontrol Sound.

Cuplikan layar pemilihan titik akhir audio default di aplikasi Panel Kontrol Suara.

Properti tanda waktu dikaitkan dengan setiap peran, dan properti tanda waktu digunakan oleh algoritma pilihan default untuk mengidentifikasi titik akhir mana yang telah ditetapkan sebagai default pilihan oleh pengguna untuk peran tersebut. Algoritma akan mengidentifikasi titik akhir dengan properti tanda waktu terbaru sebagai titik akhir default.

Properti Level di Windows 10

Properti tanda waktu yang digunakan di Windows 7 untuk preferensi default pengguna tidak memungkinkan pemilihan otomatis perangkat yang baru dilampirkan setelah pemilihan default awal. Misalnya, jika pengguna mengatur speaker internal sebagai titik akhir default kapan saja di masa lalu dan kemudian memasang headphone USB baru, sistem tidak akan pernah pindah ke headphone USB tanpa pilihan manual.

Mulai Windows 10, pilihan default pengguna dibangun sebagai struktur seperti pohon dari preferensi sebelumnya yang mempertimbangkan titik akhir apa yang tersedia pada saat pemilihan default yang dilakukan oleh pengguna. Alasannya adalah ketika pengguna memilih titik akhir default, mereka mengkomunikasikan preferensi mereka untuk titik akhir tersebut relatif terhadap titik akhir lain yang aktif pada saat pemilihan. Pengguna tidak berkomunikasi preferensi absolut untuk perangkat yang dipilih selamanya dan dalam semua situasi.

Penggunaan dan pembuatan Properti Tanda Waktu telah dihapus dari Windows 10, digantikan oleh properti Tingkat. Properti tingkat digunakan untuk membangun struktur preferensi pengguna seperti pohon. Seperti properti tanda waktu, ada properti tingkat yang terkait dengan setiap peran. Properti tingkat dibuat atau diperbarui setiap kali pengguna memilih titik akhir default melalui panel kontrol suara, halaman pengaturan suara, atau kontrol audio di baki sistem.

Algoritma penetapan default berfungsi sebagai berikut:

Saat titik akhir dipilih sebagai default, titik akhir tersebut dipindahkan ke bagian atas struktur seperti pohon dengan menetapkannya tingkat tertinggi yang tersedia. Tingkat berikutnya di bawah pohon akan berisi satu atau beberapa titik akhir yang telah dipilih di masa lalu sebagai default, atau aktif pada saat pilihan ini tetapi belum pernah dipilih oleh pengguna. Setiap pilihan berikutnya membawa titik akhir yang diinginkan ke bagian atas daftar, memindahkan pilihan sebelumnya ke bawah dan mengelompokkan aktif, tetapi belum dipilih, titik akhir bersama-sama untuk membuat kondisi ikatan. Jika semua titik akhir dalam sistem ditetapkan sebagai default, struktur yang dihasilkan menjadi daftar berurutan sederhana dengan satu titik akhir di setiap tingkat.

Algoritma penentuan default berfungsi sebagai berikut:

Pertama, titik akhir aktif tanpa nilai tingkat dibandingkan, dengan titik akhir dengan peringkat tertinggi dipilih menjadi default. Dengan cara ini titik akhir yang baru-baru ini ditambahkan diberi kesempatan pertama untuk menjadi default karena merupakan yang terbaru dalam sistem dan terhubung setelah pengguna memilih default sebelumnya.

Selanjutnya, jika semua titik akhir aktif berisi tingkat, maka titik akhir dengan tingkat tertinggi, tanpa dasi, dipilih sebagai default. Memiliki tingkat tertinggi menunjukkan bahwa pada titik tertentu di masa lalu pengguna telah menetapkan titik akhir ini sebagai default sementara titik akhir lainnya, dengan nilai tingkat yang lebih rendah, aktif.

Terakhir, jika semua titik akhir berisi nilai tingkat, dan titik akhir dengan nilai tingkat tertinggi semuanya terikat, peringkat titik akhir kemudian digunakan untuk memutus dasi. Ini menunjukkan bahwa titik akhir ini aktif pada saat pilihan default, tetapi tidak dipilih sendiri. Kami tidak memiliki indikasi preferensi pengguna antara titik akhir ini, sehingga sistem peringkat otomatis digunakan.

Perlu dicatat bahwa dengan algoritma baru ini, titik akhir "baru" diberikan peningkatan bobot untuk menjadi default. Ini berarti bahwa perilaku driver yang menyebabkan titik akhir audio tampak baru pada sistem berpotensi memicu perubahan default.

Contoh perilaku dan peristiwa driver yang mengakibatkan hilangnya pengaturan pengguna pada titik akhir audio dan akan membuat titik akhir audio muncul "baru" ke sistem, berpotensi memicu perubahan pada perangkat default, adalah:

  • Menginstal driver yang berbeda. Misalnya, beralih antara driver kelas HDAudio dan driver pihak ke-3 yang cocok untuk perangkat keras. Ini diharapkan dan secara desain, karena pengaturan pengguna dan titik akhir yang tersedia tidak diasumsikan sama antara dua atau lebih penginstalan driver yang tidak terkait.
  • Menghapus instalan dan menginstal ulang driver. Menghapus pengandar audio menyebabkan AudioEndpointBuilder menghapus pengaturan pengguna yang terkait dengan driver. Menginstal driver baru akan menyebabkan AudioEndpointBuilder membuat titik akhir audio baru. Ini adalah perilaku yang diharapkan dan berdasarkan desain, namun perilaku ini harus dihindari oleh alat penginstal otomatis ketika mengalihkan hilangnya pengaturan pengguna yang tidak terduga.
  • Setiap perubahan pada string referensi filter titik akhir audio atau ID pin. Titik akhir audio diidentifikasi oleh string referensi yang diteruskan ke PnP saat antarmuka KS dibuat, bersama dengan ID pin untuk konektor eksternal. Mengubah nilai-nilai ini akan menyebabkan titik akhir audio baru dibuat. Titik akhir audio baru ini tidak akan berisi pengaturan pengguna yang terkait dengan string referensi sebelumnya dan ID pin konektor. String referensi dan ID pin konektor tidak boleh berubah selama masa pakai penginstalan driver, termasuk di seluruh pembaruan driver.
  • HDMI atau perangkat audio tampilan mengubah jenis terminal atau ID sink. Jenis terminal dan ID sink diharapkan berubah ketika pengguna melampirkan tampilan yang berbeda ke sistem, tampilan yang berbeda adalah titik akhir baru dengan pengaturan pengguna baru yang terkait dengannya. Namun, mengubah nilai-nilai ini ketika tidak ada perubahan yang sesuai pada tampilan terlampir akan dianggap sebagai hilangnya pengaturan pengguna. ID sink dan jenis terminal harus tetap konstan untuk tampilan terpasang.

Heuristik Titik Akhir Audio Default Windows 10

Heuristik titik akhir audio default Windows 10 untuk pemilihan titik akhir otomatis sama dengan heuristik Windows 7, dengan beberapa modifikasi kecil pada bobot faktor untuk memberikan pengalaman pengguna yang lebih baik.

Heuristik pemilihan default dimulai dengan mengumpulkan informasi tentang titik akhir audio; faktor-faktornya. Setiap faktor kemudian ditimbang dan nilai tertimbang yang dihasilkan untuk semua faktor dijumlahkan. Jumlah yang dihasilkan disebut peringkat titik akhir. Nilai peringkat dihitung untuk setiap peran untuk setiap titik akhir (konsol dan komunikasi).

Titik akhir dengan peringkat tertinggi kemudian dipilih sebagai default untuk peran yang diminta.

Faktor Heuristik Windows 10

Subsistem audio Windows 10 mempertimbangkan karakteristik titik akhir berikut, atau faktor, untuk memilih titik akhir audio default:

Windows 10 mendefinisikan sekumpulan nilai enum untuk setiap faktor titik akhir yang didukung dan menyimpannya di registri. Deskripsi terperinci tentang faktor-faktor ini dan kumpulan nilai enumeran yang sesuai mengikuti.

Kemampuan Deteksi Jack

Titik akhir dengan kemampuan ini menyiratkan bahwa driver audio dapat memberi tahu subsistem audio ketika perangkat periferal audio yang tersambung ke titik akhir dicolokkan atau dilepas. Titik akhir audio yang mendukung kemampuan deteksi jack disebut titik akhir dinamis, dan titik akhir yang tidak menyediakan dukungan ini disebut titik akhir statis. Untuk mendukung kemampuan deteksi jack, driver perangkat audio harus mendukung properti KSPROPERTY_JACK_DESCRIPTION2. Untuk informasi selengkapnya tentang properti ini, lihat KSPROPERTY_JACK_DESCRIPTION2.

Nilai enum kemampuan deteksi jack
Didukung
NotSupported

Heuristik perangkat audio default Windows 10 memperlakukan semua titik akhir audio USB dan titik akhir audio Bluetooth sebagai kemampuan deteksi jack.

Faktor Formulir

Faktor bentuk titik akhir audio menunjukkan atribut fisik titik akhir audio tempat pengguna berinteraksi, seperti headphone, speaker, atau S/PDIF. Untuk menentukan faktor bentuk titik akhir, subsistem audio menggunakan logika tetap bawaan untuk memetakan kategori pin Kernel Streaming (KS) (KSNodeType), yang diekspos oleh driver audio, ke faktor bentuk tertentu. Untuk informasi selengkapnya, lihat EndpointFormFactor.

Nilai enum faktor formulir titik akhir
RemoteNetworkDevice
Pembicara
LineLevel
Headphone
Mikrofon
Headset
Handset
UnknownDigitalPassthrough
SPDIF
DigitalAudioDisplayDevice
UnknownFormFactor

KSNodeType

Driver audio memilih KSNodeType untuk pin KS pada titik akhir karena driver memiliki pengetahuan terperinci tentang perangkat audio yang mungkin terhubung ke jack audio. Oleh karena itu, KsNodeType mengungkapkan pengetahuan yang lebih spesifik tentang titik akhir daripada faktor bentuknya.

Nilai enum KSNodeType
KSNODETYPE_SPEAKER
KSNODETYPE_MICROPHONE_ARRAY
KSNODETYPE_HEADPHONES

Untuk informasi selengkapnya tentang KsNodeType, lihat Menyematkan Properti Kategori.

Jenis Bus

Faktor ini mewakili jenis bus tempat perangkat audio yang mengekspos titik akhir audio dijumlahkan.

Nilai enum jenis bus
BTHENUM
BTHHFENUM
USB
HDAUDIO
PCI
Tidak dikenal

Subsistem audio mendukung titik akhir pada jenis bus tertentu daripada jenis bus lain ketika semua karakteristik titik akhir lainnya identik. Misalnya, sistem memberikan prioritas headphone Bluetooth melalui headphone HD Audio on-board untuk memberikan pengalaman komunikasi yang lebih baik bagi pengguna; yaitu, ketika pengguna akhir memperkenalkan perangkat headphone Bluetooth ke PC ini, sistem menjadikannya perangkat default.

Lokasi Umum

Lokasi umum menunjukkan lokasi kotor fisik jack atau perangkat tempat titik akhir audio terhubung.

Nilai enum lokasi umum
PrimaryBox (pada sasis sistem utama, dapat diakses oleh pengguna)
Internal (di motherboard, tidak dapat diakses tanpa membuka kotak)
Pisahkan (seperti kotak seluler)
Lainnya

Lokasi Geometris

Lokasi geometris menunjukkan lokasi geometrik jack atau perangkat tempat titik akhir audio terhubung.

Nilai enum lokasi geometris
eGeoLocRear
eGeoLocFront
eGeoLocLeft
eGeoLocRight
eGeoLocTop
eGeoLocBottom
eGeoLocRearOPanel
eGeoLocRiser

SubtipeSpecific

Properti khusus subjenis memungkinkan ekstensi masa depan dari nilai heuristik yang bergantung pada properti kategori pin titik akhir. Ini memungkinkan kemampuan Yang Didukung/Tidak Didukung.

Nilai enum kemampuan SubtypeSpecific
Didukung
NotSupported

Saat ini satu-satunya properti khusus subjenis terkait dengan geometri array mikrofon. Dalam konteks geometri array mikrofon, "Didukung" berarti geometri depan/belakang. "NotSupported" menunjukkan beberapa geometri lainnya. Jika ada lebih dari satu array mikrofon, preferensi untuk geometri depan/belakang dapat diambil.

Detail Heuristik Windows 10

Heuristik titik akhir audio default Windows 10 menimbang setiap faktor titik akhir. Semakin tinggi prioritas faktor adalah, semakin besar bobotnya. Topik ini menggunakan WeightFactor_Xxx untuk mengidentifikasi prioritas faktor.

Selain itu, heuristik Windows 10 menetapkan nilai peringkat (nRankXxx dalam topik ini) ke setiap nilai enum dalam kategori faktor. Nilai peringkat ini menetapkan kepentingan relatif di antara semua nilai enum di bawah faktor yang sama.

Nilai WeightFactor_Xxx dan nRankXxx ini disimpan oleh Windows di registri selama penginstalan sistem operasi. Set parameter untuk perhitungan peringkat heuristik tergantung pada karakteristik titik akhir. Tabel berikut ini memperlihatkan contoh kumpulan parameter.

Berat faktor titik akhir Nilai peringkat faktor titik akhir
WeightFactor_JackDet nRankJackDet
WeightFactor_SubType nRankSubType
WeightFactor_FormFactor nRankFormFactor
WeightFactor_BusType nRankBusType
WeightFactor_GenLoc nRankGenLoc
WeightFactor_GeoLoc nRankGeoLoc
WeightFactor_SubtypeSpecific nRankSubtypeSpecific

Subsistem audio menghitung peringkat tertimbang titik akhir di semua faktornya, sebagai berikut:

WeightedRankValue =

WeightFactor_JackDet * nRankJackDet +

WeightFactor_SubType * nRankSubType +

WeightFactor_FormFactor * nRankFormFactor +

WeightFactor_BusType * nRankBusType +

WeightFactor_GenLoc * nRankGenLoc +

WeightFactor_GeoLoc * nRankGeoLoc |

WeightFactor_SubtypeSpecific * nRankSubtypeSpecific.

Subsistem audio menghitung nilai peringkat tertimbang untuk semua titik akhir aktif dan memilih titik akhir yang memiliki peringkat tertinggi sebagai titik akhir audio default.

Mekanisme heuristik pemilihan titik akhir audio default Windows 10 juga mendukung fitur pengecualian. Fitur ini memungkinkan sistem atau OEM menyebabkan subsistem audio menunjuk titik akhir yang cocok dengan serangkaian karakteristik tertentu dengan nilai peringkat yang sangat tinggi atau sangat rendah. Penunjukan seperti itu membuat heuristik sistem lebih fleksibel ketika menangani skenario yang tidak terduga.

Heuristik untuk peran perangkat konsol dan peran perangkat komunikasi terpisah, tetapi mekanismenya justru sama, dengan urutan yang berbeda untuk faktor-faktor berdasarkan peran.

Pengaturan Heuristik Kotak Masuk Windows 10

Windows 10 dikirim dengan pengaturan yang didasarkan pada detail heuristik dalam topik ini. Titik akhir audio konsol default dan titik akhir audio komunikasi default memiliki pengaturan yang berbeda. Bagian ini menjelaskan pengaturan untuk kedua jenis titik akhir.

Pengaturan Heuristik Kotak Masuk untuk Titik Akhir Audio Konsol Default

Bagian ini menjelaskan pengaturan heuristik default untuk setiap faktor untuk titik akhir audio konsol. Faktor-faktor tersebut tercantum dalam urutan prioritas; artinya, Windows 10 memberikan prioritas tertinggi pada faktor pertama dalam daftar berikut ketika subsistem audio menentukan titik akhir konsol default.

Kemampuan Deteksi Jack

Titik akhir dengan kemampuan deteksi jack memberikan informasi terbaru kepada sistem tentang apakah perangkat periferal audio secara fisik terpasang ke sistem dan ketika dicolokkan atau dicabut. Informasi ini membantu menciptakan pengalaman pengguna akhir yang lebih baik, sehingga Windows 10 menetapkan faktor ini sebagai faktor prioritas tertinggi. Titik akhir dengan kemampuan deteksi jack memiliki prioritas yang lebih tinggi daripada titik akhir tanpa kemampuan ini, tidak peduli bagaimana faktor lain dibandingkan.

Faktor Formulir

Windows 10 menggunakan urutan prioritas faktor bentuk yang berbeda dari Windows 7, nilai telah disesuaikan berdasarkan umpan balik dan studi pengguna.

Windows 10 menetapkan prioritas faktor formulir untuk merender titik akhir konsol dalam urutan prioritas berikut:

  • Headphone dan Headset
  • Pembicara
  • LineLevel
  • DigitalAudioDisplayDevice
  • S/PDIF
  • Hal lain (diperlakukan dengan prioritas terendah yang sama; yaitu, with_nRankFormFactor_ sama dengan nol)

Windows 10 menetapkan prioritas faktor formulir untuk menangkap titik akhir konsol dalam urutan prioritas berikut:

  • Headset
  • Mikrofon
  • LineLevel
  • Hal lain (diperlakukan dengan prioritas terendah yang sama; yaitu, dengan nRankFormFactor sama dengan nol)

Misalnya, pertimbangkan sistem dengan tiga titik akhir render konsol audio:

  • Titik akhir headphone statis audio HD (headphone tanpa kemampuan deteksi jack).
  • Titik akhir S/PDIF Out statis.
  • Titik akhir speaker dinamis (speaker dengan dukungan deteksi jack).

Subsistem audio menggunakan heuristik sistem Windows 10 dan memilih titik akhir speaker dinamis sebagai titik akhir audio render konsol default, meskipun faktor bentuk speaker diprioritaskan di bawah faktor bentuk headphone. Titik akhir speaker dipilih karena mampu mendeteksi jack, yang memiliki prioritas lebih tinggi daripada faktor bentuk, sedangkan headphone tidak memiliki kemampuan ini.

Jika titik akhir headphone USB dinamis diperkenalkan ke dalam contoh di atas, subsistem audio Windows 7 memilih titik akhir ini sebagai titik akhir render konsol default. Pilihan ini karena faktor bentuk headphone memiliki prioritas yang lebih tinggi daripada faktor bentuk speaker ketika kedua perangkat mendukung deteksi jack.

KSNodeType

Seperti disebutkan sebelumnya, KSNodeType memberikan informasi yang lebih rinci daripada yang ditunjukkan oleh faktor formulir untuk perangkat audio yang terhubung ke titik akhir. Windows 10 mendefinisikan tiga KSNodeTypes terkait mikrofon untuk lebih memprioritaskan titik akhir dengan faktor bentuk mikrofon tetapi KSNodeType yang berbeda. Mereka diberi peringkat dalam urutan prioritas sebagai berikut:

  • KSNODETYPE_PROCESSING_MICROPHONE_ARRAY
  • KSNODETYPE_MICROPHONE_ARRAY
  • KSNODETYPE_OMNI_DIRECTIONAL_MICROPHONE
  • Hal lain (diperlakukan dengan prioritas terendah yang sama; yaitu, dengan nRankSubType sama dengan nol)

Misalnya, pertimbangkan sistem dengan dua titik akhir pengambilan audio:

  • Titik akhir array mikrofon statis bawaan dengan KSNODETYPE_MICROPHONE_ARRAY.
  • Titik akhir mikrofon statis dengan KSNODETYPE_MICROPHONE.

Saat subsistem audio menggunakan heuristik sistem untuk memilih titik akhir audio pengambilan konsol default, subsistem audio memilih titik akhir array mikrofon. Array mikrofon dipilih karena, meskipun kedua titik akhir memiliki kemampuan deteksi jack dan faktor bentuk yang sama, KsNodeType array mikrofon diprioritaskan lebih tinggi dari mikrofon. Artinya, KSNODETYPE_MICROPHONE_ARRAY diprioritaskan lebih tinggi dari KSNODETYPE_MICROPHONE, yang tidak tercantum dan termasuk dalam kategori "apa pun".

Untuk informasi selengkapnya tentang KsNodeType, lihat Menyematkan Properti Kategori.

Jenis Bus

Windows 10 memberi peringkat nilai enum untuk jenis bus titik akhir dalam urutan prioritas berikut, dari prioritas tertinggi hingga terendah:

  • USB
  • HDAudio dan UnknownBusType (biasanya sistem SOC)
  • PCI
  • BTHENUM
  • BTHHFENUM
  • Lainnya (diperlakukan dengan prioritas terendah yang sama; yaitu, dengan nRankBusType sama dengan nol)

Lokasi Umum

Windows 10 memberi peringkat nilai enum untuk lokasi umum dalam urutan prioritas berikut, dari prioritas tertinggi hingga terendah:

  • PrimaryBox dan Internal
  • Lainnya (diperlakukan dengan prioritas terendah yang sama; yaitu, nRankGenLoc sama dengan nol)

Driver audio melaporkan informasi lokasi umum titik akhir mereka melalui properti KSPROPERTY_JACK_DESCRIPTION . Untuk detailnya, lihat Properti Deskripsi Jack.

Lokasi Geometris

Windows 10 memberi peringkat nilai enum untuk lokasi geometrik dalam urutan prioritas berikut, dari prioritas tertinggi hingga terendah:

  • Front dan InsideMobileLid
  • Bawah, Kiri, LuarMobileLid, Belakang, Kanan, dan Atas
  • RearPanel
  • Lainnya (diperlakukan dengan prioritas terendah yang sama; yaitu, dengan nRankGeoLoc sama dengan nol)

Driver audio melaporkan informasi lokasi geometrik titik akhir mereka melalui properti KSPROPERTY_JACK_DESCRIPTION . Untuk detailnya, lihat Properti Deskripsi Jack.

Pengecualian

Selain faktor heuristik sebelumnya, Windows 10 memiliki 3 pengecualian untuk heuristik perangkat konsol default. Windows 7 hanya memiliki 1 pengecualian.

Pengecualian pertama, hadir di Windows 7 dan 10, mencegah titik akhir yang berorientasi komunikasi yang jelas—seperti Handset dan Speakerphone—agar tidak dipilih sebagai titik akhir konsol default. Secara khusus, subsistem audio menurunkan hasil WeightedRankValue untuk titik akhir yang memiliki salah satu nilai KSNodeType berikut:

  • KSNODETYPE_SPEAKER_AND_HEADSET
  • KSNODETYPE_SPEAKERS_STATIC_JACK
  • KSNODETYPE_HANDSET
  • KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION
  • KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE
  • KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE
  • KSNODETYPE_PHONE_LINE
  • KSNODETYPE_TELEPHONE
  • KSNODETYPE_DOWN_LINE_PHONE
  • Titik akhir spesifik audio seluler yang ada dalam skenario seluler

Pengecualian kedua, hanya ada di Windows 10, juga mencegah titik akhir berorientasi komunikasi yang jelas dipilih sebagai titik akhir konsol default. Tidak seperti pengecualian pertama, pengecualian ini juga mempertimbangkan jenis bus. Alasannya adalah bahwa banyak headphone USB populer menggunakan KSNodeTypes berikut, meskipun perangkat tidak spesifik komunikasi. Algoritma peringkat Windows 7 menurunkan KSNodeTypes ini untuk titik akhir konsol default untuk semua jenis bus. Untuk Windows 10 KSNodeTypes ini hanya diturunkan untuk jenis bus non-usb.

  • KSNODETYPE_PERSONAL_MICROPHONE
  • KSNODETYPE_COMMUNICATION_SPEAKER
  • KSNODETYPE_HEADSET

Untuk pengecualian ketiga, preferensi secara eksplisit diperkenalkan untuk titik akhir "pribadi" —seperti Headphone dan Headset— yang secara fisik melekat pada sistem dengan kabel. Beberapa contohnya adalah headset USB kabel dan headphone 3,5mm berkabel. Tidak seperti 2 pengecualian sebelumnya, pengecualian ini meningkatkan titik akhir ini agar lebih disukai untuk titik akhir konsol default. Pengecualian ini baru untuk Windows 10 dan untuk meningkatkan privasi pengguna, lebih memilih titik akhir yang hanya dapat didengar pengguna melalui titik akhir pembicara keras yang dapat didengar orang lain.

Pengaturan Heuristik Kotak Masuk untuk Titik Akhir Audio Komunikasi Default

Bagian ini menjelaskan pengaturan heuristik default dari setiap faktor untuk titik akhir audio komunikasi. Faktor-faktor tersebut tercantum dalam urutan prioritas; artinya, Windows 10 memberikan prioritas tertinggi ke faktor pertama dalam daftar berikut saat menghitung titik akhir komunikasi default. Satu-satunya perbedaan antara heuristik titik akhir default konsol dan titik akhir default komunikasi adalah dalam pengaturan faktor formulir dan aturan pengecualian.

Kemampuan Deteksi Jack

Pengaturan heuristik kemampuan deteksi jack sama untuk titik akhir audio komunikasi default dan titik akhir audio konsol default.

Faktor Formulir

Daftar prioritas yang berbeda dibuat untuk merender perangkat default komunikasi dan menangkap perangkat default komunikasi.

Prioritas faktor formulir untuk titik akhir pengambilan default komunikasi dalam urutan prioritas (dari prioritas tertinggi ke terendah) adalah sebagai berikut:

  • Headset
  • Handset
  • Mikrofon
  • LineLevel

Prioritas faktor formulir untuk titik akhir render default komunikasi dalam urutan prioritas (dari prioritas tertinggi ke terendah) adalah sebagai berikut:

  • Headset
  • Handset
  • Headphone
  • Pembicara
  • LineLevel
  • DigitalAudioDisplayDevice (HDMI atau DisplayPort)
  • S/PDIF
  • Hal lain (diperlakukan dengan prioritas terendah yang sama; yaitu, dengan nRankFormFactor sama dengan nol)

KSNodeType

Pengaturan heuristik KsNodeType sama untuk titik akhir audio komunikasi default dan titik akhir audio konsol default.

Jenis Bus

Pengaturan heuristik jenis bus sama untuk titik akhir audio komunikasi default dan titik akhir audio konsol default.

Lokasi Umum

Windows 10 memberi peringkat nilai enum untuk lokasi umum dalam urutan prioritas berikut, dari prioritas tertinggi hingga terendah:

  • Memisahkan
  • Kotak Primer
  • Internal
  • Lainnya (diperlakukan dengan prioritas terendah yang sama; yaitu, nRankGenLoc sama dengan nol)

Driver audio melaporkan informasi lokasi umum titik akhir mereka melalui properti KSPROPERTY_JACK_DESCRIPTION. Untuk informasi selengkapnya, lihat Properti Deskripsi Jack.

Lokasi Geometris

Windows 10 memberi peringkat nilai enum untuk lokasi geometrik dalam urutan prioritas berikut, dari prioritas tertinggi hingga terendah:

  • Front dan InsideMobileLid
  • Lainnya (diperlakukan dengan prioritas terendah yang sama; yaitu, dengan nRankGeoLoc sama dengan nol)

Driver audio melaporkan informasi lokasi geometrik titik akhir mereka melalui properti KSPROPERTY_JACK_DESCRIPTION. Untuk informasi selengkapnya, lihat Properti Deskripsi Jack.

Pengecualian

Selain faktor heuristik sebelumnya, Windows 10 juga memiliki tiga pengecualian yang diterapkan untuk heuristik perangkat komunikasi default, sedangkan Windows 7 hanya memiliki satu.

Pengecualian pertama lebih memilih titik akhir berorientasi komunikasi yang jelas—seperti Handset dan Speakerphone—karena dipilih sebagai titik akhir komunikasi default. Secara khusus, subsistem audio meningkatkan hasil WeightedRankValue untuk titik akhir dengan KSNodeType yang cocok dengan salah satu nilai berikut:

  • KSNODETYPE_PERSONAL_MICROPHONE
  • KSNODETYPE_HEADSET
  • KSNODETYPE_PHONE_LINE
  • KSNODETYPE_DOWN_LINE_PHONE
  • KSNODETYPE_COMMUNICATION_SPEAKER
  • KSNODETYPE_HANDSET
  • KSNODETYPE_TELEPHONE
  • KSNODETYPE_SPEAKERPHONE_NO_ECHO_REDUCTION
  • KSNODETYPE_ECHO_SUPPRESSING_SPEAKERPHONE
  • KSNODETYPE_ECHO_CANCELING_SPEAKERPHONE

Pengecualian kedua menghindari titik akhir yang jelas titik akhir berorientasi konsol yang tidak cocok untuk penggunaan komunikasi:

  • KSNODETYPE_SPEAKERS_STATIC_JACK
  • Titik akhir audio khusus yang hanya ada dalam skenario seluler, yang tidak dapat digunakan untuk audio komunikasi

Pada saat penulisan ini, pengecualian ketiga ada untuk lebih memilih titik akhir audio seluler. Pengecualian ini hanya ada untuk skenario seluler dengan kemampuan seluler dan berada di luar cakupan dokumentasi ini. Karena jenis titik akhir ini hanya akan ada pada sistem seluler, pengecualian ini dapat diabaikan dengan aman.

Lihat juga

Properti Deskripsi Jack

KSPROPERTY_JACK_DESCRIPTION2

KSPROPERTY_JACK_DESCRIPTION3

Sematkan Properti Kategori

SetupPreferredAudioDevices