语音遥控器1-驱动对接

基于Hidraw 语音方案

一、什么是Hidraw

hidraw节点是linux内核提供给用户空间USB和Bluetooth人机交互节点,可以利用该节点实现usb或者蓝牙通信,进一步可以完成其他功能,例如设备固件升级等。

参考如下:

Linux之访问/dev/hidraw

https://blog.csdn.net/mzm2438975656/article/details/108881442

二、原理说明

Hidraw 语音方案基于系统的 hidraw driver,通过后台的 service,将原本由蓝牙协议栈写入 uhid 节点的数据(按键和语音)"拷贝"一份,从而可以实时获取语音数据。

同时,这个 service 中还将启用 Unix socket server,将编码的语音数据解码后发送给系统的 audio hal 层。

系统的录音软件,比如 科大某飞,思某驰 则可以通过标准的 android 录音流程获得到解码后的语音数据,进而实现语音识别功能。

三、代码实现

参考厂商提供的代码,此处略。

相关推荐
码匠许师傅9 小时前
【C++ 面试真题】C++ 的 const 和 constexpr 有什么区别?
c++·面试
坚持编程的菜鸟11 小时前
模拟实现memmove
c语言·算法·模拟实现memmove
果果燕12 小时前
实习笔记(一):NFS、Samba、VNC、Git、CMake、systemd、内核、交叉编译
linux·arm开发·c++·笔记·git
坚持编程的菜鸟12 小时前
编写判断大小端程序
c语言·算法·判断大小端
牛艺翔13 小时前
C++基础
开发语言·c++
键盘会跳舞13 小时前
C++ :容器适配器stack源码级拆解
开发语言·c++··stack·先进后出
不负岁月无痕14 小时前
简单理解操作系统结构
java·linux·c语言·开发语言·c++·面试
余额瞒着我当琳14 小时前
C++模板初阶与STL初探
android·java·c++
萧瑟其中~14 小时前
多线程锁详解:互斥锁·自旋锁·读写锁(CAS + futex 原理)
开发语言·c++
qq_4480111614 小时前
C语言中的指针函数和函数指针
java·c语言·开发语言