苹果耳机无线可以单只听吗?
不是简简单单的中继,AirPods利用两个耳机之间的私有协议,虚拟出了单个立体声耳机设备
蓝牙协议并没有考虑过两个设备分别是左右耳,只能与一个完整的“耳机”设备联系,可以是单声道,也可以是立体声,如果要做分体设备,那么有如下方案:
两个耳机单独和主设备建立连接,系统软件里把左右声道分别传输过去。这种需要加倍带宽、精确同步、自定义设备和耳机协议,兼容性和效果都很差,绝对不行
两个耳机一主一从,主耳机和主设备建立标准蓝牙立体声耳机连接,并且负责把另一只耳朵的声音单独传给副耳机,类似链式PAN拓扑,这种可以实现和传统蓝牙协议兼容,而且用户体验基本合格,但是这个方案需要额外耗费大量时隙来做中转,降低无线带宽,增加耗电,导致左右耳机耗电不对称(这个可以靠两边商量定时对换一下来解决,两个耳机偷偷协商好对换的时隙,共享一下和主设备连接session的信息,偷偷换过来主设备不会发现
苹果的方案其实更聪明,既然两个耳机之间可以共享连接session信息,那么干嘛不把密钥直接分享给副耳机让它自己偷听呢?主耳机作为和主设备维护蓝牙连接的负责人,建立标准的蓝牙立体声耳机连接,设备开始放立体声音频,蓝牙的数据包发出去了,两边都收得到,那你管你解码播放左耳,我管我解码播放右耳就是了嘛。蓝牙协议要求接收方发送确认帧,那只要主耳机发送就是了。两个耳机之间只以最低的功率和速率交换最低限度的工作同步信息,这个占带宽和耗电都非常低,可以做到耗电速度基本一致,实在有电量不对称的情况,再偷偷商量交换一下角色即可,副耳机接收不良,那么发同步信号给主耳机说别发确认帧,请求主设备重传一下就解决了,实在接收不良,还可以降级成上面说的中继模式
当然具体实现这个还是很复杂的,苹果花了大力气W1芯片和对应的私有无线协议(当然好像还是基于PAN),实现两个耳机之间低耗能高精确高实时同步,同时这个同步信号是夹在标准蓝牙帧的夹缝里的,对蓝牙现有的信号影响很小,在技术上是很大的成果
2022年,开发独立EXE桌面应用程序,用什么语言、技术合适?
delphi XE10.31以上版本,或同平台C++Builder。
1。如果要存储运行参数,可用INI文件格式,直接读写 节名,参数名
等等。
可繁可简,可咸可甜。
delphi 熟悉了,那么windows下夸张点说他领先半个世纪 . 但是学会工作多年可能大多拿个月薪一个w,想来现在前端程序员只写vue都能拿1.5w,工作两三年就能拿到. python 也可以打包exe,只是体积大界面又难搞. 同样的golang也可以,但是这些搞win界面程序,就好比玩delphi就是玩王者、和平这种,玩其他的就像玩俄罗斯方块. 排除这些那只有c#,可以打包单exe,毕竟宇宙第一ide,玩几下不用看教程,就看看帮助demo就能完成很多需求. 有人可能说electron,但是那玩意在个人理解里,比起python打包在都矬. 还会有人说[_a***_]都做出来了,搞不来是水平问题. 是的,高手什么不行,pascal,c 直接写的多了去了. 调用winapi就好了,现在很多汇编也有ui环境. 同比微软你是不是不缺人也不缺高人. 很多人觉得看个例子几分钟打包一套html在里面觉得就会了,后台语言看个crud就感觉什么都会写了,结果折腾三五年后再看,倒觉得啥也不会了.