Hacker News하드웨어 · 시스템

이더넷 기반 오디오 인터페이스 eth68, 3.6ms 초저지연 달성

원제 ETH-68: Ethernet Audio Interface for Linux

100 포인트댓글 64
Key Point

전용 오디오 카드 수준의 초저지연(3.6ms)을 이더넷과 일반 하드웨어로 구현했으며, 오픈소스로 공개되어 리눅스 기반 음악 제작 워크플로우에서 비용 대비 성능의 새로운 기준을 제시한다.

핵심 요약

  • eth68은 STM32H7 마이크로컨트롤러 펌웨어로 구동되는 리눅스용 이더넷 오디오 인터페이스로, netJACK1 마스터 엔드포인트를 에뮬레이트한다.
  • JACK 서버를 netone 백엔드로 실행하거나 PipeWire의 pw-eth68 클라이언트로 직접 연결하여 사용할 수 있다.
  • 48kHz 64샘플 버퍼에서 3.620ms의 왕복 오디오 레이턴시를 달성하며, 96kHz에서 RME HDSPe AIO Pro PCIe 카드보다 0.33ms 낮다.
  • 여러 eth68 유닛을 네트워크로 동기화하여 채널 수를 확장할 수 있으며, eth68proxy 애플리케이션으로 여러 유닛의 데이터를 병합할 수 있다.
  • 동기화된 유닛들의 출력은 1마이크로초(48kHz에서 20분의 1 샘플) 이내로 정렬되며, 왕복 레이턴시는 단일 유닛과 동일하다.
  • LATMON 신호로 처리 레이턴시를 측정·디버깅할 수 있으며, 64샘플 버퍼 기준 전형적 처리 레이턴시는 625마이크로초로 데드라인의 50% 이상 여유가 있다.
  • 기본값으로 12.12.12.10:3000으로 캡처 패킷을 전송하며, eth68ctl.py 스크립트로 네트워크 및 샘플레이트 등 설정을 변경할 수 있다.
  • Intel I210 NIC를 사용하면 우수한 성능을 얻을 수 있으며, 인터럽트 코알레싱 타임아웃 조정으로 처리 레이턴시를 175마이크로초(데드라인의 13%) 추가 감소시킬 수 있다.
  • 입력 THD+N은 1kHz에서 -94.8dBFS(0.0018%), 루프백 측정 출력 THD+N은 입력의 0.5~1dBFS 이내다.
  • 입출력 결합 주파수 특성은 ±0.15dBFS 평탄성을 보이며, 동적 범위는 A-가중치 필터로 측정한 결과 제시된다.
  • JACK은 크로스플랫폼이며 macOS와 Windows에서도 eth68이 감지되지만, 대부분의 macOS·Windows 오디오 애플리케이션이 JACK을 지원하지 않는다.
  • Reaper는 리눅스에서만 JACK을 지원하고 macOS에서는 지원하지 않으며, JACK 프로젝트는 'JACK-Router' 가상 드라이버로 네이티브 오디오 인터페이스를 JACK에 브리징하는 방식을 추진 중이다.
AI 요약 안내

AI가 한국어로 정리한 내용입니다. 정확한 정보는 원문을 확인해 주세요.

요약 원칙 ↗