PureBasic - форум

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » PureBasic - форум » PureBasic для Windows » Упроавление по Bluetooth


Упроавление по Bluetooth

Сообщений 1 страница 9 из 9

1

Написал аудио плеер для своей программы и понял, что что-то не хватает. А не хватает способности программы захватывать кнопоки управления в Bluetooth наушниках.
Может, кто знает что-нибудь по этой теме?

0

2

да уж, видимо, я что-то спросил неприличное )) Никто даже не попробовал ответить  :flag:

0

3

Ну вероятно никто из тех кто прочитал не пытался никогда что то подобное использовать.
Искать нужно более широко. По сути всё что найдётся на эту тему для Си, будет применимо к Пб.

Отредактировано useful (10.09.2024 13:27:01)

0

4

я уж понял. На папе форуме тоже тишина.
Мне вообще везет в последнее время с советами.
Прошел утомительную регистрацию на FileZilla форуме ради одного вопроса и тоже тихо ))
Вообщем, 3:0 не в мою пользу.
По теме- если что накопаю, обязательно поделюсь здесь.

0

5

Goga написал(а):

захватывать кнопоки управления в Bluetooth наушниках.

Как в системе определяются эти кнопки?
Может как клавиатура?

0

6

Пётр написал(а):

Как в системе определяются эти кнопки?
Может как клавиатура?

Петр, твоя идея очень хороша.  Вот ее реализация:

Код:

OpenWindow(0, 100, 100, 300, 200, "Bluetooth наушники")

Repeat
  
;   If GetAsyncKeyState_(#VK_VOLUME_UP) & $8000
;     Debug "Volume Up pressed"
;     Delay(100)
;   EndIf
;   
;   If GetAsyncKeyState_(#VK_VOLUME_DOWN) & $8000
;     Debug "Volume Down pressed"
;      Delay(100)
;   EndIf
;   
;   If GetAsyncKeyState_(#VK_VOLUME_MUTE) & $8000
;     Debug "Volume Mute pressed"
;      Delay(100)
;   EndIf
  
  event.l = WindowEvent()
  
  If event = #WM_KEYDOWN
    Select EventwParam()
      Case #VK_MEDIA_NEXT_TRACK
        Debug "Next track button pressed"
        
      Case #VK_MEDIA_PREV_TRACK
        Debug "Previous track button pressed"
        
      Case #VK_MEDIA_PLAY_PAUSE
        Debug "Play/Pause button pressed"
        
      Case #VK_VOLUME_MUTE
        Debug "Mute button pressed"
        
      Case #VK_VOLUME_DOWN
        Debug "Volume down button pressed"
        
      Case #VK_VOLUME_UP 
        Debug "Volume up button pressed"
        
    EndSelect
  EndIf

Until event = #PB_Event_CloseWindow

Вот только громкость на наушниках не работает. Хотя на клавиатуре все отлично.

Отредактировано Goga (12.09.2024 04:16:34)

0

7

Goga написал(а):

да уж, видимо, я что-то спросил неприличное )) Никто даже не попробовал ответить

Я к примеру ничего не видел по этому направлению. Даже технически не понимаю, что, так и к чему этот порт прилеплен.

0

8

Вы после этой строки

Goga написал(а):

If event = #WM_KEYDOWN

выводите все сообщения, может там есть какието другие.
глянь в калбаке для окна, оконном обработчике, там все сообщения выводятся, может выловится чтото.

0

9

Оказалось, что идея ловить кнопки мультимедийной клавы вместо кнопок Bluetooth наушников не всегда работает. Работает на "старых", но не работает на "новых" наушниках, хотя адаптер bluetooth одинаковый во всех случаях.

balex1978 написал(а):

выводите все сообщения, может там есть какието другие.
глянь в калбаке для окна, оконном обработчике, там все сообщения выводятся, может выловится чтото.

если ты имел ввиду вот такой код:

Код:
#WM_APPCOMMAND = $319
#APPCOMMAND_MEDIA_PLAY_PAUSE = 14

Procedure WindowCallback(WindowID, Message, wParam, lParam)
  Protected appCommand

  If Message = #WM_APPCOMMAND
    appCommand = lParam >> 16 & $FFFF
;     Select appCommand
;       Case #APPCOMMAND_MEDIA_PLAY_PAUSE
;         Debug "Play/Pause button pressed"
;     EndSelect
  Else 
    Debug "Message="+Message 
  EndIf

  ProcedureReturn #PB_ProcessPureBasicEvents
EndProcedure

If OpenWindow(0, 100, 100, 400, 300, "Bluetooth Headphone Button Catcher")
  SetWindowCallback(@WindowCallback())

  Repeat
    Event = WaitWindowEvent()
  Until Event = #PB_Event_CloseWindow
EndIf

то там тоже тишина. А вот ютуб замечательно реагирует на кнопочки наушников.

0


Вы здесь » PureBasic - форум » PureBasic для Windows » Упроавление по Bluetooth