프로젝트 소개

LibrePods는 Apple 기기와 데이터를 교환하기 위해 AirPods가 사용하는 독점 프로토콜을 구현하여 AirPods를 Apple 생태계에서 해방시키는 것을 목표로 합니다. 이를 통해 비 Apple 플랫폼에서 청취/노이즈 제어 모드 변경, 빠른 착용 감지, 정확한 배터리 상태, 머리 동작, 대화 인식, 이름 변경, 자동 연결 및 다양한 접근성 설정과 같은 기능에 액세스할 수 있습니다. 플랫폼 지원은 Linux와 Android로 나뉘며, README에 기능 가용성 표가 있습니다. 두 플랫폼 모두 청취 모드 변경, 착용 감지, 배터리 상태, 이름 변경, 대화 인식 및 자동 연결에 대한 작동 지원을 나열합니다. Android는 추가로 머리 동작과 다양한 접근성 및 일반 구성 옵션(누르는 속도, 길게 누르기 지속 시간, 단일 AirPod 노이즈 캔슬링, 스와이프 볼륨 제어, 통화 제어, 개인 맞춤 볼륨, 마이크 측면 등)을 나열합니다. 여러 기능은 아직 구현되지 않았거나 계획된 것으로 표시되어 있습니다. 여기에는 큰 소리 감소, 보청기, 투명 모드 사용자 지정, 머리 추적 공간 오디오, 나의 찾기, 심박수 모니터링 및 고품질 양방향 오디오가 포함됩니다. 일부 항목은 VendorID 스푸핑(블루투스 DeviceID를 Apple 식별자로 설정)이 필요하며 위험 부담으로 표시되어 있습니다. 다른 항목은 Android에서 루트가 필요할 수 있습니다. 이 프로젝트는 리버스 엔지니어링 작업을 문서화하고 프로토콜 세부 정보를 위해 Wireshark 디섹터 플러그인(pabloaul/apple-wireshark)을 가리킵니다. 또한 AI가 사용된 위치를 공개합니다: Android 앱의 일부(머리 동작, Xposed 모듈을 사용한 오프셋 설정, 문제 해결사 및 로그 수집기)와 Rust 재작성 파일 aacp.rs, att.rs 및 media_controller.rs의 일부. 설치 지침은 Android와 Linux에 대해 별도로 제공됩니다. README는 다른 플랫폼을 위한 대안(CAPod for Android, MagicPods for Steam Deck and Windows)을 언급하고, 이 프로젝트가 Apple Inc.와 제휴하거나 보증하지 않는다는 상표 고지가 포함되어 있습니다. 코드는 GPL-3.0-or-later로 라이선스되며, LibrePods 이름과 로고 사용을 제한하는 별도의 상표 고지가 있습니다.