Mix inputs at 0 dB instead of -3 dB
The common attenuation made playback too quiet. Inputs are now summed without attenuation; docs note that loud simultaneous inputs can clip. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -23,7 +23,7 @@ Mac/iPhone의 AirPlay 2 ── Shairport Sync ─┐
|
||||
- SBC 송신 품질은 medium입니다. 기준 보드에서 high로 동시 수신·송신 시 끊겨
|
||||
전송량을 줄였습니다. 믹서·입력·송신 버퍼는 각 200 ms이며, 이 조합에서 끊김 없는 청취를 확인했습니다.
|
||||
- DAC 출력은 44.1 kHz / 스테레오 / 16비트, 블루투스용 가상 믹서는 48 kHz입니다.
|
||||
- 각 입력을 3 dB 낮춥니다. 여러 입력의 큰 소리가 겹쳐 찢어지면 입력 볼륨을 낮추세요. 지연 없는 실시간 녹음/악기 모니터링용 구성은 아닙니다.
|
||||
- 입력은 감쇠 없이(0 dB) 섞습니다. 여러 입력의 큰 소리가 겹치면 합이 최대치를 넘어 찢어질 수 있으니 입력 볼륨을 낮추세요. 지연 없는 실시간 녹음/악기 모니터링용 구성은 아닙니다.
|
||||
- 각 송신 기기의 볼륨으로 믹스 비율을 바꿉니다.
|
||||
- 출력은 DAC 또는 블루투스 중 하나를 선택합니다. 양쪽 동시 출력은 구현하지 않았습니다.
|
||||
|
||||
|
||||
+2
-2
@@ -70,9 +70,9 @@ cat /sys/module/aic8800_fdrv/parameters/ps_on
|
||||
블루투스 인코딩/무선 전송에는 지연이 추가됩니다. 이 자료는 DAC 또는
|
||||
블루투스 중 하나를 출력으로 선택하며, 두 출력의 동기 재생은 지원하지 않습니다.
|
||||
|
||||
## 3개 이상 입력을 더하면 찢어짐
|
||||
## 여러 입력을 더하면 찢어짐
|
||||
|
||||
각 입력의 공통 감쇠는 3 dB입니다. 입력 수가 늘어나면
|
||||
입력은 감쇠 없이(0 dB) 섞으므로 두 입력이 동시에 크게 재생되면 합이 최대치를 넘을 수 있습니다. 입력 수가 늘어나면
|
||||
각 기기의 볼륨을 더 낮춰 합산 클리핑을 피해야 합니다. 최대 안정적인
|
||||
블루투스 동시 입력 수는 보드 컨트롤러/드라이버와 실제 재생으로 검증해야 합니다.
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
- 출력 장비 주소: `E4:58:BC:C3:3B:F8` (기존 장비 참고만; 새 설치 기본값이 아님).
|
||||
- 호스트 이름: `radxa-mixer` (기존 `radxa-zero3`에서 변경).
|
||||
- 웹 믹서: `http://radxa-mixer.local` (= `http://192.168.10.83`, 80번 포트), `radxa-mixer-web.service` 자동 시작.
|
||||
- 공통 감쇠 −3 dB. AirPlay는 기존 네이티브 볼륨만 제어.
|
||||
- 공통 감쇠 없음(0 dB, 이전 −3 dB에서 사용자 요청으로 변경). AirPlay는 기존 네이티브 볼륨만 제어.
|
||||
- 보스는 영구 등록(`Bonded: yes`, Trusted) 상태.
|
||||
- Wi-Fi 드라이버: aic8800_fdrv; `ps_on=0 he_on=0` 설정을 재부팅 후 확인함.
|
||||
- USB 관리 주소 10.55.0.1/24는 별도 gadget/systemd-networkd 설정이며,
|
||||
|
||||
@@ -68,7 +68,7 @@ def save(path, text, mode=0o644):
|
||||
|
||||
|
||||
def mixer(pcm, rate):
|
||||
return f'''# Managed by radxa-audio; each input is attenuated by 3 dB.
|
||||
return f'''# Managed by radxa-audio; inputs are mixed at 0 dB (no attenuation).
|
||||
pcm.radxa_dmix {{
|
||||
type dmix
|
||||
ipc_key 553001
|
||||
@@ -89,7 +89,7 @@ pcm.radxa_dmix {{
|
||||
pcm.radxa_mix {{
|
||||
type plug
|
||||
slave.pcm "radxa_dmix"
|
||||
ttable {{ 0.0 0.707945784 1.1 0.707945784 }}
|
||||
ttable {{ 0.0 1.0 1.1 1.0 }}
|
||||
}}
|
||||
'''
|
||||
|
||||
|
||||
@@ -4,4 +4,4 @@
|
||||
<section><div class="sectionTitle"><h2>입력 믹서</h2><span>입력별 볼륨 · 음소거</span></div><div id="inputs" class="inputs"></div><p class="hint">AirPlay는 기존 볼륨을 조절합니다. 출력 장비의 볼륨은 변경하지 않습니다.</p></section>
|
||||
<section><div class="sectionTitle"><h2>Bluetooth 입력 등록</h2><span id="pairState">확인 중</span></div><div class="choose"><select id="pairTime" aria-label="검색 허용 시간"><option value="120">2분</option><option value="300" selected>5분</option><option value="900">15분</option></select><button id="pairToggle">검색 허용 켜기</button></div><p class="hint">켜 두는 동안 휴대폰 Bluetooth 목록에 <b id="pairAlias">Radxa Audio Bluetooth</b>가 표시됩니다. 이 시간에 연결하는 기기는 자동으로 승인·신뢰 등록되므로 등록이 끝나면 꺼 주세요. 이미 등록한 기기는 꺼져 있어도 연결됩니다.</p></section>
|
||||
<section><div class="sectionTitle"><h2>출력 장비</h2><span id="outputState">확인 중</span></div><div class="tabs"><button id="tabDac">DAC</button><button id="tabBt">Bluetooth</button></div><div id="dacPanel"><label for="dacSelect">오디오 장치</label><div class="choose"><select id="dacSelect"></select><button id="useDac">출력 선택</button></div></div><div id="btPanel" hidden><label for="btSelect">등록한 헤드폰·스피커</label><div class="choose"><select id="btSelect"></select><button id="useBt">출력 선택</button></div><div class="scanRow"><p>새 출력 장비는 페어링 모드로 켜 주세요.</p><button id="scan" class="quiet">장비 검색</button></div><div id="discovered"></div></div><p class="hint">출력 전환 중에는 잠시 소리가 멈출 수 있습니다. 전환 후 AirPlay를 다시 선택해 주세요.</p></section>
|
||||
<footer>RADXA MIXER <span>공통 감쇠 −3 dB · 스테레오</span></footer></main><script src="/app.js"></script></body></html>
|
||||
<footer>RADXA MIXER <span>감쇠 없음 (0 dB) · 스테레오</span></footer></main><script src="/app.js"></script></body></html>
|
||||
|
||||
@@ -40,7 +40,7 @@ class ManagerTests(unittest.TestCase):
|
||||
self.assertIn('"radxa_mix"',f['/etc/shairport-sync.conf'])
|
||||
self.assertIn('--pcm=radxa_mix',f['/etc/systemd/system/bluealsa-aplay.service.d/10-radxa-mixer.conf'])
|
||||
self.assertNotIn('--single-audio', ''.join(f.values()))
|
||||
self.assertIn('ttable { 0.0 0.707945784 1.1 0.707945784 }',f['/etc/asound.conf'])
|
||||
self.assertIn('ttable { 0.0 1.0 1.1 1.0 }',f['/etc/asound.conf'])
|
||||
self.assertIn('rate 44100',f['/etc/asound.conf'])
|
||||
|
||||
def test_output_device_is_not_hardcoded(self):
|
||||
|
||||
Reference in New Issue
Block a user