Π Π°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΈ Π·Π²ΡΠΊΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ALSA ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΠ»ΠΈ Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π² Π²Π΅ΡΠΊΡ linux-next, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΡΡΠΎΡΠΌΠΈΡΠΎΠ²Π°Π½ Π²ΡΠΏΡΡΠΊ ΡΠ΄ΡΠ° 5.9, Π½Π°Π±ΠΎΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, ΠΈΠ·Π±Π°Π²Π»ΡΡΡΠΈΠΉ ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΉ Π½Π° ΡΡΠΎΡΠΎΠ½Π΅ ΡΠ΄ΡΠ° ΠΊΠΎΠ΄ ΠΎΡ Π½Π΅ΠΏΠΎΠ»ΠΈΡΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΡ
ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ². ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²Π»Π΅Π½Ρ Π² ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΠΈΠΈ Ρ Π½Π΅Π΄Π°Π²Π½ΠΎ ΠΏΡΠΈΠ½ΡΡΡΠΌΠΈ ΡΠ΅ΠΊΠΎΠΌΠ΅Π½Π΄Π°ΡΠΈΡΠΌΠΈ ΠΏΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΠΈΠ½ΠΊΠ»ΡΠ·ΠΈΠ²Π½ΠΎΠΉ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Π² ΡΠ΄ΡΠ΅ Linux.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΡ Π²ΠΊΠ»ΡΡΠ°ΡΡ 10 ΠΏΠ°ΡΡΠ΅ΠΉ, ΠΈΠ· ΠΊΠΎΡΠΎΡΡΡ
9 ΡΠ²ΡΠ·Π°Π½Ρ Ρ ΠΈΠ·Π±Π°Π²Π»Π΅Π½ΠΈΠ΅ΠΌ ΠΊΠΎΠ΄Π° Π·Π²ΡΠΊΠΎΠ²ΡΡ
Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² ac97, bt87x, ctxfi, es1968, hda, intel8x0, nm256, via82xx, usb-audio ΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ² «whitelist» ΠΈ blacklist. Π£ΠΊΠ°Π·Π°Π½Π½ΡΠ΅ ΡΠ΅ΡΠΌΠΈΠ½Ρ Π·Π°ΠΌΠ΅Π½Π΅Π½Ρ Π½Π° «allowlist» ΠΈ «denylist». ΠΠ΅ΡΡΡΡΠΉ ΠΏΠ°ΡΡ Π½Π°ΡΠ΅Π»Π΅Π½ Π½Π° ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ ΡΡΡΠΎΡΠ²ΡΠ΅Π³ΠΎΡΡ ΡΠ΅ΡΠΌΠΈΠ½Π° «slave» Π² API vmaster.
ΠΠ΅ΡΠ΅ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°ΡΠ°Π΅ΡΡΡ Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π½Π°Π·Π²Π°Π½ΠΈΠΉ ΡΡΡΡΠΊΡΡΡ ΠΈ ΡΡΠ½ΠΊΡΠΈΠΉ. ΠΠ½Π°ΡΠ°Π»Π΅ Π΄Π»Ρ Π·Π°ΠΌΠ΅Π½Ρ Π±ΡΠ»ΠΎ Π²ΡΠ±ΡΠ°Π½ΠΎ ΡΠ»ΠΎΠ²ΠΎ
«replica» (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΡΠ½ΠΊΡΠΈΡ snd_ctl_add_slave() Π±ΡΠ»Π° Π·Π°ΠΌΠ΅Π½Π΅Π½Π° Π½Π° snd_ctl_add_replica()), ΡΡΠΎ Π²ΡΠ·Π²Π°Π»ΠΎ ΠΊΡΠΈΡΠΈΠΊΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ΅ΡΠΌΠΈΠ½ replica Π±ΠΎΠ»Π΅Π΅ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌ ΠΊ Π‘Π£ΠΠ ΠΈ ΠΈΡΠΊΠ°ΠΆΠ°Π΅Ρ ΡΠΌΡΡΠ» Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ Π·Π²ΡΠΊΠΎΠ²ΠΎΠΉ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ. Π ΠΈΡΠΎΠ³Π΅ Π΄Π»Ρ Π·Π°ΠΌΠ΅Π½Ρ Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ ΡΠ΅ΡΠΌΠΈΠ½ «follower», ΡΡΠΎ ΡΠ°ΠΊΠΆΠ΅ Π²Π½ΠΎΡΠΈΡ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ Π΄Π²ΡΡΠΌΡΡΠ»Π΅Π½Π½ΠΎΡΡΡ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, Π²ΠΌΠ΅ΡΡΠΎ «list of slave» ΠΈ «link slave» ΡΠ΅ΠΏΠ΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΡΡΡ «list of follower» ΠΈ «link follower»). ΠΡΠΈΠΌΠ΅ΡΠ°ΡΠ΅Π»ΡΠ½ΠΎ, ΡΡΠΎ ΡΠ΅ΡΠΌΠΈΠ½ «master» ΠΎΡΡΠ°Π²Π»Π΅Π½, Π² ΡΠΎΠΌ ΡΠΈΡΠ»Π΅ Π² Π½Π°Π·Π²Π°Π½ΠΈΠΈ ΡΠ°ΠΌΠΎΠ³ΠΎ API vmaster, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΎΠ½ ΡΠ°ΡΡΠΌΠ°ΡΡΠΈΠ²Π°Π΅ΡΡΡ Π² ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅ «master volume control».
ΠΠ°ΡΡΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½Ρ Π΄Π»Ρ Π²Π΅ΡΠΊΠΈ linux-next Π’Π°ΠΊΠ°ΡΠΈ ΠΠ²Π°ΠΈ (Takashi Iwai), ΠΌΡΠΉΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΎΠΌ ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΡ ALSA, ΡΠ°Π±ΠΎΡΠ°ΡΡΠΈΠΌ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ SUSE. ΠΠΎ ΠΏΠΎΠΊΠ° Π½Π΅ ΡΡΠ½ΠΎ Π±ΡΠ΄ΡΡ Π»ΠΈ ΠΎΠ½ΠΈ ΠΎΠ΄ΠΎΠ±ΡΠ΅Π½Ρ Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π² ΡΠΎΡΡΠ°Π² ΡΠ΄ΡΠ° ΠΠΈΠ½ΡΡΠΎΠΌ Π’ΠΎΡΠ²Π°Π»ΡΠ΄ΡΠΎΠΌ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΡ ΡΡΠ½ΠΊΡΠΈΠΉ Π² API vmaster ΠΏΠ΅ΡΠ΅ΡΠ΅ΠΊΠ°ΡΡΡΡ Ρ ΡΡΠ½ΠΊΡΠΈΡΠΌΠΈ Π² API ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π·Π²ΡΠΊΠΎΠ²ΡΡ
Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ², ΡΡΠΎ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ Π±ΠΎΠ»ΡΡΠΎΠΉ ΠΏΡΡΠ°Π½ΠΈΡΠ΅ Π² ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠΈ. ΠΠ·Π±Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΆΠ΅ API ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² ΠΎΡ ΡΠ΅ΡΠΌΠΈΠ½Π° slave ΠΏΡΠΈΠ²Π΅Π΄ΡΡ ΠΊ Π½Π°ΡΡΡΠ΅Π½ΠΈΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΡΠΎ ΡΡΠΎΡΠΎΠ½Π½ΠΈΠΌΠΈ Π΄ΡΠ°ΠΉΠ²Π΅ΡΠ°ΠΌΠΈ, Π½Π΅ Π²Ρ
ΠΎΠ΄ΡΡΠΈΠΌΠΈ Π² ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΡΠΎΡΡΠ°Π² ΡΠ΄ΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ ΠΏΠ°ΡΡΠ°ΠΌΠΈ ΠΈ Π½Π°ΡΡΡΠΎΠΉΠΊΠ°ΠΌΠΈ.
ΠΠ· Π½Π΅ ΡΠ²ΡΠ·Π°Π½Π½ΡΡ
Ρ ΡΠ΅ΡΠΌΠΈΠ½ΠΎΠ»ΠΎΠ³ΠΈΠ΅ΠΉ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ, Π½Π°ΠΌΠ΅ΡΠ΅Π½Π½ΡΡ
Π΄Π»Ρ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π² ΡΠ΄ΡΠΎ Linux 5.9, ΠΎΡΠΌΠ΅ΡΠ°Π΅ΡΡΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ Intel Silent Stream (ΡΠ΅ΠΆΠΈΠΌ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΠΏΠΈΡΠ°Π½ΠΈΡ Π΄Π»Ρ Π²Π½Π΅ΡΠ½ΠΈΡ
HDMI-ΡΡΡΡΠΎΠΉΡΡΠ² Π΄Π»Ρ ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π΅ΡΠΆΠΊΠΈ ΠΏΡΠΈ Π½Π°ΡΠ°Π»Π΅ Π²ΠΎΡΠΏΡΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΈΡ) ΠΈ Π½ΠΎΠ²ΠΎΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ΄ΡΠ²Π΅ΡΠΊΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΎΠΊ Π°ΠΊΡΠΈΠ²Π°ΡΠΈΠΈ ΠΌΠΈΠΊΡΠΎΡΠΎΠ½Π° ΠΈ ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Π·Π²ΡΠΊΠ°.
Π’Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π½ΠΎΠ²ΠΎΠ³ΠΎ ΠΎΠ±ΠΎΡΡΠ΄ΠΎΠ²Π°Π½ΠΈΡ, Π²ΠΊΠ»ΡΡΠ°Ρ ΠΊΠΎΠ½ΡΡΠΎΠ»Π»Π΅Ρ Loongson 7A1000.
ΠΡΡΠΎΡΠ½ΠΈΠΊ: opennet.ru