Π‘Π»Π΅Π΄ ΠΏΠΎΡΡΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠ°, Π½ΠΎΠ²Π°ΡΠ° ΡΡΠ°Π±ΠΈΠ»Π½Π° Π²Π΅ΡΡΠΈΡ Π½Π° ΠΌΡΠ»ΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½Π½ΠΈΡ ΡΡΡΠ²ΡΡ PipeWire 1.6.0 Π΅ Π³ΠΎΡΠΎΠ²Π°. Π’Ρ Π·Π°ΠΌΠ΅ΡΡΠ²Π° Π·Π²ΡΠΊΠΎΠ²ΠΈΡ ΡΡΡΠ²ΡΡ PulseAudio ΠΈ ΡΠ΅ ΠΎΡΠ»ΠΈΡΠ°Π²Π° Ρ Π΄ΠΎΠ±Π°Π²ΡΠ½Π΅ΡΠΎ Π½Π° ΡΡΠ΅Π΄ΡΡΠ²Π° Π·Π° ΡΠ°Π±ΠΎΡΠ° Ρ Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠΎΡΠΎΡΠΈ, Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π·Π²ΡΠΊ Ρ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡ ΠΈ Π½ΠΎΠ²Π° ΠΌΠΎΠ΄Π΅Π» Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄ΠΎΡΡΡΠΏΠ° Π½Π° Π½ΠΈΠ²ΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΠΏΠΎΡΠΎΡΠΈ. ΠΡΠΎΠ΅ΠΊΡΡΡ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π² Fedora Linux, RHEL, Ubuntu, Debian, SUSE/openSUSE ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈ Π΄ΠΈΡΡΡΠΈΠ±ΡΡΠΈΠΈ Π½Π° Linux. ΠΠΎΠ΄ΡΡ Π΅ Π½Π°ΠΏΠΈΡΠ°Π½ Π½Π° C ΠΈ ΡΠ΅ ΡΠ°Π·ΠΏΡΠΎΡΡΡΠ°Π½ΡΠ²Π° ΠΏΠΎΠ΄ MIT Π»ΠΈΡΠ΅Π½Π·.
PipeWire Π΅ Π±Π°Π·ΠΈΡΠ°Π½ Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠΏΡΠΎΡΠ΅ΡΠ½Π° Π°ΡΡ ΠΈΡΠ΅ΠΊΡΡΡΠ°, ΠΊΠΎΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠΏΠΎΠ΄Π΅Π»ΡΠ½Π΅ΡΠΎ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ. ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²ΡΡ ΡΠ΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π²ΡΡΠΊΠ°ΠΊΠ²ΠΈ ΠΌΡΠ»ΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΠΈ ΠΏΠΎΡΠΎΡΠΈ, ΡΠΌΠ΅ΡΠ²Π°Π½Π΅ ΠΈ ΠΏΡΠ΅Π½Π°ΡΠΎΡΠ²Π°Π½Π΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ ΠΏΠΎΡΠΎΡΠΈ, ΠΊΠ°ΠΊΡΠΎ ΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ ΠΈΠ·ΡΠΎΡΠ½ΠΈΡΠΈ, ΠΊΠ°ΡΠΎ ΡΡΡΡΠΎΠΉΡΡΠ²Π° Π·Π° Π·Π°Ρ Π²Π°ΡΠ°Π½Π΅ Π½Π° Π²ΠΈΠ΄Π΅ΠΎ, ΡΠ΅Π± ΠΊΠ°ΠΌΠ΅ΡΠΈ ΠΈΠ»ΠΈ ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅, ΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ ΠΎΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° Π΅ΠΊΡΠ°Π½Π°. PipeWire ΠΏΡΠ΅Π΄Π»Π°Π³Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΡΡΠ²ΠΌΠ΅ΡΡΠ½Π° ΡΠ°Π±ΠΎΡΠ° Π½Π° Π½ΡΠΊΠΎΠ»ΠΊΠΎ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Ρ ΡΠ΅Π± ΠΊΠ°ΠΌΠ΅ΡΠ° ΠΈ ΡΠ΅ΡΠ°Π²Π° ΠΏΡΠΎΠ±Π»Π΅ΠΌΠΈΡΠ΅ Ρ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΈΡ Π·Π°Ρ Π²Π°Ρ Π½Π° ΡΡΠ΄ΡΡΠΆΠ°Π½ΠΈΠ΅ ΠΎΡ Π΅ΠΊΡΠ°Π½Π° ΠΈ ΠΎΡΠ΄Π°Π»Π΅ΡΠ΅Π½ΠΈΡ Π΄ΠΎΡΡΡΠΏ Π΄ΠΎ Π΅ΠΊΡΠ°Π½Π° Π² ΡΡΠ΅Π΄Π° Π½Π° Wayland.
ΠΡΠΈ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ ΠΊΠ°ΡΠΎ Π·Π²ΡΠΊΠΎΠ²ΠΎ ΡΡΡΠ²ΡΡ, PipeWire ΠΌΠΎΠΆΠ΅ Π΄Π° ΠΎΡΠΈΠ³ΡΡΠΈ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»Π½ΠΈ Π·Π°ΠΊΡΡΠ½Π΅Π½ΠΈΡ ΠΈ Π΄Π° ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²ΠΈ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ, ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡΠ°ΡΠ° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° PulseAudio ΠΈ JACK, ΠΊΠ°ΡΠΎ ΠΎΡΡΠ°Π·ΡΠ²Π° Π½ΡΠΆΠ΄ΠΈΡΠ΅ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠΈΡΠ΅ Π·Π° ΠΏΡΠΎΡΠ΅ΡΠΈΠΎΠ½Π°Π»Π½Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π·Π²ΡΠΊ, Π½Π° ΠΊΠΎΠΈΡΠΎ PulseAudio Π½Π΅ ΠΌΠΎΠΆΠ΅ΡΠ΅ Π΄Π° ΠΎΡΠ³ΠΎΠ²ΠΎΡΠΈ. PipeWire ΠΏΡΠ΅Π΄Π»Π°Π³Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½ ΠΌΠΎΠ΄Π΅Π» Π½Π° ΡΠΈΠ³ΡΡΠ½ΠΎΡΡ, ΠΊΠΎΠΉΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ²Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π΄ΠΎΡΡΡΠΏΠ° Π½Π° Π½ΠΈΠ²ΠΎ ΠΎΡΠ΄Π΅Π»Π½ΠΈ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈ ΠΊΠΎΠ½ΠΊΡΠ΅ΡΠ½ΠΈ ΠΏΠΎΡΠΎΡΠΈ. Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈΡΡ ΠΌΠΎΠ΄Π΅Π» Π½Π° Π΄ΠΎΡΡΡΠΏ ΡΠ»Π΅ΡΠ½ΡΠ²Π° ΠΏΡΠ΅Π½ΠΎΡΠ° Π½Π° Π·Π²ΡΠΊ ΠΈ Π²ΠΈΠ΄Π΅ΠΎ ΠΎΡ ΠΈΠ·ΠΎΠ»ΠΈΡΠ°Π½ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ ΠΈ Π² ΡΡΡ .
Π Π½ΠΎΠ²Π°ΡΠ° Π²Π΅ΡΡΠΈΡ:
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ Π΄Π΅ΠΊΠΎΠ΄Π΅Ρ Π·Π° Π·Π²ΡΠΊΠΎΠ²ΠΈΡ ΠΊΠΎΠ΄Π΅ΠΊ LDAC, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π²ΠΈΡΠΎΠΊΠΎΠΊΠ°ΡΠ΅ΡΡΠ²Π΅Π½ Π·Π²ΡΠΊ ΠΏΠΎ Bluetooth. ΠΠ° Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠ°Π½Π΅ Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° libldac.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΎΠΏΡΠΈΡ Β«bluez5-plc-spandspΒ» Π·Π° ΠΊΠΎΠΌΠΏΠ΅Π½ΡΠ°ΡΠΈΡ Π½Π° Π·Π°Π³ΡΠ±Π°ΡΠ° Π½Π° ΠΏΠ°ΠΊΠ΅ΡΠΈ ΠΏΡΠΈ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° Π·Π²ΡΠΊ ΠΏΠΎ Bluetooth, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡΠ΅ΠΊΠ°ΡΠ° SpanDSP.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½Π° ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° ΡΡΠ½ΠΊΡΠΈΠΈΡΠ΅ Π·Π° ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ ΠΈ ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠ΅ΡΠΈΠ°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΠΎΠ±Π΅ΠΊΡΠΈ Π²ΡΠ² ΡΠΎΡΠΌΠ°ΡΠ° POD (Plain Old Data) Π² ΡΠΏΠΎΠ΄Π΅Π»Π΅Π½Π° ΠΏΠ°ΠΌΠ΅Ρ.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡΠ° Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π·Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈ (features) ΡΡΠ΅Π· ΠΌΠ΅ΡΠ°Π΄Π°Π½Π½ΠΈ ΠΎΡ ΡΠ·Π»ΠΈΡΠ΅ Π½Π° PipeWire, ΠΊΠΎΠ΅ΡΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Π·Π° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ΡΠΎ Π½Π° ΡΠ°Π·ΡΠΈΡΠ΅Π½Π° ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»Π½ΠΎΡΡ, ΠΊΠ°ΡΠΎ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΈΡ RELEASE.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΏΡΠΈΠΊΡΠ΅ΠΏΠ²Π°Π½Π΅ Π½Π° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π»ΡΠΊΠΈ Π΄Π°Π½Π½ΠΈ ΠΊΡΠΌ ΠΊΠΎΠΌΠ°Π½Π΄ΠΈΡΠ΅ ΠΈ ΡΡΠ±ΠΈΡΠΈΡΡΠ°, ΠΏΡΠ΅Π΄Π°Π²Π°Π½ΠΈ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ·Π»ΠΈΡΠ΅.
- Π Π΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½ΠΈ ΡΠ° Π΄ΠΎΠΏΡΠ»Π½ΠΈΡΠ΅Π»Π½ΠΈ ΠΏΠΎΠΌΠΎΡΠ½ΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π° ΡΡΠ·Π΄Π°Π²Π°Π½Π΅ ΠΈ ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π½Π° ΡΠΎΡΠΌΠ°ΡΠΈ Π·Π° ΠΊΠΎΠΌΠΏΡΠ΅ΡΠΈΡ.
- Π’Π΅ΠΊΡΡΠΈΡΡ ΠΏΠΎ ΠΏΠΎΠ΄ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π»ΠΈΠΌΠΈΡ Π·Π° ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»Π΅Π½ Π±ΡΠΎΠΉ ΠΊΠ°Π½Π°Π»ΠΈ Π΅ ΡΠ²Π΅Π»ΠΈΡΠ΅Π½ Π΄ΠΎ 128. ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠ΅ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠΎΠ·ΠΈ Π»ΠΈΠΌΠΈΡ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»Π°ΡΠΈΡ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠ° βaudio.layoutβ Π·Π° Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΡ Π΅ΠΌΠ°ΡΠ° Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠΊΠ°Π½Π°Π»Π΅Π½ ΠΎΠ±Π΅ΠΌΠ΅Π½ Π·Π²ΡΠΊ (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ, βaudio.layout = 5.1β) Π±Π΅Π· Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎΡΡ ΠΎΡ ΠΈΠ·Π±ΡΠΎΡΠ²Π°Π½Π΅ Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΠΈΡΠ΅ Π½Π° ΠΊΠ°Π½Π°Π»ΠΈΡΠ΅ (βaudio.position = [ FL, FR, FC, LFE, SL, SR ]β).
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΡΠΌ βCapability Paramsβ Π·Π° ΡΡΠ³Π»Π°ΡΡΠ²Π°Π½Π΅ Π½Π° Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΠΈΡΠ΅ Π½Π° Π»ΠΈΠ½ΠΊΠ° Π½Π° Π΅ΡΠ°ΠΏΠ° ΠΏΡΠ΅Π΄ΠΈ ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΡΠΎΡΠΌΠ°ΡΠ° ΠΈ Π±ΡΡΠ΅ΡΠΈΡΠ΅.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π½ΠΎΠ²ΠΈ ΡΠΈΠΏΠΎΠ²Π΅ ΡΠ²Π΅ΡΠΎΠ²ΠΎ ΠΏΡΠ΅Π΄ΡΡΠ°Π²ΡΠ½Π΅ (colortype) Π·Π° HDR.
- Π ΡΠΈΠΊΡΠ»Π° Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° ΡΡΠ±ΠΈΡΠΈΡ Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ Ρ ΠΈΠ½Π²Π΅ΡΡΠΈΠΈ Π½Π° ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠΈ, ΠΊΠΎΠ΅ΡΠΎ ΠΏΡΠ΅Π΄ΠΎΡΠ²ΡΠ°ΡΡΠ²Π° ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΏΡΠΈ ΠΊΠΎΠΈΡΠΎ Π²ΠΈΡΠΎΠΊΠΎΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΠΈΡΡ ΠΏΠΎΡΠΎΠΊ ΡΡΡΠ±Π²Π° Π΄Π° ΡΠ°ΠΊΠ° Π·Π° ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Π²Π°Π½Π΅ Π½Π° Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠ°, Π·Π°Π΄Π°Π΄Π΅Π½Π° ΠΎΡ Π½ΠΈΡΠΊΠΎΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ΅Π½ ΠΏΠΎΡΠΎΠΊ. ΠΠ° ΡΠΈΠ½Ρ ΡΠΎΠ½ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΡΡΡΡΠΎΡΠ½ΠΈΠ΅ΡΠΎ ΠΌΠ΅ΠΆΠ΄Ρ ΠΏΠΎΡΠΎΠΊΠΎΠ²Π΅ΡΠ΅ Π²ΠΌΠ΅ΡΡΠΎ epoll ΠΈ eventfd ΡΠ° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ Π»Π΅ΠΊΠΈ Π±Π»ΠΎΠΊΠΈΡΠΎΠ²ΠΊΠΈ.
- ΠΠΎΠ±Π°Π²Π΅Π½Π° Π΅ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° ΠΎΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π΅ Π½Π° ΠΏΠΎΠ·ΠΈΡΠΈΡΡΠ° Π½Π° ΠΊΠ°Π½Π°Π»ΠΈΡΠ΅ ΡΡΠ΅Π· ΡΠ°Π·Π±ΠΈΡΠ°Π½Π΅ Π½Π° Π΄Π°Π½Π½ΠΈΡΠ΅ EDID.
- ΠΡΠΈΠ³ΡΡΠ΅Π½Π° Π΅ ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π² ΠΏΠΎΠ΄ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° ALSA Π½Π° ΠΊΠ°ΡΡΠΈΡΠ΅ Ρ ΠΊΠ°Π½Π°Π»ΠΈΡΠ΅ Π½Π° ΠΎΠ±Π΅ΠΌΠ΅Π½ Π·Π²ΡΠΊ (ΠΊΠΎΠΉ ΠΊΠ°Π½Π°Π» Π΅ Π²Π΄ΡΡΠ½ΠΎ, ΠΊΠΎΠΉ Π²Π»ΡΠ²ΠΎ ΠΈ Ρ.Π½.).
- ΠΠ½Π΅ΡΠ΅Π½ΠΈ ΡΠ° ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎ ΠΏΠΎΠ΄ΠΎΠ±ΡΠ΅Π½ΠΈΡ, ΡΠ²ΡΡΠ·Π°Π½ΠΈ Ρ Bluetooth, RTP (Real-time Transport Protocol) ΠΈ AVB (Audio Video Bridging).
- ΠΡΠΎΠ΄ΡΠ»ΠΆΠ°Π²Π° ΡΠ°Π±ΠΎΡΠ°ΡΠ° ΠΏΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡΡΠ° Π½Π° ΠΌΡΠ΅ΠΆΠΎΠ²ΠΈΡ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Milan Π·Π° ΠΏΡΠ΅Π΄Π°Π²Π°Π½Π΅ Π½Π° ΠΌΡΠ»ΡΠΈΠΌΠ΅Π΄ΠΈΠΉΠ½ΠΈ Π΄Π°Π½Π½ΠΈ Π² ΡΠ΅Π°Π»Π½ΠΎ Π²ΡΠ΅ΠΌΠ΅.
- Π ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° ΡΠ΅ΡΡΠΎΡΠ°ΡΠ° Π½Π° Π΄ΠΈΡΠΊΡΠ΅ΡΠΈΠ·Π°ΡΠΈΡ (resampler) Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π½Π°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌΠΈ ΡΡΠ½ΠΊΡΠΈΠΈ Π·Π° ΠΏΠΎΡΠΈΡΠΊΠ°Π½Π΅ Π½Π° ΠΈΠ·ΠΊΡΠΈΠ²ΡΠ²Π°Π½ΠΈΡ, ΠΊΠ°ΡΠΎ Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Blackman ΠΈ Kaiser. ΠΠ° ΠΏΠΎΠ²ΠΈΡΠ°Π²Π°Π½Π΅ Π½Π° ΡΠΎΡΠ½ΠΎΡΡΡΠ° Π½Π° ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡΡΠ° Π½Π° ΡΠ°Π·Π° ΡΠ° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½ΠΈ ΡΠΈΠΊΡΠΈΡΠ°Π½ΠΈ Π·Π°ΠΏΠ΅ΡΠ°ΠΉΠ½ΠΈ ΠΈΠ·ΡΠΈΡΠ»Π΅Π½ΠΈΡ.
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Π³ΡΠ°ΡΠ° Π½Π° ΡΠ·Π»ΠΈΡΠ΅ Π½Π° Π·Π²ΡΠΊΠΎΠ²ΠΈΡΠ΅ ΡΠΈΠ»ΡΡΠΈ FFmpeg ΠΈ AI ΠΌΠΎΠ΄Π΅Π»ΠΈ Π·Π° ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Π½Π° Π·Π²ΡΠΊ Π½Π° Π±Π°Π·Π°ΡΠ° Π½Π° ONNX, ΠΊΠ°ΡΠΎ Π΄Π΅ΡΠ΅ΠΊΡΠΎΡΠ° Π½Π° Π³Π»Π°Ρ Silero.
- ΠΠΎΠ΄Π΄ΡΡΠΆΠΊΠ°ΡΠ° Π½Π° ΠΊΠ»ΠΈΠ΅Π½ΡΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΡΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» v0, ΠΏΡΠΈΠ»Π°Π³Π°Π½ Π² ΡΠ°Π½Π½ΠΈΡΠ΅ Π²Π΅ΡΡΠΈΠΈ Π½Π° PipeWire, Π΅ ΠΏΡΠ΅ΠΊΡΠ°ΡΠ΅Π½Π°.
- Π ΠΌΠΎΠ΄ΡΠ»Π° jack-tunnel Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π·Π° Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ½ΠΎ ΡΠ²ΡΡΠ·Π²Π°Π½Π΅ Π½Π° ΠΏΠΎΡΡΠΎΠ²Π΅ΡΠ΅.
- ΠΠ° ΡΠΈΡΡΠ΅ΠΌΠ°ΡΠ° Π·Π° ΡΡΡΠΈΠΉΠΌΠΈΠ½Π³ ROC Π΅ ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° ΠΌΠ½ΠΎΠ³ΠΎΠ½ΠΈΡΠΊΠΎΠ²ΠΈ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ.
- ΠΡΠ΅Π΄ΠΎΡΡΠ°Π²Π΅Π½Π° Π΅ Π²ΡΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ Π·Π° ΠΏΡΠΎΠΌΡΠ½Π° Π½Π° Π»ΠΈΠΌΠΈΡΠΈΡΠ΅ Π·Π° ΡΠ΅ΡΡΡΡΠΈ (rlimit) ΡΡΠ΅Π· ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΎΠ½Π½ΠΈΡ ΡΠ°ΠΉΠ».
- ΠΠΎΠ±Π°Π²Π΅Π½ΠΎ Π΅ ΡΠ²ΠΎΠΉΡΡΠ²ΠΎΡΠΎ 'thread.reset-on-fork' Π·Π° ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΠ΅ Π½Π° Π½ΡΠ»ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π½ΠΈΡΠΊΠΈΡΠ΅ ΠΏΡΠΈ ΠΈΠ·Π²ΠΈΠΊΠ²Π°Π½Π΅ Π½Π° fork. ΠΠ° ΠΊΠ»ΠΈΠ΅Π½ΡΠΈΡΠ΅ Π½Π° JACK, Π·Π° Π΄Π° ΡΠ΅ ΠΏΠΎΠ²ΡΠΎΡΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ΡΠΎ Π½Π° JACK, ΠΌΠΎΠΆΠ΅ Π΄Π° ΡΠ΅ ΠΈΠ·ΠΊΠ»ΡΡΠΈ Π½ΡΠ»ΠΈΡΠ°Π½Π΅ΡΠΎ Π½Π° Π½ΠΈΡΠΊΠΈΡΠ΅ ΡΡΠ΅Π· Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° 'thread.reset-on-fork=false'.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΡΠ»Π°Π³ node.exclusive, ΠΊΠΎΠΉΡΠΎ Π³Π°ΡΠ°Π½ΡΠΈΡΠ°, ΡΠ΅ ΠΏΠΎΡΡΡΡ ΠΈΠΌΠ° ΡΠ°ΠΌΠΎ Π΅Π΄ΠΈΠ½ ΠΈΠ·ΡΠΎΡΠ½ΠΈΠΊ ΠΈ Π΅Π΄ΠΈΠ½ ΠΏΠΎΡΡΠ΅Π±ΠΈΡΠ΅Π», ΠΊΠΎΠ΅ΡΠΎ Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π° ΡΠ΅Π°Π»ΠΈΠ·ΠΈΡΠ°Π½Π΅ Π½Π° ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌΠ° Explicit Sync.
- ΠΠΎΠ±Π°Π²Π΅Π½ Π΅ ΡΠ»Π°Π³ node.reliable Π·Π° ΡΠ΅ΠΆΠΈΠΌΠ° Π½Π° Π³Π°ΡΠ°Π½ΡΠΈΡΠ°Π½ΠΎ Π΄ΠΎΡΡΠ°Π²ΡΠ½Π΅.
- Π ΡΡΠΈΠ»ΠΈΡΠ°ΡΠ° pw-cat Π΅ Π΄ΠΎΠ±Π°Π²Π΅Π½Π° ΠΏΠΎΠ΄Π΄ΡΡΠΆΠΊΠ° Π½Π° MIDI ΡΡΠΎΠ±ΡΠ΅Π½ΠΈΡ SysEx (System Exclusive, Π·Π° Π½Π°ΡΡΡΠΎΠΉΠΊΠ° Π½Π° ΡΠΈΠ½ΡΠ΅Π·Π°ΡΠΎΡΠΈ), ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠ° midiclip ΠΈ Π±Π΅Π·ΡΠΆΠ°ΡΠΈΠ΅ Π·Π²ΡΠΊΠΎΠ²ΠΈ ΡΠΎΡΠΌΠ°ΡΠΈ. ΠΠΎΠ±Π°Π²Π΅Π½ΠΈ ΡΠ° ΠΎΠΏΡΠΈΠΈ Π·Π° Π·Π°Π΄Π°Π²Π°Π½Π΅ Π½Π° ΡΠΎΡΠΌΠ°ΡΠΈ Π½Π° Π·Π²ΡΠΊΠΎΠ²ΠΈΡΠ΅ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ ΠΈ ΠΊΠΎΠ΄Π΅ΡΠΈΡΠ΅, ΠΊΠ°ΠΊΡΠΎ ΠΈ Π·Π° ΠΏΡΠ΅Π³Π»Π΅Π΄ Π½Π° ΡΠΏΠΈΡΡΠΊΠ° Ρ ΠΏΠΎΠ΄Π΄ΡΡΠΆΠ°Π½ΠΈ ΠΊΠΎΠ½ΡΠ΅ΠΉΠ½Π΅ΡΠΈ, ΠΊΠΎΠ΄Π΅ΡΠΈ, ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ Π½Π° ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²Π΅Π½ΠΈΡ Π·Π²ΡΠΊ ΠΈ ΠΈΠΌΠ΅Π½Π° Π½Π° ΠΊΠ°Π½Π°Π»ΠΈ.
ΠΠ·ΡΠΎΡΠ½ΠΈΠΊ: opennet.ru
