Zettelkasten

통화 녹음의 고음 에너지는 성별보다 AAC 비트레이트 차이가 크게 좌우한다

·수정 1회

요약

  • 1:1 음성통화 녹음 51명을 실측했다. 여성이 8kHz 위 약 2dB, 12kHz 위 약 4dB 에너지가 더 많았다. 같은 성별 안에서 AAC 56k와 128k의 차이는 12kHz 위에서 최대 9dB로, 성별 차이만큼 컸다.
  • 12kHz 위 에너지는 전체의 약 −50dB, 16kHz 위는 −70~−80dB로 사실상 없다. 48kHz 녹음은 학습용으로 과하고, 여성 목소리도 24kHz면 충분하다.
  • 스펙트럼 판단을 표본 한 명으로 내리면 틀린다. 성별과 인코딩 비트레이트로 층을 나눠 봐야 한다.

본문

측정 대상 (관찰됨)

  • 화자별로 분리 녹음된 1:1 음성통화. 클라우드 녹음 서비스의 개별 녹음 모드에서 나온 HLS(.ts 15초 조각)
  • AAC-LC, 48kHz, 모노
  • 비트레이트는 약 56kbps와 약 128kbps 두 그룹으로 갈린다(44명 중 19명 대 25명). 개별 녹음은 원본 송출 스트림을 따른다고 알려져 있어 앱 쪽 송출 설정 차이로 보이지만, 원인은 확인하지 않았다.
  • MPEG-TS 컨테이너가 비트레이트와 무관하게 약 22~27kbps를 더 얹는다. 56k 파일에서는 이것만 약 30%다.

방법

  • 최근 7일 통화에서 남녀 각 30명을 무작위로 뽑고, 1분 미만 통화는 제외했다(51명 남음).
  • 화자별로 첫 조각을 빼고 다음 4조각(약 60초)을 이어 붙였다.
  • ffmpeg highpass를 3번 겹쳐 차단 주파수 위만 남긴 RMS와 전대역 RMS의 차이(dB)를 쟀다.

결과 (전대역 대비, 중앙값)

그룹 인원 4kHz 초과 8kHz 초과 12kHz 초과 16kHz 초과
여성, 128k 13 −22 −34 −49 −73
여성, 56k 10 −23 −36 −51 −75
남성, 128k 13 −21 −33 −49 −69
남성, 56k 15 −23 −38 −58 −81
여성 전체 23 −23 −34 −50 −73
남성 전체 28 −22 −36 −54 −77

해석

  • 성별 차이는 "ㅅ·ㅆ" 같은 마찰음의 고음 성분 차이로 보인다(해석).
  • 남성 56k 그룹이 유독 낮은 건 낮은 비트레이트에서 AAC 인코더가 고음을 더 잘라내는 효과로 보인다(추정, 인코더 설정은 확인하지 않음).
  • 처음에 남성 56k 한 명만 쟀을 때는 12kHz 위가 −40dB로 나왔고, 이걸 근거로 "12~16kHz 안에 다 있다"고 판단했다. 결론 방향은 맞았지만, 가장 불리한 조건의 표본이었다.

용도별 판단

용도 권장 입력 지금 녹음 대비
인식·분석 16kHz 8kHz 위는 −34~−36dB라 영향 없음
합성·생성 24kHz 12kHz 위(−50dB)만 잘림
원본 보존 32kHz 16kHz 위(−70dB 이하)만 잘림, 사실상 전부 보존

주의: 용량을 줄이는 손잡이는 샘플레이트가 아니다

AAC·Opus는 목표 비트레이트로 인코딩하므로 48kHz를 24kHz로 낮춰도 파일은 거의 줄지 않는다. 보관 용량을 줄이려면 비트레이트를 낮춰 재인코딩한다(예: Opus 32kbps). 샘플레이트는 학습 로더에서 리샘플하면 된다. 손실 압축을 한 번 더 거치므로 합성용 표본은 원본을 따로 남긴다.

한계

  • 무음 구간을 포함한 RMS라, 조용한 구간의 잡음 영향이 조금 섞여 있다.
  • 녹음에 담긴 것만 봤다. 앱 송출 단계에서 이미 잘렸을 가능성은 확인하지 않았다.
  • 비트레이트가 85~98kbps인 4명은 56k 그룹에 넣었다.

관련 노트

참고