問題タブ [a2dp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
1553 参照

android - Android Intent: Bluetooth A2DP デバイスがいつ接続されたかを検出します (a2dp ルーティングがアクティブかどうかではありません)。

A2DP であるかどうかにかかわらず、Bluetooth デバイスが電話に接続されていることをどのように確認できますか?

このチュートリアルでは、Bluetooth 接続をリッスンするための非常にわかりやすいガイドを提供します。

これを使用して、接続されている Bluetooth デバイスが A2DP タイプかどうかを判断したいと考えています。

AudioManagerメソッドisBluetoothA2dpOn()がありますが、A2DPデバイスが接続されているからといって、オーディオがそれを介してルーティングされているという意味ではないため、これがすぐにtrueを返すとは思わない(または、まったく確実に)とは思わない?

接続されているデバイスのタイプに関する情報は、受信したインテントで利用できると思っていましたが (上記のチュートリアルを参照)、これに関するドキュメントが見つかりませんか?

BluetoothClassこのコードで取得できます:

しかし、ドキュメントには次のように記載されているため、それがA2DPプロファイルであるかどうかを判断するのには役立ちません。BluetoothClass

BluetoothClass は、デバイスを大まかに説明するためのヒント (たとえば、UI にアイコンを表示するため) として役立ちますが、どの Bluetooth プロファイルまたはサービスがデバイスで実際にサポートされているかを確実に説明するものではありません。createRfcommSocketToServiceRecord(UUID) および listenUsingRfcommWithServiceRecord(String, UUID) を使用して RFCOMM ソケットを作成するときに自動的に実行される SDP 要求によって、正確なサービス検出が行われます。

...これは私にはかなり無意味です。

0 投票する
2 に答える
1360 参照

android - Android Bluetooth アプリの audioManager の問題

スピーカーを制御するアプリを開発しています。アプリで音楽を再生したり、カラオケをしたり (音楽とマイクを同時に再生したり)、ユーザーに基本的な EQ を提供したりしたいと考えています。これまでの私の問題は、Bluetooth を介して音楽を再生することでした。私のアプリ:-近くのすべてのBluetoothスピーカーを検出します-それらをリストに入れます-クリックしたデバイスとペアリングし、ユーザーをBluetooth設定に送信してそれに接続します今、私の問題はBluetoothスピーカーで音楽を正常に再生しています. AudioManager を使用して、SCO 経由で再生するように設定します。

次に、音楽ファイルを再生しようとしますが、これはデバイスのスピーカーでのみ再生され、接続されている Bluetooth スピーカーでは再生されません。だから私の質問は、何が欠けているのですか? A2DP シンクについて少し読みましたが、最近のバージョンでは利用できないようです。助言がありますか?前もって感謝します。TDLR: ペアリングされた Bluetooth スピーカーで音楽を再生するにはどうすればよいですか?

0 投票する
1 に答える
1096 参照

bluez - Bluez A2DP: デフォルトのオーディオ サンプル レートを変更するにはどうすればよいですか

Bluez4 を使用して、iphone 5 から Raspberry pi オーディオ出力にオーディオをシンクしています。BLuez 4 A2DP のデフォルト設定は S16_LE、44.1kHz ステレオのようです。

Bluez に関する他の投稿と同様に、サンプル レートを動的に変更するために Select_Configuration DBus メッセージをキャッチできません。代わりに、BLuez スタックでデフォルトの A2DP サンプル レートを見つけようとすることにしました。

デフォルトのサンプルレートがどこに設定されているか知っている人はいますか? 私が最初に考えたのは、BLuez/audio/ フォルダーにあるということでしたが、デフォルトの 44.1kHz サンプル レートを変更するものは何もないようです。今、私はそれがどこに設定されているのか知りたいと思っています。

現在これを使用しています: これsudo ./a2dp-alsa --sink | aplay -c 2 -r 44100 -f S16
を使用したいですsudo ./a2dp-alsa --sink | aplay -c 2 -r 16000 -f S16

0 投票する
1 に答える
33985 参照

android - AndroidフォンをBluetoothヘッドセットに変える

Bluetooth をサポートするデバイスに root 化された Android OS があるとします。Bluetooth A2DP を介して Bluetooth スピーカーとして宣伝するアプリを作成できますか?

それが可能であれば、他のデバイスは Bluetooth サーバー アプリにペアリング/接続して、音楽/サウンドをストリーミングできます。このサーバー アプリは、音楽ストリームを取得してローカルで再生したり、Wi-Fi 経由で他のデバイスに送信したりすることもできます。これにより、理論的にはマルチルーム Bluetooth ソリューションが可能になります。

これを達成する方法はありますか?どこから始めますか?

0 投票する
0 に答える
1412 参照

android - A2DP / AVRCP 経由でメタデータを送信しようとしています

私は Android アプリに取り組んでおり、A2DP / AVRCP 経由でメタデータをカー ラジオに送信できるようにしたいのですが、車でメタデータを取得できないようです。ポッドキャスト アプリとして PocketCasts を使用していますが、アプリは問題なく動作します。

以下のコードは Pebble で動作しますが、ラジオにメタデータを表示する前に、車が追加のフィールドを予期しているようです。Android Music Metachanged Intent を使用する以外にデータを送信する他の方法があるかどうか疑問に思っています - 少しハッキーに思えます。

0 投票する
0 に答える
6915 参照

android - Lollipop で導入された新しい Bluetooth A2DP シンク機能を有効にするにはどうすればよいですか?

Nexus 5 の AOSP Android イメージを変更して、Bluetooth A2DP Sink のサポートを含めようとしています。Google は、Nexus 5 の非表示のビルド ターゲットを含めるのに十分親切であることがわかりました。

https://android.googlesource.com/device/lge/hammerhead/+/android-5.0.1_r1/car_hammerhead.mk

これには、デバイスが Bluetooth 経由で A2DP シンク サービスをアドバタイズできるようにする変更された Bluedroid 構成ファイルが含まれます。また、デバイスのクラスを Bluetooth Automative Carkit に変更し、Bluetooth.apk の構成を変更して、A2DP シンクと AVRCP コントロール サービスをサポートします。

これで、約 75% まで進みました。KitKat 電話を入手して、Nexus 5 の変更されたビルドにペアリングすることで、これをテストしました。A2DP Sink サービスを正しくアドバタイズし、KitKat 電話を A2DP Sink サービスに接続できるようにします。KitKat フォンから、Nexus 5 に音楽をストリーミングできるようにも見えました。しかし、Nexus 5 では音楽が聞こえません。Nexus 5 で HCI トラフィックをキャプチャしたところ、実際に音楽がストリーミングされていることがわかりました。電話。

問題は、Bluetooth デバイスがオーディオ ストリームを受信するが、オーディオがスピーカーにルーティングされないことです。A2DPストリームをNexus 5のスピーカーにルーティングする方法を知っている人はいますか?

0 投票する
3 に答える
29343 参照

android - A2DP プロファイルの受信機としての Android デバイス

基本的に、私が今やろうとしているのは、AndroidデバイスをA2DP受信機として使用することです。ペアリングが確立されると、Androidは送信機から受信した音を再生します。STP プロファイルを使用すると、ストリーミングの遅延が発生する可能性があるのではないかと心配しています。それで、A2DPを使いたいのですが、AndroidデバイスをA2DPの受信機として使うことは可能ですか? そしてそれを行う方法は?

0 投票する
2 に答える
4875 参照

android - Android/非Androidデバイス間でA2DPを介してオーディオを送受信する方法についてのアイデアが必要です

Bluetooth経由でオーディオを送受信できるようにする必要があり、A2DPがこれを行うものであるようです

ここに記載されているコードを使用して、携帯電話を検出してリモート Bluetooth デバイスとペアリングし、Android デバイスのすべてのオーディオ出力を Bluetooth 経由でリモート デバイスに送信する A2DP 接続を確立することができました。

以前は、RFCOMM を介して同じリモート Bluetooth デバイスと双方向のデータ通信を行うことができました (ただし、通信を開始するのは Android 携帯電話である必要がありましたが、可能であることはわかっていますが、リモート デバイスを介して行うことはできませんでした)。RFCOMM リンクが確立されると、Android デバイスはリモート デバイスにデータを送信したり、リモート デバイスからデータを受信したりできます。

私が今必要としているのは、似たようなものですが、オーディオ用です (できれば A2DP を使用しますが、仕事が完了する限り、他のものを使用してもかまいません)。SO を詮索しているときに、A2DP を介して電話で音声データを受信することはできないというヒントが得られました (少なくとも、ルート化されていない通常のものであり、ルート化は私にとってはオプションではありません) (たとえば、ここを参照)。しかし、Bluetooth を介して完全に電話をかけることができるヘッドセットも見たことがあります (まあ、実際にはワイヤレスで、Bluetooth に違いないと思います)。たとえば、電話がかかってきた場合、Bluetooth イヤホンのボタンを押すだけで、相手の話を聞くだけでなく、話すこともできます。電話をオーディオ シンクとして使用できない場合、そのようなヘッドセットはどのように機能しますか?

Bluetooth経由でオーディオデータを送信および受信するAndroidアプリを作成する方法についていくつかのアイデアが必要です(簡単にするために、Bluechatサンプルプログラムに似ていますが、テキストではなくオーディオを含むと考えてください)。(Javaを介して)それはまったく可能ですか?NDK 経由でのみ可能ですか? 市場に出回っているデバイスはどのように機能しますか? A2DPとは別のプロファイルですか?

PS: 私のテスト デバイスは、Gingerbread を搭載した Samsung Galaxy 2 (電話) と KitKat を搭載した Asus Nexus 7 (タブレット) です。ちなみに、リモート bluetooth デバイス (開発ボード) には、ボードを A2DP オーディオ ソースに変換するサンプル プロジェクトが付属しています。このサンプル プロジェクトをボード上で実行し、携帯電話とタブレットの組み込みの Bluetooth 設定を使用すると、リモート ボードとペアリングできますが、Android デバイスはオーディオを受信しません。