Visual Basic 中学校 掲示板 投稿内容
タグのない投稿を抽出 統計 RSS

Visual Basic 中学校 > 投稿一覧 >

Bluetoothの再生ボタンなど、特殊なキー操作の取得について

タグの編集...

投稿者 あげは   (学生)   投稿日時 2017/4/22 20:59:06
表題の通りなのですが、VBでBluetooth機器(ここで想定しているのはスピーカーです)の再生ボタン押下のイベントを取得することはできるのでしょうか。

投稿者 魔界の仮面弁士   (社会人)   投稿日時 2017/4/24 02:00:54
> Bluetooth機器
SPP プロファイルでの簡単な送受信ぐらいしかやったことが無いので、
あまり詳しくはないですが:


> Bluetooth機器(ここで想定しているのはスピーカーです)の再生ボタン
音量操作や電源ボタンではなく、再生ボタンですか?
ヘッドフォンやオーディオプレイヤーに付いているのは見かけますが、
スピーカーに付いているのは見たことが無いので、イメージできないです。

再生ボタンというのが、たとえば HID プロファイルを持ったマルチメディアキーボードなら、
VK_PLAY(&HFA) ないしは VK_MEDIA_PLAY_PAUSE(&HB3) の仮想キーコードが
送出されるはずなので、OnKeyDown 等にて Keys.Play とか Keys.MediaPlayPause として
受け取れそうですが、今回は関係ないでしょうね。

とりあえず、AVRCP プロファイルがサポートされているデバイスだとすれば、
ボタン押下時に "AVRCP PLAY" のパススルーコマンドが送出されるのかもしれません。
(具体的な手順までは調べていないので、サンプル等は書けないですが)


> 再生ボタン押下のイベントを取得することはできるのでしょうか。 
機器次第だと思います。「スピーカーの再生ボタン」の仕様によるものなので
スペックシートやメーカーサイトなどに情報が無いのであれば、
実際に取得できるかどうかは何とも言えないところです。

その機器が、再生ボタン押下時に Bluetooth での通信コマンドとして
送出される仕様になっていないのなら、完全にお手上げでしょう。

そもそも、お使いの機器がサポートしているのはどの Bluetooth プロファイルなのでしょうか。
(一つの機器が複数のプロファイルをサポートしていることもあります)

投稿者 (削除されました)   ()   投稿日時 2017/4/24 21:29:31
(削除されました)

投稿者 あげは   (学生)   投稿日時 2017/4/24 22:00:31
情報量が少なくて申し訳ありません。


今回イベント取得を試みるBluetooth機器は以下のものです。
https://www.taotronics.jp/TT-SK09-Bluetooth-speaker.html

説明書によると、対応プロファイルは
A2DP,AVRCP,HSP,HFP となっていました。

>再生ボタンというのが、たとえば HID プロファイルを持ったマルチメディアキーボードなら、
当初、同様のことを考え、以下のようなキー取得プログラムを書いたのですが、再生ボタンでの反応はありませんでした。

(デザイナーでフォームにLabel1を設置)
Public Class Form1
    Private Sub Form1_PreviewKeyDown(sender As Object, e As PreviewKeyDownEventArgs) Handles Me.PreviewKeyDown
        Label1.Text = e.KeyCode
    End Sub
End Class

当然ながら、音楽再生アプリ(Windows Media Player)等では認識しているようで、一時停止や再生が可能です。

もしイベント取得が可能であれば、最終的にはYouTubeの画面に対してキーコマンドを送信し、再生・一時停止ができればと思っています(しょうもない目標ですみません)

遅れながら、 魔界の仮面弁士さん、ご回答ありがとうございます。
AVRCP PLAYについて、自分でも調べてみます。