蓝牙
大道至简道非恒道
这个作者很懒,什么都没留下…
展开
-
音频流的蓝牙传输
关于音频流的蓝牙传输可以通过两个方式:1、通过PCM接口来传送通过音频播放器(eg: Media Player)来打开音频文件,调用Audio驱动,音频文件通过解码后,由PCM输出到Host端蓝牙模块的PCM输入端,接着,经过蓝牙模块的处理后,由RF无线模块发送给Client 端蓝牙设备。Client 端蓝牙设备经由无线接收模块后,滤波,稳压,经微处理芯片处理后,直接由Speaker播放。原创 2018-05-17 15:28:59 · 10581 阅读 · 0 评论 -
为什么CPU到蓝牙的音频传输都是用的PCM接口呢
一般手机cpu到蓝牙的通话实时音频传输都使用pcm,MP3之类的音频走的是urat/usb之类的其他接口。真正原因我也不能确定,不过有几个情况可能是原因之一。1,pcm和iis的区别在于,pcm一般是固定8k的采样率的单声道音频,最早似乎和固定电话的编码有直接关系,之后所有的话音编码几乎都是在pcm编码基础上再次编码得到的。而iis则多了一个专门的信号线,采样率也可以配置到较高的频率,如4原创 2018-05-17 15:28:38 · 6778 阅读 · 2 评论 -
linux蓝牙驱动代码阅读笔记
linux蓝牙驱动代码阅读笔记文章来自:http://blog.csdn.net/absurd/article/details/1852337昨天看了一下介绍蓝牙协议文档,今天索性对照看了看kernel里的代码(bluez),这里记点笔记,还是继承了老毛病,只关注整体流程而忽略细节,先了解个大概,等真正需要时再仔细分析。net/hci_core.cHCI在主机端转载 2018-05-17 15:31:09 · 1883 阅读 · 0 评论 -
Linux 下的Bluetooth 架构
实战Linux Bluetooth编程(一) 协议栈概述Sam一年前在Linux下写了一个类似Windows下BTW的库--BTX。现在需要添加新功能时发现很多知识点都忘记了。所以决定在这次学习中,把一些bluez API记录下来。这几天又想,这样还不够,不如把Linux下的Bluetooth编程基础给记录下来吧。前言:随着嵌入式系统的飞速发展,很多嵌入式平台上需要转载 2018-05-17 15:31:26 · 11706 阅读 · 2 评论 -
调试Bluetooth时的一些札记
LCL层是BT的链路控制功能的一部分,它从软件或被命令配置或控制的其他控制器上取命令,然后执行链路控制任务。蓝牙技术的系统结构分为三大部分:底层硬件模块、中间协议层和高层应用。底层硬件部分包括无线跳频(RF)、基带(BB)和链路管理(LM)。无线跳频层通过2.4GHz无需授权的ISM频段的微波,实现数据位流的过滤和传输,本层协议主要定义了蓝牙收发器在此频带正常工作所需要满足的条件。基带负责转载 2018-05-17 15:22:52 · 1481 阅读 · 0 评论 -
蓝牙的音频通路
如上图: 音频通路1:Audio->L2CAP->ACL->HCI->Baseband,a2dp音频走这种方式; 音频通路2:Audio->Voice->SCO/eSCO->HCI->Baseband,hfp、hsp蓝牙通话走这种方式; 音频通路3:Audio->Vhfp、hsp蓝牙通话走这种方式; 蓝牙通话的方式有音频通路2、音频通路3,这两种方式表现在硬件连接的差异上,音频通路转载 2018-05-17 14:53:46 · 1630 阅读 · 0 评论 -
蓝牙语音功能的实现
蓝牙语音功能的实现要实现蓝牙能够打skype电话,或蓝牙录音等功能,从下到上,需要做如下的修改:audio部分:驱动层,需要实现audio pcm的驱动。hal层,需要添加蓝牙sco音频的通路支持。蓝牙部分:使用的蓝牙芯片的pcm接口连接到ap的pcm接口(用于传送音频数据),不是走的uart口传送音频数据。使用的handfree转载 2018-05-17 14:53:32 · 4929 阅读 · 0 评论 -
蓝牙语音通话的实现——音频基础概念
前段时间调试蓝牙语音通话功能,下面做个总结。环境:iMX6q平台+RTL8723bu模块,PCM接口,Android4.4.2系统 一. 音频基础(1).PCM概念就音频领域而言,PCM脉冲编码调制是Pulse...原创 2018-01-26 16:16:03 · 8034 阅读 · 6 评论