
AirPods libertados do ecossistema da Apple.
[!WARNING] librepods.org não é um site oficial do projeto LibrePods. Ele afirma inaccuratamente ser o site oficial do projeto, alegando direitos autorais e usando o logotipo do LibrePods no rodapé. Ao mesmo tempo, diz que o projeto não é afiliado ao projeto LibrePods ou seus desenvolvedores.
Por favor, denuncie quaisquer outros sites desse tipo para [email protected]
O LibrePods permite que você use funcionalidades dos AirPods que são exclusivas de dispositivos Apple. Ele implementa o protocolo proprietário usado para trocar dados entre AirPods e dispositivos Apple, possibilitando funcionalidades como alterar modos de controle de ruído, detecção rápida de ouvido, status preciso da bateria, gestos de cabeça, consciência conversacional e mais em plataformas não Apple.
| Símbolo | Significado |
|---|
As seguintes funcionalidades relacionadas ao Buscar estão planejadas, mas requerem mais engenharia reversa e podem precisar de root no Android:
O aplicativo atualmente não fornece informações de rastreamento de cabeça para o Android para que o SO realize HRTF. Isso não foi explorado completamente e pode precisar de root.
Espacializar som estéreo está além do escopo deste projeto e nunca estará disponível. Muitos OEMs têm sua própria implementação para isso.
Isso está sendo trabalhado, verifique o canal #reverse-engineering no servidor Discord do LibrePods para mais informações. Se um dia for implementado, provavelmente precisará de root no Android.
No iOS/iPadOS, você pode continuar usando A2DP enquanto os AirPods enviam o fluxo de áudio do microfone via AACP.
Como isso requer integração mais profunda com áudio no Android, provavelmente precisará de root.
Acontece que, se você alterar o VendorID no Perfil DID para o da Apple, obtém acesso a várias funcionalidades especiais!
Você pode fazer isso no Linux editando o DeviceID em /etc/bluetooth/main.conf. Adicione esta linha ao arquivo de configuração DeviceID = bluetooth:004C:0000:0000. No Android, você pode ativar a opção agir como dispositivo Apple nas configurações do aplicativo (mostrada apenas quando o Xposed está disponível e o módulo LibrePods está ativado).
Até dois dispositivos podem ser conectados simultaneamente aos AirPods, tanto para áudio quanto para controle. Troca perfeita de conexão. A mesma notificação aparece no dispositivo Apple quando o Android assume os AirPods como se fosse um dispositivo Apple ("Mover para iPhone"). O Android também exibe um pop-up quando o outro dispositivo assume.
Configurações de acessibilidade como personalizar o modo de transparência (amplificação, equilíbrio, tom, reforço de conversa e redução de ruído ambiente) e redução de sons altos podem ser configuradas.
Todas as personalizações do aparelho auditivo podem ser feitas no Android (Linux em breve), incluindo definir o resultado do audiograma. O aplicativo não fornece uma maneira de fazer um teste auditivo porque requer muito mais precisão. É muito melhor usar um resultado de audiograma já disponível.
Consulte o plugin de dissecção Wireshark por Nojus (@pabloaul) para mais informações sobre os protocolos usados: pabloaul/apple-wireshark
O dissecador não foi usado no LibrePods para a maior parte da implementação; eu mesmo fiz engenharia reversa do protocolo antes deste dissecador ser criado. Mas muitas funcionalidades (futuras), incluindo áudio bidirecional de alta qualidade e áudio espacial, não seriam possíveis sem os esforços de RE deles!
Essas partes do aplicativo foram completamente geradas por IA:
Todo o resto - o serviço em segundo plano, as classes do gerenciador Bluetooth (AACP e ATT), toda a interface do usuário, até os menores componentes foram escritos manualmente.
Algumas partes dos componentes da interface do usuário foram emprestadas do aplicativo de demonstração do Kyant0, que é licenciado sob a Apache License 2.0.
Os arquivos aacp.rs e att.rs foram traduzidos do Kotlin para Rust com IA. Algumas partes do arquivo media_controller.rs, principalmente a integração com pulse, também foram geradas por IA.
Um enorme obrigado a todos que apoiam o projeto!
LibrePods - AirPods libertados do ecossistema da Apple Copyright (C) 2025 Contribuidores do LibrePods
Este programa é software livre: você pode redistribuí-lo e/ou modificá-lo sob os termos da Licença Pública Geral GNU, conforme publicada pela Free Software Foundation, seja a versão 3 da Licença ou qualquer versão posterior.
Este programa é distribuído na esperança de que seja útil, mas SEM QUALQUER GARANTIA; sem mesmo a garantia implícita de COMERCIALIZAÇÃO ou ADEQUAÇÃO A UM DETERMINADO FIM. Veja a Licença Pública Geral GNU para mais detalhes.
Você deve ter recebido uma cópia da Licença Pública Geral GNU junto com este programa. Caso contrário, veja https://www.gnu.org/licenses/.
A GPL não concede quaisquer direitos de uso do nome, logotipo ou marca do LibrePods. O nome e o logotipo do LibrePods não podem ser usados para software, sites, domínios, produtos, serviços ou outros projetos de forma que sugira afiliação, endosso ou associação com o projeto oficial do LibrePods sem permissão prévia.
Se você vir algum uso indevido do nome ou logotipo do LibrePods, por favor, denuncie para [email protected].
A fonte SF Pro usada no aplicativo Android é propriedade da Apple Inc. Isso será removido em versões futuras do aplicativo e substituído por uma alternativa aberta em breve.
AirPods, AirPods Pro, AirPods Max e o logotipo AirPods são marcas registradas da Apple Inc. O projeto LibrePods não é afiliado ou endossado pela Apple Inc. de forma alguma.
| Funcionalidade | Linux | Android |
|---|
| Alterar modo de audição | ✅ | ✅ |
| Detecção de ouvido | ✅ | ✅ |
| Status da bateria | ✅ | ✅ |
Renomear AirPods Nota para AndroidNo Android, você precisa reemparelhar seus AirPods após renomeá-los, pois o Android pode não usar o nome mais recente. | ✅ | ✅ |
| Redução de sons altos | 🔴 | ⚪ |
| Gestos de cabeça | ⛔ | ✅ |
| Consciência conversacional | ✅ | ✅ |
| Conectar automaticamente aos AirPods | ✅ | ✅ |
| Aparelho auditivo | 🔴 | ⚪ |
| Personalização do modo de transparência | 🔴 | ⚪ |
| Conectividade multi-dispositivo (Bluetooth Multipoint; apenas 2 dispositivos) | ⚪ | ⚪ |
Outras configurações de acessibilidade (clique para expandir)
| 🔴 | ✅ |
Outras configurações gerais
| 🔴 | ✅ |
| Áudio espacial com rastreamento de cabeça | ❓ | ❓ |
| Monitoramento de frequência cardíaca | ⛔ | 🔴 |
| Buscar | ❓ | ❓ |
| Áudio bidirecional de alta qualidade | 🔴 | 🔴 |
| ✅ | Implementado e funciona bem |
| ⚪ | Precisa de spoofing de VendorID; use por sua conta e risco |
| 🔴 | Ainda não implementado; planejado |
| ⛔ | Não será implementado |
| ❓ | Desconhecido |
|
@davdroman |
@tedsalmon |
@wiless |
|
@SmartMsg |
@lunaroyster |
@ressiwage |
|
@kkjdroid |
@CitrusJoules |
@DanielReyesDev |
|
@sumitduster |
@GrifTheDev |