android蓝牙 相机,android – 如何通过蓝牙访问相机?
简答:你无法通过这种方式获得直接实例.那就是 – 你不会得到一个你可以正常使用的相机对象.相反,你将不得不假装相当数量.答案很长:您将不得不在两个设备之间建立蓝牙客户端/主机关系.在你完成之后,你将设置一个作为这种关系的“控制”方面,另一个作为相机.我们称之为1和2.1将具有UI(拍照按钮等).按下按钮时,命令将沿着线向下移动到2.然后,当命令请求并将一些数据传递回1时,将执行2.在拍照的情况下:
简答:
你无法通过这种方式获得直接实例.那就是 – 你不会得到一个你可以正常使用的相机对象.相反,你将不得不假装相当数量.
答案很长:
您将不得不在两个设备之间建立蓝牙客户端/主机关系.在你完成之后,你将设置一个作为这种关系的“控制”方面,另一个作为相机.我们称之为1和2.
1将具有UI(拍照按钮等).按下按钮时,命令将沿着线向下移动到2.
然后,当命令请求并将一些数据传递回1时,将执行2.
在拍照的情况下:
用户按下1中的拍照按钮.1发送命令“拍照”到2. 2然后使用此命令按照您的指示拍摄照片. 2然后通过蓝牙将该图片的文件结果发回.
对于进行图像预览 – 在实际点击“捕获”之前看到图像是什么 – 我认为你不会有太多运气.您可以按照上述模式执行此操作,但我怀疑这将是一次顺畅的体验.
编辑:
经过与Alex讨论的一些讨论,以及对此的一些思考,我有一些预览的想法.
关注:
如果你可以从2到1大约10-15 fps,你可以有一个合理的预览.根据您的需要/用例,可能会更少.
你需要实施
Camera.PreviewCallback:
onPreviewFrame(byte[] data, Camera camera); :
http://developer.android.com/reference/android/hardware/Camera.PreviewCallback.html#onPreviewFrame(byte [],android.hardware.Camera),并注册你的回调
相机
setPreviewCallback(Camera.PreviewCallback cb)
您需要缩减采样(可能,我不确定onPreviewFrame中提供的大小)以保持较低的内容大小.
4)发送.
我不完全确定这会起作用,因为我没有测试它,但这是我看到的最直接的路线.
另外一个选项:
进入JNI并处理整个事情.几乎可以肯定,在速度方面,这项工作可以达到这个水平.我对如何做到这一点有一些模糊的想法,但这将是一项相当重要的工作.
更多推荐
所有评论(0)