用于手机的远程蓝牙摄像头触发器
Posted
技术标签:
【中文标题】用于手机的远程蓝牙摄像头触发器【英文标题】:Remote bluetooth camera trigger for phone 【发布时间】:2020-10-10 16:07:38 【问题描述】:我想通过模拟 BLE 键盘为我的手机构建一个相机触发器,该键盘将音量调高键发送到通过蓝牙连接的手机。我想要这个是因为我想触发原生相机应用,而不是嵌入式相机视图。
我不知道所使用的技术,但为了简单起见,我希望它成为我 Macbook 中的命令行实用程序,例如 Go 或 Node.js。
我查看了 Node.js 的 Noble,它似乎并不以发射为导向,并找到了 projects for arduino,并找到了 couple of *** questions 提出相同的问题,但还没有确定的结果。
显然,Node.js 的 Bleno 项目可能更适合,但显然它已经非常过时了。
有人能给我指出正确的方向吗?
谢谢
编辑
我能够使用 Bleno 发出 0xEA 和 0xE9(显然是调高音量和调低音量),并且使用 LightBlue app 我可以检查是否接收到这些消息,但是,通过手机的蓝牙连接到 MacBook不会增加/减少音量。
编辑 找到这个用 Swift 3 编写的 outdated project 以供参考
编辑显然pybluez 项目看起来可能是一个不错的选择
【问题讨论】:
HID 需要绑定。然而 bleno 并不真正支持正确的粘合。 【参考方案1】:你应该可以使用终端来做这件事。例如。在 Windows 中,您可以使用 start microsoft.windows:camera
启动相机应用
即使在 Mac 中也应该有类似的东西。试试看。否则,请转到存储相机应用程序的根目录。然后从代码中触发。
【讨论】:
很抱歉,这与我的要求相去甚远【参考方案2】:您需要创建一个蓝牙 HID(或 HID over GATT)外围设备,您的手机可以连接到该外围设备并从中接收按键命令。
这里有一个项目是用 Raspberry Pi 完成的:
https://gist.github.com/ukBaz/a47e71e7b87fbc851b27cde7d1c0fcf0#gistcomment-2997623
不幸的是,底层蓝牙库不会移动到您的 Mac Book。
此处记录了 HID 协议:https://github.com/jpbrucker/BLE_HID/blob/master/doc/HID.md
【讨论】:
【参考方案3】:总而言之,我认为您的意思是您想让笔记本电脑/台式机上的 cli 应用程序通过蓝牙连接到您的手机,并从笔记本电脑/台式机键盘模拟音量键。
安卓:
为此,您需要:
Python 3.5 或更高版本 PyBluez 键盘(Python 模块/API) android 工作室 Java 开发工具包 8(最好是 11 或 14) Android BLE因此,为了做到这一点,我将使用 python3 创建一个 cli 应用程序,并使用键盘模块记录笔记本电脑/台式机上的按键,然后通过 PyBluez 模块将其传输(蓝牙)到您的手机。然后您的手机通过 Android BLE 接受蓝牙数据,然后模拟音量按钮按下。
免责声明: 这仅适用于手机已与您的电脑配对且仅适用于 4.4.4 及更高版本的 Android 手机。
一些可以帮助您的链接: Bluetooth lib for python 3 , detect key press in python? , Create a socket for 4.0 bluetooth transmission
ios:
为此,您需要:
Python 3.5 或更高版本 PyBluez 键盘(Python 模块/API) XCode 斯威夫特 核心蓝牙模块因此,为了做到这一点,我将使用 python3 创建一个 cli 应用程序,并使用键盘模块记录笔记本电脑/台式机上的按键,然后通过 PyBluez 模块将其传输(蓝牙)到您的手机。然后你的手机通过核心蓝牙模块快速接受蓝牙数据,然后模拟音量按钮按下。
免责声明: 手机和笔记本电脑/台式机必须在运行之前配对,这听起来很明显,但有些人可能会忽略这一点。
一些可以帮助您的链接: iOS use the volume buttons as input , https://developer.apple.com/documentation/corebluetooth/transferring_data_between_bluetooth_low_energy_devices
【讨论】:
以上是关于用于手机的远程蓝牙摄像头触发器的主要内容,如果未能解决你的问题,请参考以下文章