{"id":35145,"date":"2019-10-31T22:02:32","date_gmt":"2019-10-31T19:02:32","guid":{"rendered":"https:\/\/prohoster.info\/blog\/audio-cherez-bluetooth-maksimalno-podrobno-o-profilyah-kodekah-i-ustrojstvah\/"},"modified":"2019-10-31T22:02:32","modified_gmt":"2019-10-31T19:02:32","slug":"audio-cherez-bluetooth-maksimalno-podrobno-o-profilyah-kodekah-i-ustrojstvah","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/audio-cherez-bluetooth-maksimalno-podrobno-o-profilyah-kodekah-i-ustrojstvah","title":{"rendered":"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/48eced30a8d5e569e0c70ab4d60c5a9f.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDevido ao lan\u00e7amento em massa de smartphones sem conector de \u00e1udio de 3.5 mm, os fones de ouvido Bluetooth sem fio tornaram-se o principal meio de ouvir m\u00fasica e comunicar-se em modo de headset para muitos.<br \/>\nOs fabricantes de dispositivos sem fio nem sempre fornecem especifica\u00e7\u00f5es detalhadas dos produtos, e os artigos sobre \u00e1udio Bluetooth na internet s\u00e3o contradit\u00f3rios, em alguns casos incorretos, n\u00e3o abordam todas as caracter\u00edsticas e muitas vezes copiam as mesmas informa\u00e7\u00f5es que n\u00e3o correspondem \u00e0 realidade.<br \/>\nVamos tentar entender o protocolo, as capacidades das pilhas Bluetooth dos sistemas operacionais, dos fones de ouvido e alto-falantes, os codecs Bluetooth para m\u00fasica e fala, descobrir o que influencia na qualidade do som transmitido e na lat\u00eancia, e aprender a coletar e decodificar informa\u00e7\u00f5es sobre codecs suportados e outras capacidades dos dispositivos.<\/p>\n<p><b>TL;DR<\/b>: <\/p>\n<ul>\n<li>SBC \u2014 um codec padr\u00e3o<\/li>\n<li>Os fones de ouvido possuem seu pr\u00f3prio equalizador e p\u00f3s-processamento para cada codec separadamente<\/li>\n<li>aptX n\u00e3o \u00e9 t\u00e3o bom quanto afirmam os an\u00fancios publicit\u00e1rios<\/li>\n<li>LDAC \u2014 marketing enganoso<\/li>\n<li>A qualidade do som durante as chamadas ainda \u00e9 baixa<\/li>\n<li>\u00c9 poss\u00edvel embutir codificadores de \u00e1udio no navegador usando C, compilando para WebAssembly atrav\u00e9s do emscripten, e isso n\u00e3o causar\u00e1 grandes lentid\u00f5es.<\/li>\n<\/ul>\n<p>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h1>M\u00fasica via Bluetooth<\/h1>\n<p>O componente funcional do Bluetooth \u00e9 determinado pelos perfis \u2014 especifica\u00e7\u00f5es de fun\u00e7\u00f5es espec\u00edficas. A transmiss\u00e3o de m\u00fasica via Bluetooth utiliza o perfil de transmiss\u00e3o de \u00e1udio de alta qualidade A2DP. O padr\u00e3o A2DP foi adotado em 2003, e desde ent\u00e3o n\u00e3o sofreu mudan\u00e7as dr\u00e1sticas.<br \/>\nDentro do perfil, um codec obrigat\u00f3rio de baixa complexidade computacional, o SBC, criado especificamente para Bluetooth, \u00e9 padronizado, junto com 3 adicionais. O uso de codecs n\u00e3o documentados de implementa\u00e7\u00e3o pr\u00f3pria tamb\u00e9m \u00e9 permitido.<\/p>\n<p>Em junho de 2019, estamos <noindex><a rel=\"nofollow\" href=\"https:\/\/xkcd.com\/927\/\">na tirinha xkcd<\/a><\/noindex> com 14 codecs A2DP:<\/p>\n<ul>\n<li><b>SBC<\/b> \u2190 padronizado no A2DP, suportado por todos os dispositivos<\/li>\n<li><b>MPEG-1\/2 Layer 1\/2\/3<\/b> \u2190 padronizados no A2DP: o famoso <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/MP3\">MP3<\/a><\/noindex>, usado na TV digital <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/MPEG-1_Audio_Layer_II\">MP2<\/a><\/noindex>, e desconhecido <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/MPEG-1_Audio_Layer_I\">MP1<\/a><\/noindex><\/li>\n<li><b>MPEG-2\/4 AAC<\/b> \u2190 padronizado no A2DP<\/li>\n<li><b>ATRAC<\/b> \u2190 um codec antigo da Sony, padronizado no A2DP<\/li>\n<li><b>LDAC<\/b> \u2190 um novo codec da Sony<\/li>\n<li><b>aptX<\/b> \u2190 codec de 1988<\/li>\n<li><b>aptX HD<\/b> \u2190 o mesmo que aptX, mas com par\u00e2metros de codifica\u00e7\u00e3o diferentes<\/li>\n<li><b>aptX Low Latency<\/b> \u2190 um codec totalmente diferente, sem implementa\u00e7\u00e3o de software<\/li>\n<li><b>aptX Adaptive<\/b> \u2190 mais um codec da Qualcomm<\/li>\n<li><b>FastStream<\/b> \u2190 um pseudo-codec, uma modifica\u00e7\u00e3o bidirecional do SBC<\/li>\n<li><b>HWA LHDC<\/b> \u2190 novo codec da Huawei<\/li>\n<li><b>Samsung HD<\/b> \u2190 suportado por 2 dispositivos<\/li>\n<li><b>Samsung Scalable<\/b> \u2190 suportado por 2 dispositivos<\/li>\n<li><b>Samsung UHQ-BT<\/b> \u2190 suportado por 3 dispositivos<\/li>\n<\/ul>\n<p>Voc\u00ea pode se perguntar por que precisamos de codecs, quando o Bluetooth j\u00e1 possui EDR, que permite a transmiss\u00e3o de dados a velocidades de 2 e 3 Mbps, e para PCM n\u00e3o comprimido de dois canais de 16 bits, basta 1,4 Mbps?<\/p>\n<p><\/p>\n<h1>Transmiss\u00e3o de dados via Bluetooth<\/h1>\n<p>Existem dois tipos de transmiss\u00e3o de dados no Bluetooth: Asynchronous Connection Less (ACL) para transmiss\u00e3o ass\u00edncrona sem estabelecimento de conex\u00e3o, e Synchronous Connection Oriented (SCO), para transmiss\u00e3o s\u00edncrona com acordo pr\u00e9vio de conex\u00e3o.<br \/>\nA transmiss\u00e3o ocorre utilizando um esquema de divis\u00e3o de tempo e sele\u00e7\u00e3o de canal para cada pacote individualmente (Frequency-Hop\/Time-Division-Duplex, FH\/TDD), onde o tempo \u00e9 dividido em intervalos de 625 microssegundos, chamados de slots. Um dos dispositivos transmite em n\u00fameros de slots pares, enquanto o outro o faz em \u00edmpares. O pacote enviado pode ocupar 1, 3 ou 5 slots, dependendo do tamanho dos dados e do tipo de transmiss\u00e3o estabelecido; nesse caso, a transmiss\u00e3o de um dispositivo \u00e9 realizada em slots pares e \u00edmpares at\u00e9 o fim da transmiss\u00e3o. No total, podem ser recebidos e enviados at\u00e9 1600 pacotes por segundo, se cada um ocupa 1 slot, e ambos os dispositivos transmitem e recebem sem parar.<\/p>\n<p>As velocidades de 2 e 3 Mbps para EDR, que podem ser encontradas em an\u00fancios e no site do Bluetooth, s\u00e3o a velocidade m\u00e1xima de canal para transmiss\u00e3o de todos os dados em totalidade (incluindo os cabe\u00e7alhos t\u00e9cnicos de todos os protocolos dos quais os dados precisam ser encapsulados), em ambas as dire\u00e7\u00f5es simultaneamente. A velocidade real de transmiss\u00e3o de dados ser\u00e1 bastante diferente.<\/p>\n<p>Para a transmiss\u00e3o de m\u00fasica, utiliza-se o m\u00e9todo ass\u00edncrono, quase sempre com pacotes do tipo 2-DH5 e 3-DH5, que transportam a maior quantidade de dados em modo EDR a 2 Mbps e 3 Mbps, respectivamente, e ocupam 5 slots de divis\u00e3o de tempo do espectro.<\/p>\n<p>Representa\u00e7\u00e3o esquem\u00e1tica da transmiss\u00e3o usando 5 slots por um dispositivo e 1 slot pelo outro (DH5\/DH1):<br \/>\n<img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/e5875cb59648c349a63c8e7196e9afbf.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nDevido ao princ\u00edpio de separa\u00e7\u00e3o do espectro por tempo, somos obrigados a aguardar um slot de 625 microsegundos ap\u00f3s a transmiss\u00e3o de um pacote, se o segundo dispositivo n\u00e3o estiver transmitindo nada ou enviando um pacote pequeno, e um per\u00edodo de tempo maior se o segundo dispositivo estiver transmitindo pacotes grandes. Se mais de um dispositivo estiver conectado ao telefone (por exemplo, fones de ouvido, rel\u00f3gios e pulseiras de fitness), o tempo de transmiss\u00e3o \u00e9 dividido entre todos eles.<\/p>\n<p>A necessidade de encapsular \u00e1udio em protocolos de transporte L2CAP e AVDTP consome 16 bytes do m\u00e1ximo te\u00f3rico de carga \u00fatil de \u00e1udio que pode ser transmitida.<\/p>\n<p>Tipo de pacote<br \/>\nQuantidade de slots<br \/>\nM\u00e1x. quantidade de bytes por pacote<br \/>\nM\u00e1x. quantidade de bytes de carga \u00fatil A2DP<br \/>\nM\u00e1x. taxa de bits de carga \u00fatil A2DP<\/p>\n<p>2-DH3<br \/>\n3<br \/>\n367<br \/>\n351<br \/>\n936 kbit\/s<\/p>\n<p>3-DH3<br \/>\n3<br \/>\n552<br \/>\n536<br \/>\n1429 kbit\/s<\/p>\n<p>2-DH5<br \/>\n5<br \/>\n679<br \/>\n663<br \/>\n1414 kbit\/s<\/p>\n<p>3-DH5<br \/>\n5<br \/>\n1021<br \/>\n1005<br \/>\n2143 kbit\/s<\/p>\n<p>1414 e 1429 kbit\/s s\u00e3o definitivamente insuficientes para transmitir \u00e1udio n\u00e3o compactado em condi\u00e7\u00f5es reais, com a faixa ruidosa de 2.4 GHz e a necessidade de transmitir dados auxiliares. EDR 3 mbit\/s \u00e9 exigente em termos de pot\u00eancia de transmiss\u00e3o e ru\u00eddos no ar, portanto, mesmo no modo 3-DH5, a transmiss\u00e3o confort\u00e1vel de PCM \u00e9 imposs\u00edvel, haver\u00e1 interrup\u00e7\u00f5es curtas e tudo funcionar\u00e1 apenas a uma dist\u00e2ncia de alguns metros.<br \/>\nNa pr\u00e1tica, at\u00e9 mesmo um fluxo de \u00e1udio de 990 kbit\/s (LDAC 990 kbit\/s) \u00e9 transmitido com dificuldade.<\/p>\n<p>Voltando aos codecs.<\/p>\n<h2>SBC<\/h2>\n<p>Codec obrigat\u00f3rio para todos os dispositivos que suportam o padr\u00e3o A2DP. O melhor e o pior codec ao mesmo tempo.<\/p>\n<p>Frequ\u00eancia de amostragem<br \/>\nResolu\u00e7\u00e3o<br \/>\nTaxa de bits<br \/>\nSuporte \u00e0 codifica\u00e7\u00e3o<br \/>\nSuporte \u00e0 decodifica\u00e7\u00e3o<\/p>\n<p>16, 32, 44.1, 48 kHz<br \/>\n16 bits<br \/>\n10-1500 kbit\/s<br \/>\nPor todos os dispositivos<br \/>\nPor todos os dispositivos<\/p>\n<p>SBC \u00e9 um codec simples e computacionalmente r\u00e1pido, com um modelo psicoac\u00fastico primitivo (apenas m\u00e1scara de sons suaves), usando modula\u00e7\u00e3o por impulso adaptativa (APCM).<br \/>\nA especifica\u00e7\u00e3o A2DP recomenda o uso de dois perfis: Qualidade M\u00e9dia e Alta Qualidade.<br \/>\n<img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/8939e552a23374228289a9686f4d1048.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nO codec possui muitas configura\u00e7\u00f5es que permitem controlar a lat\u00eancia algor\u00edtmica, o n\u00famero de amostras por bloco, o algoritmo de distribui\u00e7\u00e3o de bits, mas em quase todos os lugares s\u00e3o usados os mesmos par\u00e2metros recomendados na especifica\u00e7\u00e3o: Joint Stereo, 8 faixas de frequ\u00eancia, 16 blocos em um quadro de \u00e1udio, m\u00e9todo de distribui\u00e7\u00e3o de bits Loudness.<br \/>\nO SBC suporta a altera\u00e7\u00e3o din\u00e2mica do par\u00e2metro Bitpool, que impacta diretamente a taxa de bits. Se a transmiss\u00e3o de r\u00e1dio estiver congestionada, pacotes podem ser perdidos ou os dispositivos estiverem a uma grande dist\u00e2ncia, a fonte de \u00e1udio pode reduzir o Bitpool at\u00e9 que a conex\u00e3o se normalize.<\/p>\n<p>Os fabricantes da maioria dos fones de ouvido definem o valor m\u00e1ximo do par\u00e2metro Bitpool em 53, o que limita a taxa de bits a 328 kilobits por segundo ao usar o perfil recomendado.<br \/>\nMesmo que o fabricante de fones de ouvido tenha definido um valor m\u00e1ximo de Bitpool superior a 53 (modelos como Beats Solo\u00b3, JBL Everest Elite 750NC, Apple AirPods, al\u00e9m de alguns receptores e unidades centrais de autom\u00f3veis), a maioria dos sistemas operacionais n\u00e3o permitir\u00e1 o uso de taxas de bits elevadas devido a uma limita\u00e7\u00e3o interna nos stacks de Bluetooth.<br \/>\nAl\u00e9m disso, alguns fabricantes definem um valor m\u00e1ximo baixo de Bitpool para certos dispositivos. Por exemplo, para o Bluedio T, \u00e9 igual a 39, e para o Samsung Gear IconX, \u00e9 37, o que resulta em qualidade de som ruim.<\/p>\n<p>Restri\u00e7\u00f5es artificiais impostas pelos desenvolvedores dos stacks de Bluetooth provavelmente surgiram devido \u00e0 incompatibilidade de alguns dispositivos com altos valores de Bitpool ou perfis n\u00e3o convencionais, mesmo que tenham informado suporte, e ao n\u00famero insuficiente de testes durante a certifica\u00e7\u00e3o. Para os autores dos stacks de Bluetooth, era mais f\u00e1cil limitar-se ao consenso do perfil recomendado do que criar uma base de dados de dispositivos problem\u00e1ticos (embora agora isso esteja sendo feito para outras fun\u00e7\u00f5es que n\u00e3o funcionam corretamente).<\/p>\n<p>O SBC aloca dinamicamente bits de quantiza\u00e7\u00e3o para bandas de frequ\u00eancia, agindo de baixo para cima, com diferentes coeficientes de peso. Se toda a taxa de bits for usada nas frequ\u00eancias baixas e m\u00e9dias, as frequ\u00eancias altas ser\u00e3o \"cortadas\" (em vez delas, haver\u00e1 sil\u00eancio).<\/p>\n<p>Exemplo SBC 328 kbit\/s. No topo \u2014 o original, na parte inferior \u2014 SBC, com altern\u00e2ncia peri\u00f3dica entre as faixas. Para \u00e1udio em um arquivo de v\u00eddeo, \u00e9 utilizado o codec de compress\u00e3o sem perdas FLAC. O uso de FLAC em um cont\u00eainer mp4 n\u00e3o \u00e9 oficialmente padronizado, portanto, n\u00e3o \u00e9 garantido que seu navegador consiga reproduzi-lo, mas deve funcionar nas \u00faltimas vers\u00f5es do Chrome e Firefox para desktop. Se voc\u00ea n\u00e3o tiver som, pode baixar o arquivo e abri-lo em um reprodutor de v\u00eddeo completo.<br \/>\n<video controls style=\"top: 0; left: 0; width: 100%; height: 100%; position: absolute;\">Seu navegador n\u00e3o suporta v\u00eddeo HTML5.<source src=\"https:\/\/files.catbox.moe\/8yrssu.mp4\" type=\"video\/mp4\"><\/source><\/video><i>ZZ Top \u2014 Sharp Dressed Man<\/i><\/p>\n<p>No espectro, podemos ver o momento da mudan\u00e7a: o SBC corta periodicamente os sons suaves acima de 17,5 kHz e n\u00e3o destaca bits para a faixa acima de 20 kHz. O espectro completo est\u00e1 dispon\u00edvel para clique (1,7 MB).<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/qj\/i7\/4w\/qji74wrphaigw3qtza6nepvur50.png\"><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/c59aa3f6eff4c4d966a4c96868dd7e00.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>N\u00e3o ou\u00e7o diferen\u00e7a entre o original e o SBC nessa faixa.<\/p>\n<p>Vamos pegar algo mais recente e simular o \u00e1udio que resultaria do uso dos fones Samsung Gear IconX com Bitpool 37 (na parte superior est\u00e1 o sinal original, na parte inferior o SBC a 239 kbps, som em FLAC).<br \/>\n<video controls style=\"top: 0; left: 0; width: 100%; height: 100%; position: absolute;\">Seu navegador n\u00e3o suporta v\u00eddeo HTML5.<source src=\"https:\/\/files.catbox.moe\/r561g5.mp4\" type=\"video\/mp4\"><\/source><\/video><i>Mindless Self Indulgence \u2014 Witness<\/i><\/p>\n<p>Ou\u00e7o estalos, efeito est\u00e9reo reduzido e um desagrad\u00e1vel 'clique' na vocaliza\u00e7\u00e3o nas altas frequ\u00eancias.<\/p>\n<p>Embora o SBC seja um codec bastante flex\u00edvel, que pode ser ajustado para baixa lat\u00eancia, ele oferece excelente qualidade de \u00e1udio em altas taxas de bits (452+ kbps) e \u00e9 razoavelmente bom para a maioria das pessoas em qualidade alta padr\u00e3o (328 kbps). Como o padr\u00e3o A2DP n\u00e3o define perfis fixos (apenas recomenda\u00e7\u00f5es), os desenvolvedores de stacks impuseram limita\u00e7\u00f5es artificiais ao Bitpool, os par\u00e2metros de \u00e1udio transmitidos n\u00e3o aparecem na interface do usu\u00e1rio, e os fabricantes de fones de ouvido s\u00e3o livres para definir suas pr\u00f3prias configura\u00e7\u00f5es sem nunca indicar o valor do Bitpool nas especifica\u00e7\u00f5es do produto. O codec ganhou notoriedade pela baixa qualidade de som, embora isso n\u00e3o seja um problema do codec em si.<br \/>\nO par\u00e2metro Bitpool afeta diretamente a taxa de bits apenas dentro de um perfil. O mesmo valor de Bitpool 53 pode fornecer tanto uma taxa de 328 kbps no perfil recomendado de alta qualidade, quanto 1212 kbps com canal duplo e 4 faixas de frequ\u00eancia. Por isso, os autores dos sistemas operacionais, al\u00e9m das limita\u00e7\u00f5es no Bitpool, imp\u00f5em tamb\u00e9m um limite na taxa de bits. Eu vejo que essa situa\u00e7\u00e3o surgiu devido a uma falha no padr\u00e3o A2DP: deveria ter sido acordada uma taxa de bits, e n\u00e3o um Bitpool.<\/p>\n<p>Tabela de suporte das capacidades SBC em diferentes sistemas operacionais:<\/p>\n<p>sistemas operacionais<br \/>\nTaxas de amostragem suportadas<br \/>\nLimite m\u00e1ximo de Bitpool<br \/>\nLimite m\u00e1ximo de Bitrate<br \/>\nBitrate t\u00edpico<br \/>\nAjuste din\u00e2mico de Bitpool<\/p>\n<p><b>Windows 10<\/b><br \/>\n44,1 kHz<br \/>\n53<br \/>\n512 kbps<br \/>\n328 kbps<br \/>\n\u2713*<\/p>\n<p><b>Linux (BlueZ + PulseAudio)<\/b><br \/>\n16, 32, 44.1, 48 kHz<br \/>\n64 (em conex\u00e3o recebida), 53 (em conex\u00e3o enviada)<br \/>\nSem limites<br \/>\n328 kbps<br \/>\n\u2713*<\/p>\n<p><b>macOS High Sierra<\/b><br \/>\n44,1 kHz<br \/>\n64, por padr\u00e3o 53***<br \/>\nDesconhecido<br \/>\n328 kbps<br \/>\n\u2717<\/p>\n<p><b>Android 4.4-9<\/b><br \/>\n44,1\/48 kHz**<br \/>\n53<br \/>\n328 kbps<br \/>\n328 kbps<br \/>\n\u2717<\/p>\n<p><b>Android 4.1-4.3.1<\/b><br \/>\n44,1, 48 kHz**<br \/>\n53<br \/>\n229 kbps<br \/>\n229 kbps<br \/>\n\u2717<\/p>\n<p><b>Blackberry OS 10<\/b><br \/>\n48 kHz<br \/>\n53<br \/>\nSem limites<br \/>\n328 kbps<br \/>\n\u2717<\/p>\n<p><i><b>*<\/b> O Bitpool apenas diminui, mas n\u00e3o aumenta automaticamente, em caso de melhoria nas condi\u00e7\u00f5es de transmiss\u00e3o. Para restaurar o Bitpool, \u00e9 necess\u00e1rio parar a reprodu\u00e7\u00e3o, esperar alguns segundos e reiniciar o \u00e1udio.<br \/>\n<b>**<\/b> O valor padr\u00e3o depende das configura\u00e7\u00f5es da pilha especificadas durante a compila\u00e7\u00e3o do firmware. No Android 8\/8.1, a frequ\u00eancia \u00e9 apenas 44.1 kHz ou 48 kHz, dependendo das configura\u00e7\u00f5es na compila\u00e7\u00e3o; nas vers\u00f5es restantes, 44.1 kHz e 48 kHz s\u00e3o suportadas simultaneamente.<br \/>\n<b>***<\/b> O valor do Bitpool pode ser elevado no programa Bluetooth Explorer.<\/i><\/p>\n<h2>aptX e aptX HD<\/h2>\n<p>aptX \u00e9 um codec simples e computacionalmente r\u00e1pido, sem psicoac\u00fastica, que utiliza modula\u00e7\u00e3o por pulsos codificados diferenciais adaptativos (<noindex><a rel=\"nofollow\" href=\"https:\/\/ru.wikipedia.org\/wiki\/%D0%90%D0%B4%D0%B0%D0%BF%D1%82%D0%B8%D0%B2%D0%BD%D0%B0%D1%8F_%D0%B4%D0%B8%D1%84%D1%84%D0%B5%D1%80%D0%B5%D0%BD%D1%86%D0%B8%D0%B0%D0%BB%D1%8C%D0%BD%D0%B0%D1%8F_%D0%B8%D0%BC%D0%BF%D1%83%D0%BB%D1%8C%D1%81%D0%BD%D0%BE-%D0%BA%D0%BE%D0%B4%D0%BE%D0%B2%D0%B0%D1%8F_%D0%BC%D0%BE%D0%B4%D1%83%D0%BB%D1%8F%D1%86%D0%B8%D1%8F\">ADPCM<\/a><\/noindex>). Surgiu por volta de 1988 (data de apresenta\u00e7\u00e3o <noindex><a rel=\"nofollow\" href=\"https:\/\/patents.google.com\/patent\/EP0398973B1\/en\">da patente<\/a><\/noindex> datada de fevereiro de 1988), e antes do Bluetooth era amplamente utilizado em equipamentos profissionais de \u00e1udio sem fio. Atualmente, pertence \u00e0 Qualcomm, requer licenciamento e royalties. Em 2014: $6000 de pagamento \u00fanico e aproximadamente $1 por dispositivo, para lotes de at\u00e9 10000 dispositivos (<noindex><a rel=\"nofollow\" href=\"https:\/\/www.silabs.com\/documents\/login\/presentations\/Developing-Bluetooth-Audio.pdf\">fonte<\/a><\/noindex>, p. 16).<br \/>\naptX e aptX HD s\u00e3o o mesmo codec, com diferentes perfis de codifica\u00e7\u00e3o.<\/p>\n<p>O codec possui apenas um par\u00e2metro \u2014 a escolha da frequ\u00eancia de amostragem. Tamb\u00e9m existe a escolha do n\u00famero\/modo de canais, mas em todos os dispositivos que conhe\u00e7o (mais de 70) \u00e9 suportado exclusivamente Stereo.<\/p>\n<p>Codec<br \/>\nFrequ\u00eancia de amostragem<br \/>\nResolu\u00e7\u00e3o<br \/>\nTaxa de bits<br \/>\nSuporte \u00e0 codifica\u00e7\u00e3o<br \/>\nSuporte \u00e0 decodifica\u00e7\u00e3o<\/p>\n<p><b>aptX<\/b><br \/>\n16, 32, 44.1, 48 kHz<br \/>\n16 bits<br \/>\n128 \/ 256 \/ 352 \/ 384 kbps (dependendo da frequ\u00eancia de amostragem)<br \/>\nWindows 10 (desktop e m\u00f3vel), macOS, Android 4.4+\/7*, Blackberry OS 10<br \/>\nUm amplo n\u00famero de dispositivos de \u00e1udio (hardware)<\/p>\n<p><i><b>*<\/b> Vers\u00f5es anteriores a 7 requerem modifica\u00e7\u00e3o da pilha Bluetooth. O codec \u00e9 suportado apenas se o fabricante do dispositivo Android licenciou o uso do codec com a Qualcomm (se o sistema operacional tiver bibliotecas de codifica\u00e7\u00e3o).<\/i><\/p>\n<p>aptX divide o \u00e1udio em 4 faixas de frequ\u00eancia e quantiza-as com a mesma quantidade de bits de forma constante: 8 bits para 0-5.5 kHz, 4 bits para 5.5-11 kHz, 2 bits para 11-16.5 kHz, 2 bits para 16.5-22 kHz (n\u00fameros para frequ\u00eancia de amostragem de 44.1 kHz).<\/p>\n<p>Exemplo de \u00e1udio aptX (acima \u2014 sinal original, abaixo \u2014 aptX, espectrogramas apenas dos canais esquerdo, som em FLAC):<br \/>\n<video controls style=\"top: 0; left: 0; width: 100%; height: 100%; position: absolute;\">Seu navegador n\u00e3o suporta v\u00eddeo HTML5.<source src=\"https:\/\/files.catbox.moe\/06eohy.mp4\" type=\"video\/mp4\"><\/source><\/video><br \/>\nAs frequ\u00eancias mais altas ficaram um pouco mais quentes, mas a diferen\u00e7a n\u00e3o \u00e9 aud\u00edvel.<\/p>\n<p>Devido \u00e0 distribui\u00e7\u00e3o fixa dos bits de quantiza\u00e7\u00e3o, o codec n\u00e3o pode \"transferir bits\" para as frequ\u00eancias que mais precisam deles. Ao contr\u00e1rio do SBC, o aptX n\u00e3o \"cortar\u00e1\" frequ\u00eancias, mas adicionar\u00e1 ru\u00eddos de quantiza\u00e7\u00e3o, reduzindo a faixa din\u00e2mica do \u00e1udio.<\/p>\n<p>N\u00e3o se deve pensar que usar, por exemplo, 2 bits para uma faixa reduz a faixa din\u00e2mica para 12 dB: o ADPCM permite usar at\u00e9 96 dB de faixa din\u00e2mica mesmo utilizando 2 bits de quantiza\u00e7\u00e3o, mas apenas com um determinado sinal.<br \/>\nO ADPCM armazena a diferen\u00e7a da representa\u00e7\u00e3o num\u00e9rica entre a amostra atual e a pr\u00f3xima, ao inv\u00e9s de gravar o valor absoluto, como no PCM. Isso permite reduzir as exig\u00eancias em n\u00famero de bits necess\u00e1rios para armazenar a mesma (sem perdas) ou praticamente a mesma (com um erro de arredondamento relativamente pequeno) informa\u00e7\u00e3o. Para diminuir erros de arredondamento, tabelas de coeficientes s\u00e3o utilizadas.<br \/>\nNa cria\u00e7\u00e3o do codec, os autores calcularam os coeficientes do ADPCM com base em um conjunto de arquivos de \u00e1udio musical. Quanto mais pr\u00f3ximo o sinal de \u00e1udio estiver daquele conjunto de m\u00fasicas em que as tabelas foram constru\u00eddas, menos erros de quantiza\u00e7\u00e3o (ru\u00eddos) o aptX cria.<\/p>\n<p>Por causa disso, testes sint\u00e9ticos sempre apresentar\u00e3o resultados piores do que a m\u00fasica. Eu fiz um exemplo sint\u00e9tico especial, onde o aptX mostra resultados ruins \u2014 uma senoide com frequ\u00eancia de 12.4 kHz (acima \u2014 o sinal original, abaixo \u2014 aptX. Som em FLAC. Diminua o volume!):<br \/>\n<video controls style=\"top: 0; left: 0; width: 100%; height: 100%; position: absolute;\">Seu navegador n\u00e3o suporta v\u00eddeo HTML5.<source src=\"https:\/\/files.catbox.moe\/kterhd.mp4\" type=\"video\/mp4\"><\/source><\/video><br \/>\nGr\u00e1fico de espectro:<br \/>\n<img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/94ecbf4a6f93b6ca85ca997e2be453ad.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nOs ru\u00eddos s\u00e3o claramente aud\u00edveis.<\/p>\n<p>Entretanto, se gerar uma senoide com menor amplitude, para que fique mais silenciosa, os ru\u00eddos tamb\u00e9m ficar\u00e3o mais baixos, o que indica uma ampla faixa din\u00e2mica:<\/p>\n<p><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/64d0a3f41c152f5f4d01230722fc197a.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nPara ouvir a diferen\u00e7a entre a faixa musical original e a comprimida, pode-se inverter um dos sinais e somar as faixas canal a canal. Essa abordagem, de modo geral, n\u00e3o \u00e9 correta e n\u00e3o resultaria em um resultado vi\u00e1vel com codecs mais complexos, mas especificamente para o ADPCM, \u00e9 bastante adequada.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/files.catbox.moe\/leq24q.flac\">Diferen\u00e7a entre o original e o aptX<\/a><\/noindex><br \/>\nA m\u00e9dia quadr\u00e1tica da diferen\u00e7a dos sinais est\u00e1 em -37.4 dB, o que n\u00e3o \u00e9 muito para uma m\u00fasica t\u00e3o comprimida.<\/p>\n<h3>aptX HD<\/h3>\n<p>aptX HD n\u00e3o \u00e9 um codec independente \u2014 \u00e9 um perfil de codifica\u00e7\u00e3o melhorado do codec aptX. As altera\u00e7\u00f5es afetaram a quantidade de bits alocados para a codifica\u00e7\u00e3o das faixas de frequ\u00eancia: 10 bits para 0-5,5 kHz, 6 bits para 5,5-11 kHz, 4 bits para 11-16,5 kHz, 4 bits para 16,5-22 kHz (n\u00fameros para 44,1 kHz).<\/p>\n<p>Codec<br \/>\nFrequ\u00eancia de amostragem<br \/>\nResolu\u00e7\u00e3o<br \/>\nTaxa de bits<br \/>\nSuporte \u00e0 codifica\u00e7\u00e3o<br \/>\nSuporte \u00e0 decodifica\u00e7\u00e3o<\/p>\n<p><b>aptX HD<\/b><br \/>\n16, 32, 44.1, 48 kHz<br \/>\n24 bits<br \/>\n192 \/ 384 \/ 529 \/ 576 kbps (dependendo da taxa de amostragem)<br \/>\nAndroid 8+*<br \/>\nPor alguns dispositivos de \u00e1udio (hardwares)<\/p>\n<p><i><b>*<\/b> Vers\u00f5es anteriores a 7 requerem modifica\u00e7\u00e3o da pilha Bluetooth. O codec \u00e9 suportado apenas se o fabricante do dispositivo Android licenciou o uso do codec com a Qualcomm (se o sistema operacional tiver bibliotecas de codifica\u00e7\u00e3o).<\/i><\/p>\n<p>Menos comum do que aptX: aparentemente exige licenciamento separado da Qualcomm e taxas de licen\u00e7a individuais.<\/p>\n<p>Repetindo o exemplo com um senoide a 12,4 kHz:<br \/>\n<img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/fe4f8d91dcbc39af881129a9c78ca453.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nMuito melhor do que com aptX, mas ainda assim barulhento.<\/p>\n<h2>aptX Low Latency<\/h2>\n<p>Codec da Qualcomm, que n\u00e3o tem rela\u00e7\u00e3o com os padr\u00f5es aptX e aptX HD, de acordo com as informa\u00e7\u00f5es escassas de pessoas envolvidas em seu desenvolvimento. Destina-se \u00e0 transmiss\u00e3o interativa de \u00e1udio com baixa lat\u00eancia (filmes, jogos), onde a lat\u00eancia do som n\u00e3o pode ser ajustada programaticamente. Implementa\u00e7\u00f5es conhecidas de software para codificadores e decodificadores est\u00e3o ausentes, suportado exclusivamente por transmissores, receptores, fones de ouvido e alto-falantes, mas n\u00e3o por smartphones e computadores.<\/p>\n<p>Frequ\u00eancia de amostragem<br \/>\nTaxa de bits<br \/>\nSuporte \u00e0 codifica\u00e7\u00e3o<br \/>\nSuporte \u00e0 decodifica\u00e7\u00e3o<\/p>\n<p>44,1 kHz<br \/>\n276\/420 kbps<br \/>\nPor alguns transmissores (hardwares)<br \/>\nPor alguns dispositivos de \u00e1udio (hardwares)<\/p>\n<h2>AAC<\/h2>\n<p>AAC, ou Advanced Audio Coding \u2014 \u00e9 um codec computacionalmente complexo, com um modelo psicoac\u00fastico robusto. Tornou-se amplamente utilizado para \u00e1udio na internet, sendo o segundo mais popular ap\u00f3s o MP3. Exige licenciamento e taxas de licen\u00e7a: $15000 uma \u00fanica vez (ou $1000 para empresas com menos de 15 funcion\u00e1rios) + $0,98 pelos primeiros 500000 dispositivos (<noindex><a rel=\"nofollow\" href=\"http:\/\/www.via-corp.com\/us\/en\/licensing\/aac\/licensefees.html\">fonte<\/a><\/noindex>).<br \/>\nO codec est\u00e1 padronizado dentro das especifica\u00e7\u00f5es MPEG-2 e MPEG-4, e ao contr\u00e1rio da cren\u00e7a comum, n\u00e3o pertence \u00e0 Apple.<\/p>\n<p>Frequ\u00eancia de amostragem<br \/>\nTaxa de bits<br \/>\nSuporte \u00e0 codifica\u00e7\u00e3o<br \/>\nSuporte \u00e0 decodifica\u00e7\u00e3o<\/p>\n<p>8 \u2014 96 kHz<br \/>\n8 \u2014 576 kbps (para est\u00e9reo), 256 \u2014 320 kbps (t\u00edpico para Bluetooth)<br \/>\nmacOS, Android 7+*, iOS<br \/>\nUm amplo n\u00famero de dispositivos de \u00e1udio (hardware)<\/p>\n<p><i><b>*<\/b> apenas em dispositivos cujos fabricantes pagaram as taxas de licen\u00e7a<\/i><\/p>\n<p>No iOS e macOS, a melhor codifica\u00e7\u00e3o atualmente \u00e9 realizada pelo codificador Apple AAC, que fornece a melhor qualidade de \u00e1udio poss\u00edvel. No Android, utiliza-se um codificador de qualidade inferior, o Fraunhofer FDK AAC, mas diferentes implementa\u00e7\u00f5es de hardware integradas na plataforma (SoC) podem ser usadas, com qualidade de codifica\u00e7\u00e3o desconhecida. <noindex><a rel=\"nofollow\" href=\"https:\/\/www.soundguys.com\/the-ultimate-guide-to-bluetooth-headphones-aac-20296\/\">De acordo com testes recentes do site SoundGuys<\/a><\/noindex>, a qualidade da codifica\u00e7\u00e3o AAC em diferentes telefones Android varia significativamente:<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/www.soundguys.com\/wp-content\/uploads\/2018\/10\/aac-enhanced-view-fr-1200x788.jpg\"><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/7ae72554564f215dc765272065f5c97c.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>A maioria dos dispositivos de \u00e1udio sem fio para AAC tem uma taxa de bits m\u00e1xima de 320 kbps, alguns suportam apenas 256 kbps. Outras taxas de bits s\u00e3o extremamente raras.<br \/>\nAAC oferece excelente qualidade em taxas de bits de 320 e 256 kbps, mas \u00e9 suscet\u00edvel <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Generation_loss\">a perdas de codifica\u00e7\u00e3o sequencial de conte\u00fado j\u00e1 comprimido.<\/a><\/noindex>, no entanto, \u00e9 dif\u00edcil ouvir qualquer diferen\u00e7a em compara\u00e7\u00e3o com o original no iOS a uma taxa de 256 kbps, mesmo ap\u00f3s v\u00e1rias codifica\u00e7\u00f5es sequenciais; em uma \u00fanica codifica\u00e7\u00e3o, por exemplo, de MP3 320 kbps para AAC 256 kbps, as perdas podem ser ignoradas.<br \/>\nAssim como acontece com outros codecs Bluetooth, qualquer m\u00fasica \u00e9 primeiro decodificada e, em seguida, codificada pelo codec. Ao ouvir m\u00fasica em formato AAC, ela \u00e9 primeiro decodificada pelos recursos do sistema operacional, e depois codificada em AAC novamente, para transmiss\u00e3o via Bluetooth. Isso \u00e9 necess\u00e1rio para misturar v\u00e1rios fluxos de \u00e1udio, como m\u00fasica e notifica\u00e7\u00f5es de novas mensagens. O iOS n\u00e3o \u00e9 exce\u00e7\u00e3o. H\u00e1 muitas alega\u00e7\u00f5es na internet de que a m\u00fasica em formato AAC n\u00e3o \u00e9 transcodificada no iOS durante a transmiss\u00e3o via Bluetooth, o que \u00e9 falso.<\/p>\n<p><\/p>\n<h2>MP1\/2\/3<\/h2>\n<p>Os codecs da fam\u00edlia MPEG-1\/2 Parte 3 consistem no conhecido e amplamente utilizado MP3, no menos comum MP2 (usado principalmente em TV digital e r\u00e1dio) e no totalmente desconhecido MP1.<\/p>\n<p>Os antigos codecs MP1 e MP2 n\u00e3o s\u00e3o mais suportados: n\u00e3o consegui encontrar nenhum fone de ouvido ou pilha Bluetooth que os codificasse ou decodificasse.<br \/>\nA decodifica\u00e7\u00e3o de MP3 \u00e9 suportada por alguns fones de ouvido, mas a codifica\u00e7\u00e3o n\u00e3o \u00e9 suportada por nenhuma pilha dos sistemas operacionais modernos. Por exemplo, a pilha de terceiros BlueSoleil para Windows pode codificar em MP3 se o arquivo de configura\u00e7\u00e3o for alterado manualmente, mas a instala\u00e7\u00e3o dela leva a um BSoD no Windows 10. A conclus\u00e3o \u00e9 que o codec n\u00e3o \u00e9 realmente utiliz\u00e1vel para \u00e1udio Bluetooth.<br \/>\nNo passado, de 2006 a 2008, antes da dissemina\u00e7\u00e3o do padr\u00e3o A2DP em dispositivos, as pessoas ouviam m\u00fasica MP3 com o fone de ouvido Nokia BH-501 atrav\u00e9s do aplicativo MSI BluePlayer, que estava dispon\u00edvel para Symbian e Windows Mobile. Naquela \u00e9poca, a arquitetura do sistema operacional dos smartphones permitia acesso a muitas fun\u00e7\u00f5es de baixo n\u00edvel, e no Windows Mobile era poss\u00edvel at\u00e9 instalar pilhas Bluetooth de terceiros.<\/p>\n<p>A \u00faltima patente do codec MP3 expirou, e o uso do codec n\u00e3o requer pagamento de royalties desde 23 de abril de 2017.<\/p>\n<blockquote><p>Se a patente de maior dura\u00e7\u00e3o mencionada nas refer\u00eancias acima for considerada como medida, ent\u00e3o a tecnologia MP3 tornou-se livre de patentes nos Estados Unidos em 16 de abril de 2017, quando a Patente U.S. 6,009,399, detida e administrada pela Technicolor, expirou.<\/p><\/blockquote>\n<p><i>Fonte: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.iis.fraunhofer.de\/en\/ff\/amm\/prod\/audiocodec\/audiocodecs\/mp3.html\">www.iis.fraunhofer.de\/en\/ff\/amm\/prod\/audiocodec\/audiocodecs\/mp3.html<\/a><\/noindex><\/i><\/p>\n<p>Frequ\u00eancia de amostragem<br \/>\nTaxa de bits<br \/>\nSuporte \u00e0 codifica\u00e7\u00e3o<br \/>\nSuporte \u00e0 decodifica\u00e7\u00e3o<\/p>\n<p>16 \u2014 48 kHz<br \/>\n8 \u2014 320 kbps<br \/>\nN\u00e3o suportado em nenhum lugar<br \/>\nPor alguns dispositivos de \u00e1udio (hardwares)<\/p>\n<h2>LDAC<\/h2>\n<p>Novo codec 'Hi-Res' da Sony, promovido ativamente, que suporta taxas de amostragem de at\u00e9 96 kHz e profundidade de bits de 24, com taxa de bits de at\u00e9 990 kbps. \u00c9 promovido como um codec para audi\u00f3filos, como substituto para os codecs Bluetooth existentes. Possui fun\u00e7\u00e3o de ajuste adaptativo da taxa de bits, dependendo das condi\u00e7\u00f5es da transmiss\u00e3o.<\/p>\n<p>O codificador LDAC (<noindex><a rel=\"nofollow\" href=\"https:\/\/android.googlesource.com\/platform\/external\/libldac\/\">libldac<\/a><\/noindex>) vem de f\u00e1brica no Android, portanto a codifica\u00e7\u00e3o \u00e9 suportada em qualquer smartphone Android a partir da vers\u00e3o 8 do SO. N\u00e3o h\u00e1 decodificadores de software dispon\u00edveis publicamente, a especifica\u00e7\u00e3o do codec n\u00e3o est\u00e1 amplamente dispon\u00edvel ao p\u00fablico, no entanto, \u00e0 primeira vista, o design interno do codec \u00e9 semelhante ao <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Adaptive_Transform_Acoustic_Coding#ATRAC9\">ATRAC9<\/a><\/noindex> \u2014 codec da Sony usado no PlayStation 4 e Vita: ambos operam na mesma faixa de frequ\u00eancia, usam a transformada discreta de cossenos modificada (MDCT) e compress\u00e3o com o algoritmo de Huffman.<\/p>\n<p>O suporte ao LDAC est\u00e1 dispon\u00edvel praticamente apenas em fones de ouvido da Sony. A capacidade de decodifica\u00e7\u00e3o LDAC \u00e0s vezes \u00e9 encontrada em fones de ouvido e DACs de outros fabricantes, mas \u00e9 muito rara.<\/p>\n<p>Frequ\u00eancia de amostragem<br \/>\nTaxa de bits<br \/>\nSuporte \u00e0 codifica\u00e7\u00e3o<br \/>\nSuporte \u00e0 decodifica\u00e7\u00e3o<\/p>\n<p>44.1 \u2014 96 kHz<br \/>\n303\/606\/909 kbps (para 44.1 e 88.2 kHz), 330\/660\/990 kbps (para 48 e 96 kHz)<br \/>\nAndroid 8+<br \/>\nPor alguns fones de ouvido da Sony e poucos dispositivos de outros fabricantes (hardware)<\/p>\n<p>O marketing do LDAC como um codec Hi-Res prejudica sua base t\u00e9cnica: \u00e9 insensato usar a taxa de bits para transmitir frequ\u00eancias inaud\u00edveis ao ouvido humano e uma profundidade maior de bits, quando n\u00e3o \u00e9 suficiente para transmitir qualidade de CD (44.1\/16) sem perdas. Felizmente, o codec tem dois modos de opera\u00e7\u00e3o: transmiss\u00e3o de \u00e1udio CD e transmiss\u00e3o de \u00e1udio Hi-Res. No primeiro caso, apenas 44.1 kHz\/16 bits s\u00e3o transmitidos sem fio.<\/p>\n<p>Como n\u00e3o h\u00e1 decodificador de software do LDAC dispon\u00edvel publicamente, \u00e9 imposs\u00edvel testar o codec sem dispositivos adicionais que decodifiquem LDAC. Nos testes do LDAC em um DAC com suporte, que os engenheiros do site SoundGuys.com conectaram atrav\u00e9s da sa\u00edda digital e gravaram o som gerado em sinais de teste, o LDAC 660 e 990 kbps em modo de qualidade CD oferece uma rela\u00e7\u00e3o sinal\/ru\u00eddo apenas um pouco melhor do que o aptX HD.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/www.soundguys.com\/wp-content\/uploads\/2018\/10\/LDAC-990-CD-Noise-Floor.jpg\"><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/819853ab9d92e9631454082ade245628.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<i>Fonte: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.soundguys.com\/ldac-ultimate-bluetooth-guide-20026\/\">www.soundguys.com\/ldac-ultimate-bluetooth-guide-20026<\/a><\/noindex><\/i><\/p>\n<p>O LDAC tamb\u00e9m suporta taxas de bits din\u00e2micas fora dos perfis estabelecidos \u2014 de 138 kbps a 990 kbps, mas, pelo que posso perceber, no Android s\u00e3o usados apenas os perfis padronizados de 303\/606\/909 e 330\/660\/990 kbps.<\/p>\n<h2>Outros codecs<\/h2>\n<p>Outros codecs A2DP n\u00e3o ganharam ampla ado\u00e7\u00e3o. Seu suporte est\u00e1 praticamente ausente ou \u00e9 limitado a determinados modelos de fones de ouvido e smartphones.<br \/>\nO codec ATRAC, padronizado no A2DP, nunca foi usado como codec Bluetooth nem mesmo pela Sony. Os codecs Samsung HD, Samsung Scalable e Samsung UHQ-BT t\u00eam suporte muito limitado por dispositivos de transmiss\u00e3o e recep\u00e7\u00e3o, enquanto o HWA LHDC \u00e9 muito novo e \u00e9 suportado por apenas tr\u00eas(?) dispositivos.<\/p>\n<p><\/p>\n<h1>Suporte a codecs pelos dispositivos de \u00e1udio<\/h1>\n<p>Nem todos os fabricantes publicam informa\u00e7\u00f5es precisas sobre os codecs suportados por determinados fones de ouvido sem fio, caixas de som, receptores ou transmissores. \u00c0s vezes, o suporte a um determinado codec est\u00e1 dispon\u00edvel apenas para transmiss\u00e3o, mas n\u00e3o para recep\u00e7\u00e3o (o que \u00e9 relevante para transmissores-receptores combinados), embora o fabricante indique simplesmente 'suporte', sem notas adicionais (presumo que isso se deva ao licenciamento separado de codificadores e decodificadores de alguns codecs). Nos dispositivos mais baratos, pode-se n\u00e3o encontrar o suporte declarado ao aptX.<\/p>\n<p>Infelizmente, nas interfaces da maioria dos sistemas operacionais, n\u00e3o \u00e9 exibido o codec utilizado. Essa informa\u00e7\u00e3o est\u00e1 dispon\u00edvel apenas no Android, a partir da vers\u00e3o 8, e no macOS. No entanto, mesmo nesses sistemas operacionais, ser\u00e3o exibidos apenas os codecs que s\u00e3o suportados tanto pelo telefone\/computador quanto pelos fones de ouvido.<\/p>\n<p>Como saber quais codecs um dispositivo suporta? Registrar e analisar o dump de tr\u00e1fego com os par\u00e2metros de negocia\u00e7\u00e3o A2DP!<br \/>\nIsso pode ser feito no Linux, macOS e Android. No Linux, pode-se usar Wireshark ou hcidump, no macOS \u2014 Bluetooth Explorer, e no Android \u2014 a fun\u00e7\u00e3o padr\u00e3o de salvar o dump HCI Bluetooth, dispon\u00edvel nas ferramentas de desenvolvedor. Voc\u00ea obter\u00e1 um dump no formato btsnoop, que pode ser carregado no analisador Wireshark.<br \/>\n<b>Note que<\/b>: um dump correto s\u00f3 pode ser obtido conectando-se com um telefone\/computador aos fones de ouvido\/alto-falantes (por mais curioso que isso pare\u00e7a)! Os fones de ouvido podem estabelecer a conex\u00e3o com o telefone por conta pr\u00f3pria, e nesse caso, eles solicitar\u00e3o a lista de codecs ao telefone, e n\u00e3o o contr\u00e1rio. Para garantir a grava\u00e7\u00e3o de um dump correto, primeiro desconecte-se do dispositivo e, em seguida, durante a grava\u00e7\u00e3o do dump, pareie o telefone com os fones de ouvido.<\/p>\n<p>Use o seguinte filtro de exibi\u00e7\u00e3o para filtrar o tr\u00e1fego irrelevante:<\/p>\n<pre><code class=\"plaintext\">btavdtp.signal_id<\/code><\/pre>\n<p>Como resultado, voc\u00ea deve ver algo parecido com:<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/fv\/ku\/xs\/fvkuxsqcdwtxznupploqmldv9qm.png\"><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/b598f3282b36d7761c5f4fa63802d57e.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Em cada item do comando GetCapabilities, voc\u00ea pode clicar e ver as especifica\u00e7\u00f5es detalhadas do codec.<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/7s\/9a\/xa\/7s9axaeztya_dr2irptfi68ejxs.png\"><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/e5037fe18ae95ed7f047f4b8b8fcb2c8.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>O Wireshark n\u00e3o conhece todos os identificadores de codecs, portanto, alguns codecs ter\u00e3o que ser decifrados manualmente, consultando a tabela de identificadores abaixo:<\/p>\n<pre><code class=\"plaintext\">Obrigat\u00f3rio:\n0x00 - SBC\n\nOpcional:\n0x01 - MPEG-1,2 (tamb\u00e9m conhecido como MP3)\n0x02 - MPEG-2,4 (tamb\u00e9m conhecido como AAC)\n0x04 - ATRAC\n\nEspec\u00edfico do fornecedor:\n0xFF 0x004F 0x01 - aptX\n0xFF 0x00D7 0x24 - aptX HD\n0xFF 0x000A 0x02 - aptX Low Latency\n0xFF 0x00D7 0x02 - aptX Low Latency\n0xFF 0x000A 0x01 - FastStream\n0xFF 0x012D 0xAA - LDAC\n0xFF 0x0075 0x0102 - Samsung HD\n0xFF 0x0075 0x0103 - Samsung Scalable Codec\n0xFF 0x053A 0x484C - Savitech LHDC\n\n0xFF 0x000A 0x0104 - O ID do Codec CSR True Wireless Stereo v3 para AAC\n0xFF 0x000A 0x0105 - O ID do Codec CSR True Wireless Stereo v3 para MP3\n0xFF 0x000A 0x0106 - O ID do Codec CSR True Wireless Stereo v3 para aptX<\/code><\/pre>\n<p>Para n\u00e3o analisar dumps manualmente, criei um servi\u00e7o que analisa tudo automaticamente: <noindex><a rel=\"nofollow\" href=\"https:\/\/btcodecs.valdikss.org.ru\">btcodecs.valdikss.org.ru<\/a><\/noindex><\/p>\n<p><\/p>\n<h1>Compara\u00e7\u00e3o de codecs. Qual codec \u00e9 melhor?<\/h1>\n<p>Cada codec tem suas pr\u00f3prias vantagens e desvantagens.<br \/>\naptX e aptX HD usam perfis rigidamente definidos, que n\u00e3o podem ser alterados sem modificar o codificador e o decodificador. Nem o fabricante do telefone nem o fabricante dos fones de ouvido podem alterar a taxa de bits ou os coeficientes de codifica\u00e7\u00e3o do aptX. O propriet\u00e1rio do codec, a Qualcomm, fornece um codificador de refer\u00eancia na forma de biblioteca. Esses fatos s\u00e3o um forte ponto a favor do aptX - voc\u00ea sabe com anteced\u00eancia qual qualidade de som receber\u00e1, sem quaisquer \u201cmas\u201d.<\/p>\n<p>O SBC, por outro lado, possui v\u00e1rias op\u00e7\u00f5es personaliz\u00e1veis, taxa de bits din\u00e2mica (o codificador pode diminuir o par\u00e2metro bitpool se o espectro de r\u00e1dio estiver congestionado) e n\u00e3o tem perfis fixos, apenas os recomendados de \"qualidade m\u00e9dia\" e \"alta qualidade\", que foram adicionados \u00e0 especifica\u00e7\u00e3o A2DP em 2003. A \"alta qualidade\" n\u00e3o \u00e9 mais t\u00e3o alta pelos padr\u00f5es modernos, e a maioria das pilhas Bluetooth n\u00e3o permite op\u00e7\u00f5es melhores do que o perfil de \"alta qualidade\", embora n\u00e3o haja limita\u00e7\u00f5es t\u00e9cnicas para isso.<br \/>\nO Bluetooth SIG n\u00e3o possui um codificador de refer\u00eancia SBC na forma de uma biblioteca, e os fabricantes o implementam de forma independente.<br \/>\nEssas s\u00e3o as fraquezas do SBC \u2014 nunca se sabe previamente que qualidade de som esperar de um dispositivo espec\u00edfico. O SBC pode fornecer qualidade de som tanto baixa quanto muito alta, mas a \u00faltima \u00e9 inating\u00edvel sem desativar ou contornar as limita\u00e7\u00f5es artificiais das pilhas Bluetooth.<\/p>\n<p>A situa\u00e7\u00e3o com o AAC \u00e9 amb\u00edgua: por um lado, teoricamente o codec deve fornecer qualidade indistingu\u00edvel do original, mas a pr\u00e1tica, de acordo com os testes do laborat\u00f3rio SoundGuys em v\u00e1rios dispositivos Android, n\u00e3o confirma isso. \u00c9 mais prov\u00e1vel que a culpa seja dos codificadores de \u00e1udio de baixa qualidade embutidos nos diferentes chipsets dos telefones. Faz sentido usar AAC apenas em dispositivos Apple, enquanto nos Android \u00e9 melhor se limitar ao aptX e LDAC.<\/p>\n<p>Dispositivos que suportam codecs alternativos geralmente s\u00e3o de qualidade superior, simplesmente porque n\u00e3o faz sentido para dispositivos muito baratos e de baixa qualidade pagar royalties para usar esses codecs. Nos meus testes, o SBC soa muito bem em equipamentos de qualidade.<\/p>\n<p>Eu criei um servi\u00e7o web que codifica \u00e1udio em SBC, aptX e aptX HD em tempo real, diretamente no navegador. Com ele, voc\u00ea poder\u00e1 testar esses audiocodecs sem realmente transmitir \u00e1udio via Bluetooth, usando quaisquer fones de ouvido com fio, alto-falantes e sua m\u00fasica favorita, al\u00e9m de mudar os par\u00e2metros de codifica\u00e7\u00e3o durante a reprodu\u00e7\u00e3o de \u00e1udio:<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/btcodecs.valdikss.org.ru\/sbc-encoder\/\">btcodecs.valdikss.org.ru\/sbc-encoder<\/a><\/noindex><br \/>\nO servi\u00e7o utiliza bibliotecas de codifica\u00e7\u00e3o SBC do projeto BlueZ e libopenaptx do ffmpeg, que s\u00e3o compiladas em WebAssembly e JavaScript a partir do C, atrav\u00e9s do emscripten, para execu\u00e7\u00e3o no navegador. Quem poderia sonhar com um futuro assim!<\/p>\n<p>Aqui est\u00e1 como isso se parece:<br \/>\n<video controls style=\"top: 0; left: 0; width: 100%; height: 100%; position: absolute;\">Seu navegador n\u00e3o suporta v\u00eddeo HTML5.<source src=\"https:\/\/files.catbox.moe\/9e9q8f.mp4\" type=\"video\/mp4\"><\/source><\/video><br \/>\nObserve como o n\u00edvel de ru\u00eddo muda ap\u00f3s 20 kHz em diferentes codecs. No arquivo MP3 original, as frequ\u00eancias acima de 20 kHz est\u00e3o ausentes.<\/p>\n<p>Tente alternar entre os codecs e veja se consegue perceber a diferen\u00e7a entre o original, SBC 53 Joint Stereo (o perfil padr\u00e3o e mais comum), e aptX\/aptX HD.<\/p>\n<p><\/p>\n<h2>Eu percebo a diferen\u00e7a entre os codecs <i>em fones de ouvido<\/i>!<\/h2>\n<p>Pessoas que n\u00e3o notam diferen\u00e7a entre os codecs durante o teste via servi\u00e7o web afirmam que conseguem perceb\u00ea-la ao ouvir m\u00fasica em fones de ouvido sem fio. Infelizmente, isso n\u00e3o \u00e9 uma piada ou um efeito placebo: a diferen\u00e7a realmente \u00e9 aud\u00edvel, mas \u00e9 causada n\u00e3o por <i>diferen\u00e7as entre os codecs<\/i>.<\/p>\n<p>A grande maioria dos chipsets de \u00e1udio Bluetooth usados em dispositivos receptores sem fio vem equipada com um processador digital de sinais (DSP), que implementa equalizador, compandor, expansor est\u00e9reo e outras fun\u00e7\u00f5es destinadas a melhorar (ou alterar) o som. Fabricantes de equipamentos Bluetooth podem programar o DSP <i>para cada codec separadamente<\/i>, e ao alternar entre codecs, o ouvinte pode achar que ouve diferen\u00e7as de desempenho entre os codecs, quando na realidade est\u00e1 ouvindo configura\u00e7\u00f5es diferentes do DSP.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/0j\/75\/rv\/0j75rvrbutguojyxx9yu0s-uang.png\"><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/6a8f7ab3ef52753cd32f398c023cd601.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<i>O pipeline de processamento de som DSP Kalimba em chips da CSR\/Qualcomm<\/i><\/p>\n<p><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/5dd07986d55d2e7e65697ab7114a942b.png\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<i>Ativa\u00e7\u00e3o de diferentes fun\u00e7\u00f5es do DSP para cada codec e sa\u00edda separadamente<\/i><\/p>\n<p>Alguns dispositivos de alta gama v\u00eam com um software que permite ajustar os par\u00e2metros do DSP, mas a maioria dos fones de ouvido mais baratos n\u00e3o tem essa possibilidade, e os usu\u00e1rios n\u00e3o conseguem desativar o p\u00f3s-processamento do som por meio de configura\u00e7\u00f5es b\u00e1sicas.<\/p>\n<p><\/p>\n<h2>Caracter\u00edsticas funcionais dos dispositivos<\/h2>\n<p>A vers\u00e3o moderna do padr\u00e3o A2DP possui <b>a fun\u00e7\u00e3o de \"controle absoluto de volume\"<\/b> \u2014 controle de volume do dispositivo por comandos especiais do protocolo AVRCP, que ajusta a amplifica\u00e7\u00e3o do est\u00e1gio de sa\u00edda, ao inv\u00e9s de reduzir o volume do fluxo de \u00e1udio programaticamente. Se, ao alterar o volume nos fones de ouvido, a altera\u00e7\u00e3o n\u00e3o se sincroniza com o volume do telefone, isso significa que seus fones de ouvido ou telefone n\u00e3o suportam essa fun\u00e7\u00e3o. Nesse caso, \u00e9 aconselh\u00e1vel ouvir m\u00fasica sempre com o volume m\u00e1ximo no telefone, ajustando o volume real com os bot\u00f5es dos fones \u2014 assim, a rela\u00e7\u00e3o sinal\/ru\u00eddo ser\u00e1 melhor e a qualidade do \u00e1udio. <i>deveria ser<\/i> acima.<br \/>\nNa realidade, h\u00e1 situa\u00e7\u00f5es tristes. Nos meus fones de ouvido RealForce OverDrive D1, um forte compressor est\u00e1 ativado para SBC, e aumentar o volume faz com que o n\u00edvel dos sons baixos aumente, enquanto o volume dos sons altos permanece o mesmo (ocorre compress\u00e3o do sinal). Por causa disso, preciso ajustar o volume no computador para cerca da metade, caso contr\u00e1rio, n\u00e3o h\u00e1 praticamente nenhum efeito de compress\u00e3o.<br \/>\nDe acordo com minhas observa\u00e7\u00f5es, todos os fones de ouvido com codecs adicionais suportam a fun\u00e7\u00e3o de ajuste absoluto de volume; aparentemente, isso \u00e9 um dos requisitos para a certifica\u00e7\u00e3o dos codecs.<\/p>\n<p>Alguns fones de ouvido suportam <b>conex\u00e3o de dois dispositivos simultaneamente<\/b>. Isso permite, por exemplo, ouvir m\u00fasica no computador e atender chamadas no telefone. No entanto, deve-se saber que, nesse modo, codecs alternativos s\u00e3o desativados, e apenas SBC \u00e9 utilizado.<\/p>\n<p><b>A fun\u00e7\u00e3o AVDTP 1.3 Delay Reporting<\/b> permite que os fones de ouvido informem ao dispositivo transmissor a lat\u00eancia com a qual o som est\u00e1 sendo realmente reproduzido. Isso ajuda a ajustar a sincroniza\u00e7\u00e3o do \u00e1udio com o v\u00eddeo ao assistir arquivos de v\u00eddeo: em caso de problemas de transmiss\u00e3o pelo r\u00e1dio, o \u00e1udio n\u00e3o ficar\u00e1 atrasado em rela\u00e7\u00e3o ao v\u00eddeo; pelo contr\u00e1rio, o v\u00eddeo ir\u00e1 travar at\u00e9 que \u00e1udio e v\u00eddeo estejam novamente sincronizados.<br \/>\nEssa fun\u00e7\u00e3o \u00e9 suportada por muitos fones de ouvido, Android 9+ e Linux com PulseAudio 12.0+. N\u00e3o tenho informa\u00e7\u00e3o sobre o suporte da fun\u00e7\u00e3o em outras plataformas.<\/p>\n<p><\/p>\n<h1>Comunica\u00e7\u00e3o bidirecional via Bluetooth. Transmiss\u00e3o de voz.<\/h1>\n<p>Para a transmiss\u00e3o de voz via Bluetooth utiliza-se a Synchronous Connection Oriented (SCO) \u2014 uma transmiss\u00e3o s\u00edncrona com pr\u00e9-estabelecimento de conex\u00e3o. Esse modo permite transmitir som e voz de forma estrita e sequencial, com uma taxa sim\u00e9trica de envio e recebimento, sem esperar pela confirma\u00e7\u00e3o da transmiss\u00e3o e reenvio de pacotes. Isso reduz a lat\u00eancia total na transmiss\u00e3o de \u00e1udio pelo canal de r\u00e1dio, mas imp\u00f5e s\u00e9rias limita\u00e7\u00f5es \u00e0 quantidade de dados transmitidos por unidade de tempo, afetando negativamente a qualidade.<br \/>\nQuando este modo \u00e9 utilizado, tanto a voz quanto o \u00e1udio s\u00e3o transmitidos com a mesma qualidade.<br \/>\nInfelizmente, at\u00e9 2019, a qualidade da transmiss\u00e3o de voz via Bluetooth ainda \u00e9 baixa, e n\u00e3o est\u00e1 claro por que a Bluetooth SIG n\u00e3o toma provid\u00eancias a respeito.<\/p>\n<h5>CVSD<\/h5>\n<p>O codec b\u00e1sico de transmiss\u00e3o de voz CVSD foi padronizado em 2002 e \u00e9 suportado por todos os dispositivos de comunica\u00e7\u00e3o bidirecional via Bluetooth. Ele proporciona a transmiss\u00e3o de \u00e1udio com uma taxa de amostragem de 8 kHz, correspondente \u00e0 qualidade da telefonia convencional com fio. <\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/files.catbox.moe\/c4h77s.flac\">Exemplo de grava\u00e7\u00e3o nesse codec<\/a><\/noindex>.<\/p>\n<h5>mSBC<\/h5>\n<p>O codec adicional mSBC foi padronizado em 2009, e em 2010 j\u00e1 surgiram chips utilizando-o para transmiss\u00e3o de voz. O mSBC \u00e9 amplamente suportado por diversos dispositivos.<br \/>\nN\u00e3o \u00e9 um codec independente, mas sim o SBC comum do padr\u00e3o A2DP, com um perfil de codifica\u00e7\u00e3o fixo: 16 kHz, mono, bitpool 26.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/files.catbox.moe\/b09joy.flac\">Exemplo de grava\u00e7\u00e3o nesse codec<\/a><\/noindex>.<\/p>\n<p>N\u00e3o \u00e9 excelente, mas muito melhor que o CVSD, ainda assim \u00e9 desconfort\u00e1vel utiliz\u00e1-lo para comunica\u00e7\u00e3o pela internet, especialmente ao usar fones de ouvido em jogos \u2014 o som do jogo tamb\u00e9m ser\u00e1 transmitido com uma taxa de amostragem de 16 kHz.<\/p>\n<p>FastStreamA empresa CSR decidiu desenvolver a ideia de reaproveitamento do SBC. Para contornar as limita\u00e7\u00f5es do protocolo SCO e utilizar taxas de bits mais altas, a CSR adotou uma abordagem diferente \u2014 integraram o suporte de \u00e1udio SBC bidirecional ao padr\u00e3o de transmiss\u00e3o de \u00e1udio unidirecional A2DP, padronizando perfis de codifica\u00e7\u00e3o e nomeando-o como 'FastStream'.<\/p>\n<p>O FastStream transmite em alto-falantes som est\u00e9reo a 44.1 ou 48 kHz com uma taxa de bits de 212 kbit\/s, e para a transmiss\u00e3o de \u00e1udio do microfone utiliza mono, 16 kHz, com uma taxa de bits de 72 kbit\/s (um pouco melhor que o mSBC). Esses par\u00e2metros se adequam muito melhor \u00e0 comunica\u00e7\u00e3o em jogos online \u2014 o som do jogo e dos interlocutores ser\u00e1 de qualidade.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/files.catbox.moe\/4gazzt.flac\">Exemplo de grava\u00e7\u00e3o nesse codec<\/a><\/noindex> (+ <noindex><a rel=\"nofollow\" href=\"https:\/\/files.catbox.moe\/b09joy.flac\">som do microfone, igual ao do mSBC<\/a><\/noindex>).<\/p>\n<p>A empresa criou uma solu\u00e7\u00e3o interessante, mas devido \u00e0 sua contrariedade ao padr\u00e3o A2DP, seu suporte existe apenas em alguns transmissores da empresa (que funcionam como uma placa de som USB, e n\u00e3o como dispositivos Bluetooth), mas n\u00e3o recebeu suporte nas pilhas Bluetooth, embora o n\u00famero de fones de ouvido com suporte ao FastStream n\u00e3o seja t\u00e3o pequeno.<\/p>\n<p>Atualmente, o suporte ao FastStream no sistema operacional existe apenas <noindex><a rel=\"nofollow\" href=\"https:\/\/lists.freedesktop.org\/archives\/pulseaudio-discuss\/2019-June\/031175.html\">como um patch para o PulseAudio no Linux<\/a><\/noindex> do desenvolvedor Pali Roh\u00e1r, que n\u00e3o est\u00e1 inclu\u00eddo na vers\u00e3o principal do software.<\/p>\n<h5>aptX Low Latency<\/h5>\n<p>Para grande surpresa, o aptX Low Latency tamb\u00e9m suporta \u00e1udio bidirecional, implementando o mesmo princ\u00edpio que o FastStream.<br \/>\nN\u00e3o ser\u00e1 poss\u00edvel utilizar essa caracter\u00edstica do codec em lugar algum \u2013 n\u00e3o h\u00e1 suporte para decodifica\u00e7\u00e3o Low Latency em nenhum sistema operacional e em nenhuma das pilhas Bluetooth conhecidas para mim.<\/p>\n<p><\/p>\n<h1>Bluetooth 5, Classic e Low Energy<\/h1>\n<p>A grande confus\u00e3o em torno das especifica\u00e7\u00f5es e vers\u00f5es do Bluetooth se deve \u00e0 exist\u00eancia de dois padr\u00f5es incompat\u00edveis sob uma mesma marca, ambos amplamente utilizados para diferentes finalidades.<\/p>\n<p>Existem dois protocolos Bluetooth distintos e incompat\u00edveis: Bluetooth Classic e Bluetooth Low Energy (LE, tamb\u00e9m conhecido como Bluetooth Smart). Existe tamb\u00e9m um terceiro protocolo, Bluetooth High Speed, mas ele n\u00e3o \u00e9 amplamente utilizado e n\u00e3o \u00e9 utilizado em dispositivos dom\u00e9sticos.<\/p>\n<p>A partir do Bluetooth 4.0, as mudan\u00e7as na especifica\u00e7\u00e3o se concentraram predominantemente no Bluetooth Low Energy, enquanto a vers\u00e3o Classic recebeu apenas melhorias pequenas.<\/p>\n<p>Lista de mudan\u00e7as entre Bluetooth 4.2 e Bluetooth 5:<\/p>\n<blockquote><p>9 ALTERA\u00c7\u00d5ES DA V4.2 PARA A 5.0<\/p>\n<p>9.1 NOVAS FUNCIONALIDADES<\/p>\n<p>V\u00e1rias novas funcionalidades s\u00e3o introduzidas na Especifica\u00e7\u00e3o Central do Bluetooth 5.0. As principais \u00e1reas de melhoria s\u00e3o:<br \/>\n\u2022 M\u00e1scara de Disponibilidade de Slots (SAM)<br \/>\n\u2022 PHY de 2 Msym\/s para LE<br \/>\n\u2022 LE Long Range<br \/>\n\u2022 Publicidade de Alto Ciclo de Trabalho N\u00e3o Conect\u00e1vel<br \/>\n\u2022 Extens\u00f5es de Publicidade LE<br \/>\n\u2022 Algoritmo de Sele\u00e7\u00e3o de Canal LE #2<br \/>\n9.1.1 Funcionalidades Adicionadas no CSA5 \u2014 Integradas na v5.0<br \/>\n\u2022 Maior Pot\u00eancia de Sa\u00edda<\/p><\/blockquote>\n<p><i>Fonte: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.bluetooth.org\/docman\/handlers\/DownloadDoc.ashx?doc_id=421043\">www.bluetooth.org\/docman\/handlers\/DownloadDoc.ashx?doc_id=421043<\/a><\/noindex> (p\u00e1gina 291)<\/i><\/p>\n<p>Apenas uma altera\u00e7\u00e3o se referiu \u00e0 vers\u00e3o Classic no \u00e2mbito da especifica\u00e7\u00e3o Bluetooth 5: foi adicionada a tecnologia de suporte \u00e0 M\u00e1scara de Disponibilidade de Slots (SAM), destinada a melhorar a segmenta\u00e7\u00e3o do espectro de r\u00e1dio. Todas as outras mudan\u00e7as afetam apenas o Bluetooth LE (e tamb\u00e9m a Maior Pot\u00eancia de Sa\u00edda).<\/p>\n<p><b>Todos<\/b> os dispositivos de \u00e1udio utilizam apenas Bluetooth Classic. Fones de ouvido e alto-falantes n\u00e3o podem ser conectados via Bluetooth Low Energy: n\u00e3o existe um padr\u00e3o para transmiss\u00e3o de \u00e1udio utilizando LE. O padr\u00e3o A2DP, usado para transmiss\u00e3o de \u00e1udio de alta qualidade, funciona apenas atrav\u00e9s do Bluetooth Classic, e n\u00e3o h\u00e1 um equivalente no LE.<\/p>\n<p>A aquisi\u00e7\u00e3o de dispositivos de \u00e1udio com Bluetooth 5 apenas por causa da nova vers\u00e3o do protocolo \u00e9 desnecess\u00e1ria. O Bluetooth 4.0\/4.1\/4.2 funcionar\u00e1 da mesma forma em termos de transmiss\u00e3o de \u00e1udio.<br \/>\nSe o an\u00fancio de novos fones de ouvido menciona um raio de a\u00e7\u00e3o dobrado e menor consumo de energia gra\u00e7as ao Bluetooth 5, saiba que eles est\u00e3o, ou n\u00e3o t\u00eam conhecimento, ou est\u00e3o te enganando. N\u00e3o \u00e9 surpreendente, j\u00e1 que at\u00e9 os fabricantes de chips Bluetooth se confundem nas suas comunica\u00e7\u00f5es sobre as diferen\u00e7as da nova vers\u00e3o do padr\u00e3o, e alguns chips Bluetooth 5 suportam a quinta vers\u00e3o apenas para LE, mas utilizam 4.2 para Classic.<\/p>\n<h1>Atraso na transmiss\u00e3o de \u00e1udio<\/h1>\n<p>A quantidade de atraso (lat\u00eancia) no \u00e1udio depende de muitos fatores: do tamanho do buffer na pilha de \u00e1udio, na pilha Bluetooth e no pr\u00f3prio dispositivo de reprodu\u00e7\u00e3o sem fio, al\u00e9m da lat\u00eancia algor\u00edtmica do codec.<\/p>\n<p>A lat\u00eancia de codecs simples, como SBC, aptX e aptX HD, \u00e9 bem baixa, variando de 3 a 6 ms, o que pode ser desprezado, mas codecs complexos, como AAC e LDAC, podem apresentar um atraso percept\u00edvel. A lat\u00eancia algor\u00edtmica do AAC para 44.1 kHz \u00e9 de 60 ms. O LDAC, por sua vez, \u00e9 em torno de 30 ms (com base em uma an\u00e1lise preliminar do c\u00f3digo-fonte. Posso estar errado, mas n\u00e3o muito).<\/p>\n<p>A lat\u00eancia final depende fortemente do dispositivo de reprodu\u00e7\u00e3o, seu chipset e buffer. Durante os testes, obtive varia\u00e7\u00f5es de 150 a 250 ms em diferentes dispositivos (usando o codec SBC). Se presumirmos que dispositivos que suportam codecs adicionais como aptX, AAC e LDAC utilizam componentes de qualidade e tamanhos de buffer pequenos, ter\u00edamos os seguintes atrasos t\u00edpicos:<\/p>\n<p>SBC: 150-250 ms<br \/>\naptX: 130-180 ms<br \/>\nAAC: 190-240 ms<br \/>\nLDAC: 160-210 ms<\/p>\n<p>Lembro que o aptX Low Latency n\u00e3o \u00e9 suportado em sistemas operacionais, portanto, uma lat\u00eancia menor s\u00f3 pode ser alcan\u00e7ada com a combina\u00e7\u00e3o de transmissor + receptor ou transmissor + fones de ouvido\/caixa de som, sendo que todos os dispositivos devem suportar esse codec.<\/p>\n<p><\/p>\n<h1>Problemas com dispositivos, certifica\u00e7\u00f5es e logotipos Bluetooth<\/h1>\n<p>Como distinguir um dispositivo de \u00e1udio de qualidade de uma imita\u00e7\u00e3o barata? Pela apar\u00eancia, antes de tudo!<\/p>\n<p>Nos fones de ouvido, alto-falantes e receptores baratos chineses:<\/p>\n<ol>\n<li>Falta da palavra \u201cBluetooth\u201d na caixa e no dispositivo, frequentemente se usa \u201cWireless\u201d e \u201cBT\u201d<\/li>\n<li>Falta do logotipo Bluetooth <img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/bde65e4674a5d573c0482e64ea6ff2d3.png\" style=\"display:block;margin: 0 auto;\" \/> na caixa ou no dispositivo<\/li>\n<li>N\u00e3o h\u00e1 um LED azul piscando<\/li>\n<\/ol>\n<p>\nA aus\u00eancia desses elementos indica que o dispositivo n\u00e3o foi certificado, o que significa que \u00e9 potencialmente de baixa qualidade e problem\u00e1tico. Por exemplo, os fones de ouvido da Bluedio n\u00e3o s\u00e3o certificados pelo Bluetooth e n\u00e3o est\u00e3o totalmente em conformidade com a especifica\u00e7\u00e3o A2DP. Eles n\u00e3o conseguiriam passar na certifica\u00e7\u00e3o.<\/p>\n<p>Vamos considerar alguns dispositivos e suas caixas:<br \/>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/e4\/qa\/rr\/e4qarrce8fcjv8wwu46aiyib3oa.jpeg\"><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/12b3b234a522eaef783b480e8f003ffc.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/ba\/06\/vb\/ba06vbcolhpvuie2xlbgnvsycd0.jpeg\"><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/da56314dd65a1000cd3b545d9925d08b.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/habrastorage.org\/webt\/mw\/1b\/t1\/mw1bt1hp0cz11xuilzyz0a70dca.jpeg\"><img decoding=\"async\" alt=\"\u00c1udio via Bluetooth: detalhes sobre perfis, codecs e dispositivos\" src=\"\/wp-content\/uploads\/2bb0356a92d8aee2a84c3123aa8d7e09.png\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><\/p>\n<p>Todos esses s\u00e3o dispositivos n\u00e3o certificados. O manual pode ter o logotipo e o nome da tecnologia Bluetooth, mas o mais importante \u00e9 que eles estejam na caixa e\/ou no pr\u00f3prio dispositivo.<\/p>\n<p>Se seus fones de ouvido ou caixa falarem \"Ze bluetooth dewise is connecteda successfulle\", isso tamb\u00e9m n\u00e3o indica sua qualidade:<br \/>\n<center><div class=\"youtube-placeholder\" data-id=\"TOFbsbGpIWk\" onclick=\"loadVideo(this)\">\r\n        <img decoding=\"async\" src=\"https:\/\/img.youtube.com\/vi\/TOFbsbGpIWk\/hqdefault.jpg\" alt=\"Por que no hosting comum a administra\u00e7\u00e3o do PrestaShop \u00e9 lenta, e no seu n\u00e3o \u00e9?\" loading=\"lazy\" width=\"480\" height=\"360\" style=\"width:100%;height:auto;\">\r\n        <div class=\"play-button\"><\/div>\r\n    <\/div><\/center><\/p>\n<p><\/p>\n<h1>Conclus\u00e3o<\/h1>\n<p>O Bluetooth \u00e9 capaz de substituir completamente os fones e headsets com fio? \u00c9, mas a um custo de qualidade inferior na conversa\u00e7\u00e3o, maior lat\u00eancia na transmiss\u00e3o de \u00e1udio, que pode ser irritante em jogos, e uma infinidade de codecs propriet\u00e1rios que exigem royalties e aumentam o custo final tanto dos smartphones quanto dos fones de ouvido.<\/p>\n<p>O marketing de codecs alternativos \u00e9 muito forte: aptX e LDAC s\u00e3o apresentados como uma substitui\u00e7\u00e3o t\u00e3o esperada para o \"antiquado e ruim\" SBC, que est\u00e1 longe de ser t\u00e3o ruim quanto \u00e9 frequentemente considerado.<\/p>\n<p>Descobriu-se que as limita\u00e7\u00f5es artificiais dos stacks Bluetooth em rela\u00e7\u00e3o \u00e0 taxa de bits do SBC podem ser contornadas, de modo que o SBC n\u00e3o fica atr\u00e1s do aptX HD. Eu assumi a iniciativa e fiz um patch para o firmware do LineageOS: <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/455316\/\">Modificamos a pilha Bluetooth para melhorar o som em fones de ouvido sem os codecs AAC, aptX e LDAC<\/a><\/noindex><\/p>\n<p>Mais informa\u00e7\u00f5es podem ser encontradas nos sites <noindex><a rel=\"nofollow\" href=\"https:\/\/www.soundguys.com\/\">SoundGuys<\/a><\/noindex> e <noindex><a rel=\"nofollow\" href=\"http:\/\/soundexpert.org\/\">SoundExpert<\/a><\/noindex>.<\/p>\n<p><b>B\u00f4nus:<\/b> <noindex><a rel=\"nofollow\" href=\"https:\/\/files.catbox.moe\/29l4kd.zip\">encoder de refer\u00eancia SBC, informa\u00e7\u00f5es sobre a stream A2DP e arquivos de teste<\/a><\/noindex>. Este arquivo costumava ser disponibilizado no site do Bluetooth publicamente, mas agora est\u00e1 acess\u00edvel apenas para aqueles que ingressaram no Bluetooth SIG.<\/p>\n<p>Fonte: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/post\/427997\/\">habr.com<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0418\u0437-\u0437\u0430 \u043c\u0430\u0441\u0441\u043e\u0432\u043e\u0433\u043e \u0432\u044b\u043f\u0443\u0441\u043a\u0430 \u0441\u043c\u0430\u0440\u0442\u0444\u043e\u043d\u043e\u0432 \u0431\u0435\u0437 \u0430\u0443\u0434\u0438\u043e\u0440\u0430\u0437\u044a\u0435\u043c\u0430 3.5 \u043c\u043c \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u044b\u0435 Bluetooth-\u043d\u0430\u0443\u0448\u043d\u0438\u043a\u0438 \u0434\u043b\u044f \u043c\u043d\u043e\u0433\u0438\u0445 \u0441\u0442\u0430\u043b\u0438 \u043e\u0441\u043d\u043e\u0432\u043d\u044b\u043c \u0441\u043f\u043e\u0441\u043e\u0431\u043e\u043c \u043f\u0440\u043e\u0441\u043b\u0443\u0448\u0438\u0432\u0430\u043d\u0438\u044f \u043c\u0443\u0437\u044b\u043a\u0438 \u0438 \u043e\u0431\u0449\u0435\u043d\u0438\u044f \u0432 \u0440\u0435\u0436\u0438\u043c\u0435 \u0433\u0430\u0440\u043d\u0438\u0442\u0443\u0440\u044b. \u041f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u0438 \u0431\u0435\u0441\u043f\u0440\u043e\u0432\u043e\u0434\u043d\u044b\u0445 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432 \u043d\u0435 \u0432\u0441\u0435\u0433\u0434\u0430 \u043f\u0438\u0448\u0443\u0442 \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u044b\u0435 \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440\u0438\u0441\u0442\u0438\u043a\u0438 \u0442\u043e\u0432\u0430\u0440\u0430, \u0430 \u0441\u0442\u0430\u0442\u044c\u0438 \u043e Bluetooth-\u0430\u0443\u0434\u0438\u043e \u0432 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0435 \u043f\u0440\u043e\u0442\u0438\u0432\u043e\u0440\u0435\u0447\u0438\u0432\u044b, \u043c\u0435\u0441\u0442\u0430\u043c\u0438 \u043d\u0435\u043a\u043e\u0440\u0440\u0435\u043a\u0442\u043d\u044b, \u043d\u0435 \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u044b\u0432\u0430\u044e\u0442 \u043e \u0432\u0441\u0435\u0445 \u043e\u0441\u043e\u0431\u0435\u043d\u043d\u043e\u0441\u0442\u044f\u0445, \u0438 \u0447\u0430\u0441\u0442\u043e \u043a\u043e\u043f\u0438\u0440\u0443\u044e\u0442 \u043e\u0434\u043d\u0443 \u0438 \u0442\u0443 \u0436\u0435 \u043d\u0435 \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0443\u044e \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-35145","post","type-post","status-publish","format-standard","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0418\u0437-\u0437\u0430 \u043c\u0430\u0441\u0441\u043e\u0432\u043e\u0433\u043e.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/audio-cherez-bluetooth-maksimalno-podrobno-o-profilyah-kodekah-i-ustrojstvah\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"pt_PT\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0410\u0443\u0434\u0438\u043e \u0447\u0435\u0440\u0435\u0437 Bluetooth: \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043e \u043f\u0440\u043e\u0444\u0438\u043b\u044f\u0445, \u043a\u043e\u0434\u0435\u043a\u0430\u0445 \u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u0445 | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0418\u0437-\u0437\u0430 \u043c\u0430\u0441\u0441\u043e\u0432\u043e\u0433\u043e.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/audio-cherez-bluetooth-maksimalno-podrobno-o-profilyah-kodekah-i-ustrojstvah\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:02:32+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:02:32+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47\u00c1udio via Bluetooth: tudo sobre perfis, codecs e dispositivos | ProHoster","description":"Devido \u00e0 massifica\u00e7\u00e3o.","canonical_url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/audio-cherez-bluetooth-maksimalno-podrobno-o-profilyah-kodekah-i-ustrojstvah","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pt_PT","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0410\u0443\u0434\u0438\u043e \u0447\u0435\u0440\u0435\u0437 Bluetooth: \u043c\u0430\u043a\u0441\u0438\u043c\u0430\u043b\u044c\u043d\u043e \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u043e \u043e \u043f\u0440\u043e\u0444\u0438\u043b\u044f\u0445, \u043a\u043e\u0434\u0435\u043a\u0430\u0445 \u0438 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0430\u0445 | ProHoster","og:description":"\u0418\u0437-\u0437\u0430 \u043c\u0430\u0441\u0441\u043e\u0432\u043e\u0433\u043e.","og:url":"https:\/\/prohoster.info\/pt\/blog\/administrirovanie\/audio-cherez-bluetooth-maksimalno-podrobno-o-profilyah-kodekah-i-ustrojstvah","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:02:32+00:00","article:modified_time":"2019-10-31T19:02:32+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35145","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-21 22:04:30","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:09:54","updated":"2026-01-21 22:04:30","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/35145","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/comments?post=35145"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/posts\/35145\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/media?parent=35145"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/categories?post=35145"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pt\/wp-json\/wp\/v2\/tags?post=35145"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}