Як змусити Bluetooth-обладнання, сумісне з aptX, працювати з Ubuntu?


24

У мене є гарнітура, яка підтримує aptX, і я хочу використовувати її для відтворення музики з максимально високою якістю звуку, яку гарнітура технічно може забезпечити в Ubuntu. Як я можу це зробити?

Хоча A2DP підтримує безліч кодеків за бажанням і розширюється для підтримки інших визначених виробником кодеків. AptX не тільки може похвалитися тим, що забезпечує кращу якість звуку, ніж конкуренція, але й рекламує, щоб зменшити затримку, щоб звук синхронізував губи під час перегляду відео.

Ось мої запитання:

  • Як я можу змусити Bluetooth-обладнання, що підтримує aptX, використовувати цей кодек в Ubuntu?
    • Які рішення доступні?
  • Як я можу перевірити і перевірити встановлене з'єднання для кодека, який він використовує?

Я хотів би зазначити, хоча це може виглядати як спонсорський пост, це не так. На мою думку, FLAC та Opus мають стати золотим стандартом, але, на мій досвід, пристрої з підтримкою цих кодеків зараз недоступні.

Відповіді:


41

Редагувати 2018-10-27: Робота з підтримкою LDAC, APTX (-HD) та AAC для PulseAudio. На GitHub від EHfive є сховище з виправленнями, а також PPA на 18.04 і далі, перегляньте Wiki для отримання додаткової інформації. Схоже, патчі прибудуть вгору за течією в якийсь момент часу. Я перевірив PPA 18.04, він працює, хоча він замінює PA 11.1 на 12, встановлює новішу версію ffmpeg та x265.

Редагувати 2017-12-18: Я, мабуть, пропустив це кілька тижнів тому, але схоже, що в FFmpeg зараз є кодер . Наскільки мені відомо, наразі не існує зручного для користувача рішення.

Коротка відповідь

Вам доведеться використовувати спеціальні фірмові ключі Bluetooth. Погляньте на те, як тоді я можу використовувати aptX? розділ цієї відповіді або перегляньте веб-сайт aptx.com для передавачів .


Більш довга відповідь

Питання ліцензування

APTX кодек є власністю стандарту, який CSR отримав від APT ліцензування ТОВ з метою розробки та ринку APTX харчування з високою точністю Bluetooth аудіо рішень з допомогою компонента брендингу . Ви праві, це стратегія для КСВ для продажу ексклюзивних фішок.

Я знайшов таке положення під час перегляду ліцензійної угоди про декодер :

  • реалізуйте Програмне забезпечення як прошивку в захищеному коді, вбудованому в Продукт ліцензіата

Хоча це не дає відповіді на запитання щодо кодера, я б сказав, що ситуація є принаймні такою ж складною, як і з іншими фірмовими кодеками та компонентами програмного забезпечення ( 1 , 2 , 3 ).

Як я можу тоді використовувати aptX?

Ви можете використовувати його, тільки не як безкоштовне програмне рішення.

Ви можете знайти спеціальні фірмові ключі Bluetooth, так звані aptX-передавачі. Це не типові Bluetooth-нано-чи піко-розміри Bluetooth, а пристрої USB Audio Class. (Перегляньте розділ класів пристроїв у статті USB у Вікіпедії для отримання додаткової інформації.) Це означає, що ці пристрої будуть розпізнані як звукові карти та не забезпечать з'єднання Bluetooth з хост-комп'ютером. Також є один головний недолік: вони коштують майже в 10 разів дорожче звичайних ключів Bluetooth.

Список передавачів aptX або Bluetooth-ключів з підтримкою aptX в алфавітному порядку:

  • Creative BT-D1 USB-передавач Bluetooth, Bluetooth 2.1 + EDR
  • Creative BT-W1 / BT-W2 USB, Bluetooth 2.1 + EDR
  • Sennheiser BTD 500 USB, Bluetooth 3.0
  • Avantree BTDG-50-WGR, Bluetooth 4.1 з aptX LL

(Доповнення вітаються! Я хотів би побачити - бажано, дешевші - альтернативи.)

Перевірте налаштований кодек з'єднання

Встановіть bluez-hcidumpта запустіть sudo hcidump avdtp, а потім підключіть пристрій та шукайте конфігурацію. Далі це результат, який я отримав (див. Також ), схоже на те, що він спробував aptX, AAC і нарешті влаштувався на SBC.

$ sudo hcidump avdtp
HCI sniffer - Bluetooth packet analyzer ver 5.35
device: hci0 snap_len: 1500 filter: 0x400
< AVDTP(s): Discover cmd: transaction 11 nsp 0x00
> AVDTP(s): Discover rsp: transaction 11 nsp 0x00
    ACP SEID 5 - Audio Sink
    ACP SEID 3 - Audio Sink
    ACP SEID 1 - Audio Sink
< AVDTP(s): Capabilities cmd: transaction 12 nsp 0x00
    ACP SEID 5
