как получить пакеты bluetooth A2DP на windows x64? - PullRequest
2 голосов
/ 03 апреля 2012

Я разработал схему, которая может записывать данные и одновременно отправлять данные, используя профиль Bluetooth a2dp.Моя схема является источником, а компьютер является приемником.Моя главная цель - получить эти данные и обработать их в Matlab.Я изучил пакеты A2DP, и у меня есть краткое представление о том, как декодировать пакеты с использованием кодека SBC.Моя главная проблема заключается в том, что я не могу получить эти пакеты, используя термин тера.У меня такое ощущение, что тера не должна принимать a2dp пакеты.Если да, какое программное обеспечение я могу использовать?Возможно ли использовать Matlab?

В качестве альтернативы, когда я пытаюсь использовать синий soleil IVT, я могу воспроизвести аудиофайл на компьютере.но, к сожалению, он не позволяет мне перейти на matlab.

Любые другие способы, которыми я могу это реализовать ??

Спасибо

РЕДАКТИРОВАТЬ: Хорошо, я вижу, есть SDKобеспечивается IVT bluesoleil, но есть только две функции, связанные с A2DP.Я думаю, что это не очень помогает мне.Любая подсказка о том, как мне их декодировать?Ссылка: Раздел 6.3.7.2 - Bluesoleil SDK )

1 Ответ

1 голос
/ 23 апреля 2012

Поскольку я не получил никакого ответа, я упомяну то, что знаю после краткого исследования об A2DP. Во-первых, структуры пакетов a2dp используют формат пакета, определенный AVDTP, который можно найти в структуре спецификации bluetooth. Эта структура пакета включает в себя пакет данных, в который встроен кодек. Этот кодек может быть или SBC (кодирование поддиапазона), или MPEG v1 / 2.

По умолчанию A2DP использует SBC. Чтобы узнать больше о SBC, обратитесь к спецификации Bluetooth для A2DP на bluetooth.org. Я приложу ссылки ниже. В спецификации A2DP есть раздел, в котором точно объясняется, как кодировать и декодировать аудиосигналы. При декодировании вы получаете сигналы PCM, которые, я уверен, вы знаете, что с этим делать :). Мне пришлось придерживаться SBC, поскольку мой аппаратный модуль (bluegiga wt-32) не поддерживает MPEG: (.

Говоря конкретно о моем случае, мне пришлось создать код C для получения пакетов AVDTP из-за отсутствия функциональности a2dp в matlab. Пакеты данных, которые были декодированы в C, и аудиоинформация (массивы pcm) были дополнительно переданы в мое рабочее пространство matlab с использованием некоторых методов тупой компоновки, и, таким образом, наконец, мой matlab смог передать его с помощью функции wavplay / audioplay. Надеюсь, это поможет.

[1] спецификация ядра Bluetooth v2.1 - https://www.bluetooth.org/docman/handlers/downloaddoc.ashx?doc_id=241363
[2] bluetooth a2dp 1.2 spec- https://www.bluetooth.org/docman/handlers/DownloadDoc.ashx?doc_id=66605
[3] - AVDTP - www.bluetooth.org/docman/handlers/DownloadDoc.ashx?doc_id=66607

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...