PulseAudio 16.0 ์ฌ์ด๋ ์๋ฒ์ ์ถ์๊ฐ ๋ฐํ๋์์ต๋๋ค. ์ด ์๋ฒ๋ ์์ฉ ํ๋ก๊ทธ๋จ๊ณผ ๋ค์ํ ์ ์์ค ์ค๋์ค ํ์ ์์คํ ๊ฐ์ ์ค๊ฐ์ ์ญํ ์ ํ์ฌ ์ฅ๋น ์์ ์ ์ถ์ํํฉ๋๋ค. PulseAudio๋ฅผ ์ฌ์ฉํ๋ฉด ๊ฐ๋ณ ์์ฉ ํ๋ก๊ทธ๋จ ์์ค์์ ๋ณผ๋ฅจ ๋ฐ ์ค๋์ค ๋ฏน์ฑ์ ์ ์ดํ๊ณ ์ฌ๋ฌ ์ ๋ ฅ ๋ฐ ์ถ๋ ฅ ์ฑ๋ ๋๋ ์ฌ์ด๋ ์นด๋๊ฐ ์๋ ๊ฒฝ์ฐ ์ค๋์ค์ ์ ๋ ฅ, ๋ฏน์ฑ ๋ฐ ์ถ๋ ฅ์ ๊ตฌ์ฑํ๊ณ ์ค๋์ค ์คํธ๋ฆผ ํ์์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค. ๋นํ ๋ฐ ํ๋ฌ๊ทธ์ธ ์ฌ์ฉ์ ํตํด ์ค๋์ค ์คํธ๋ฆผ์ ๋ค๋ฅธ ์์คํ ์ผ๋ก ํฌ๋ช ํ๊ฒ ๋ฆฌ๋๋ ์ ํ ์ ์์ต๋๋ค. PulseAudio ์ฝ๋๋ LGPL 2.1+ ๋ผ์ด์ผ์ค์ ๋ฐ๋ผ ๋ฐฐํฌ๋ฉ๋๋ค. Linux, Solaris, FreeBSD, OpenBSD, DragonFlyBSD, NetBSD, macOS ๋ฐ Windows๋ฅผ ์ง์ํฉ๋๋ค.
PulseAudio 16.0์ ์ฃผ์ ๊ฐ์ ์ฌํญ:
- module-rtp-send ๋ชจ๋์ ์ฌ์ฉํ์ฌ ์ ์ก๋ ์ค๋์ค๋ฅผ ์์ถํ๊ธฐ ์ํด Opus ์ค๋์ค ์ฝ๋ฑ์ ์ฌ์ฉํ๋ ๊ธฐ๋ฅ์ ์ถ๊ฐํ์ต๋๋ค(์ด์ ์๋ PCM๋ง ์ง์๋จ). Opus๋ฅผ ํ์ฑํํ๋ ค๋ฉด GStreamer ์ง์์ผ๋ก PulseAudio๋ฅผ ๊ตฌ์ถํ๊ณ module-rtp-send ๋ชจ๋์์ "enable_opus=true" ์ค์ ์ ์ง์ ํด์ผ ํฉ๋๋ค.
- ํฐ๋(tunnel-sink ๋ฐtunnel-source)์ ํตํด ์ค๋์ค๋ฅผ ์ ์ก/์์ ํ๋ ๋ชจ๋์ Latency_msec ๋งค๊ฐ๋ณ์๋ฅผ ์ฌ์ฉํ์ฌ ์ง์ฐ์ ๊ตฌ์ฑํ๋ ๊ธฐ๋ฅ์ด ์ถ๊ฐ๋์์ต๋๋ค(์ด์ ์๋ ์ง์ฐ์ด 250๋ง์ดํฌ๋ก์ด๋ก ์๊ฒฉํ๊ฒ ์ค์ ๋์์ต๋๋ค).
- ํฐ๋์ ํตํด ์ค๋์ค๋ฅผ ์ก์์ ํ๋ ๋ชจ๋์ ์ฐ๊ฒฐ ์คํจ ์ ์๋ฒ์ ์๋์ผ๋ก ๋ค์ ์ฐ๊ฒฐ๋๋๋ก ์ง์ํฉ๋๋ค. ๋ค์ ์ฐ๊ฒฐ์ ํ์ฑํํ๋ ค๋ฉด reconnect_interval_ms ์ค์ ์ ์ง์ ํ์ธ์.
- Bluetooth ์ค๋์ค ์ฅ์น์ ๋ฐฐํฐ๋ฆฌ ์์ค์ ๋ํ ์ ๋ณด๋ฅผ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ ๊ณตํ๊ธฐ ์ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค. ์ถฉ์ ์์ค์ "pactl list" ์ถ๋ ฅ(bluetooth.battery ์์ฑ)์ ํ์๋ ์ฅ์น ์์ฑ์๋ ํ์๋ฉ๋๋ค.
- JSON ํ์์ผ๋ก ์ ๋ณด๋ฅผ ์ถ๋ ฅํ๋ ๊ธฐ๋ฅ์ด pactl ์ ํธ๋ฆฌํฐ์ ์ถ๊ฐ๋์์ต๋๋ค. ํ์์ text ๋๋ json ๊ฐ์ ์ฌ์ฉํ ์ ์๋ 'โformat' ์ต์ ์ ์ฌ์ฉํ์ฌ ์ ํ๋ฉ๋๋ค.
- ์คํ ๋ ์ค์ ๋ชจ๋ ธ์ ๋ณ๋์ ALSA ์ฅ์น๋ฅผ ์ฌ์ฉํ๋ EPOS/Sennheiser GSP 670 ๋ฐ SteelSeries GameDAC ํค๋์ ์ ์ฌ์ฉํ ๋ ์คํ ๋ ์ค ์ถ๋ ฅ์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค(์ด์ ์๋ ๋ชจ๋ ธ ์ฅ์น๋ง ์ง์๋จ).
- Texas Instruments PCM2902 ์นฉ ๊ธฐ๋ฐ ์ฌ์ด๋ ์นด๋์์ ์ฌ์ด๋๋ฅผ ์์ ํ ๋ ๋ฐ์ํ๋ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
- 6์ฑ๋ ์ธ๋ถ ์ฌ์ด๋ ์นด๋ Native Instruments Komplete Audio 6 MK2์ ๋ํ ์ง์์ด ์ถ๊ฐ๋์์ต๋๋ค.
- ํฐ๋๊ณผ ๊ฒฐํฉ-์ฑํฌ ๋ชจ๋์ ํตํด ์ค๋์ค๋ฅผ ์ ์กํ ๋ ๋๊ธฐํ ๋ฐ ์ง์ฐ ๊ฒฐ์ ์ ์ ํ์ฑ ๋ฌธ์ ๊ฐ ํด๊ฒฐ๋์์ต๋๋ค.
- ์ง์ฐ ์ ์ด ์๊ณ ๋ฆฌ์ฆ์ ๋ฏธ์ธ ์กฐ์ ํ๊ธฐ ์ํด adjust_threshold_usec ๋งค๊ฐ๋ณ์๊ฐ module-loopback ๋ชจ๋์ ์ถ๊ฐ๋์์ต๋๋ค(๊ธฐ๋ณธ ์ง์ฐ์ 250๋ง์ดํฌ๋ก์ด). adjust_time ๋งค๊ฐ๋ณ์์ ๊ธฐ๋ณธ๊ฐ์ด 10์ด์์ 1์ด๋ก ์ค์ด๋ค์๊ณ , 0.5์ด ๋ฏธ๋ง์ ๊ฐ์ ์ค์ ํ ์ ์๋ ๊ธฐ๋ฅ(์: XNUMX)์ด ์ถ๊ฐ๋์์ต๋๋ค. ์ฌ์ ์๋ ์กฐ์ ๋ก๊น ์ ๊ธฐ๋ณธ์ ์ผ๋ก ๋นํ์ฑํ๋์ด ์์ผ๋ฉฐ ์ด์ ๋ ๋ณ๋์ log_interval ์ต์ ์ผ๋ก ๊ท์ ๋ฉ๋๋ค.
- JACK์ ํตํ ์ค๋์ค ์ ์ก/์์ ์ ํ์ฑํํ๋ ๋ฐ ์ฌ์ฉ๋๋ module-jackdbus-Detect ๋ชจ๋์๋ JACK์ ํตํ ์ค๋์ค ์ ์ก ๋๋ ์์ ๋ง ์ ํ์ ์ผ๋ก ํ์ฑํํ ์ ์๋๋กink_enabled ๋ฐ source_enabled ๋งค๊ฐ๋ณ์๊ฐ ์ถ๊ฐ๋์์ต๋๋ค. ๋ค๋ฅธ JACK ๊ตฌ์ฑ์ ๋์์ ์ฌ์ฉํ ์ ์๋๋ก ๋ชจ๋์ ๋ค์ ๋ก๋ํ๋ ๊ฒ๋ ๊ฐ๋ฅํฉ๋๋ค.
- ์๋ฅผ ๋ค์ด ์ฌ๋ฌ ์ฌ์ด๋ ์นด๋๋ฅผ ์ฌ์ฉํ์ฌ ๋จ์ผ ์๋ผ์ด๋ ์ฌ์ด๋๋ฅผ ์์ฑํ ๋ ํ์ํ ์ ์๋ ์ฑ๋ ๋ฆฌ๋ฏน์ฑ์ ๋นํ์ฑํํ๊ธฐ ์ํด remix ๋งค๊ฐ๋ณ์๊ฐ module-combine-sink ๋ชจ๋์ ์ถ๊ฐ๋์์ต๋๋ค.
์ถ์ฒ : opennet.ru