> AVDTP(s): Capabilities rsp: transaction 12 nsp 0x00
    Media Transport
    Media Codec - non-A2DP (aptX)
      16kHz 32kHz 44.1kHz 48kHz 
      Stereo 
< AVDTP(s): Capabilities cmd: transaction 13 nsp 0x00
    ACP SEID 3
> AVDTP(s): Capabilities rsp: transaction 13 nsp 0x00
    Media Transport
    Media Codec - MPEG-2,4 AAC
      MPEG-2 AAC LC MPEG-4 AAC LC 
      8kHz 11.025kHz 12kHz 16kHz 22.05kHz 24kHz 32kHz 44.1kHz 48kHz 
      1 2 Channels
      320000bps VBR
    Content Protection
      02 00 
< AVDTP(s): Capabilities cmd: transaction 14 nsp 0x00
    ACP SEID 1
> AVDTP(s): Capabilities rsp: transaction 14 nsp 0x00
    Media Transport
    Media Codec - SBC
      16kHz 32kHz 44.1kHz 48kHz 
      Mono DualChannel Stereo JointStereo 
      4 8 12 16 Blocks
      4 8 Subbands
      SNR Loudness 
      Bitpool Range 2-53
    Content Protection
      02 00 
< AVDTP(s): Set config cmd: transaction 15 nsp 0x00
    ACP SEID 1 - INT SEID 1
    Media Transport
    Media Codec - SBC
      44.1kHz 
      JointStereo 
      16 Blocks
      8 Subbands
      Loudness 
      Bitpool Range 2-53
> AVDTP(s): Set config rsp: transaction 15 nsp 0x00
< AVDTP(s): Open cmd: transaction 0 nsp 0x00
    ACP SEID 1
> AVDTP(s): Open rsp: transaction 0 nsp 0x00
< AVDTP(s): Start cmd: transaction 1 nsp 0x00
    ACP SEID 1
> AVDTP(s): Start rsp: transaction 1 nsp 0x00
< AVDTP(m): ver 2 cc 0 pt 1 seqn 0 time 0 ssrc 1
< AVDTP(m): ver 2 cc 0 pt 1 seqn 1 time 896 ssrc 1

Вирішення проблем

  • A2DP однонаправлений, ви можете слухати музику лише з A2DP . Для голосових дзвінків використовуйте профілі HSP / HFP.
  • Якщо навушники або пристрої не розпізнаються або перераховані як пристрій виводу, наприклад у VLC, спробуйте переключитися на іншу звукову карту та назад за допомогою звукових налаштувань. Тоді пристрої слід розпізнати.

Що з телефоном Ubuntu?

Я не знаю, чи підтримка Ubuntu на телефонах підтримуватиме цей кодек. Документи з КСВ кажуть, що рішення доступні для виробників пристроїв Android, тому я припускаю, що виробники телефонів вирішують, як і як. Звичайно, Ubuntu Touch, як правило, підтримує гарнітуру Bluetooth, і мені вдалося з’єднати свій Nexus 4 під керуванням Ubuntu з гарнітурою, яку я протестував.


Мій досвід та тести

Тестовані модулі Bluetooth і ключі:

  • Настільний з nano Bluetooth 2.1 та 4.0 ключами, Lenovo T530 із вбудованим модулем. - A2DP досяг майже такого ж рівня якості, що і BTD 500, під час відтворення музики з файлів FLAC. Звук із фільмів синхронізувався з 14.04.
  • Sennheiser BTD 500 USB. - Спарювання займає стільки ж, скільки й у звичайних ключів, не здатних на NFC.

Тестовані гарнітури:

  • Philips Fidelio M1BTBL, Bluetooth 4.0. - Відмінно працює з усіма ключами та модулями.
  • Sony MDR-10RBT, Bluetooth 3.0, NFC. - Відмінно працює з усіма ключами та модулями.
  • Creative Sound Blaster EVO ZxR, Bluetooth 2.1, NFC. - Цей був найкращий діапазон прийому з усіх трьох, але не зміг підключитися до BTD 500.

1
Як ви перевірили, чи пристрій фактично підключається за допомогою aptX замість SBC?
псевдосавант

Avantree також виготовляє один, модель BTDG-50-WGR. Ні, я не працюю на них, це просто гарна інформація.
Mtl Dev

З цікавості і, безумовно, не тому, що я ніколи не платив би 40 доларів за вигадливий ключ, ніхто ніколи не реконструював бінарну / створену альтернативу, яка б з'єднувалась як aptx, яка була б доступна в деяких тінистих місцях?
Джезор

1
@Jezor Я не шукав тінистих місць, тому що я не мав такої великої зацікавленості чи технічної майстерності, і я тоді не міг нічого знайти про це. Можливо, деякі люди це зробили, я не знаю, і я скоріше віддаю перевагу рішенню з відкритим кодом, як я вже писав. LDAC робить aptX застарілим і наскільки я знаю більш відкритим.
LiveWireBT

Azio BTD-v401 також рекламує можливості aptX, але я не можу коментувати його сумісність з Ubuntu або будь-яким Linux для цього питання.
kapad
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.