问题分析:
1.本质:点对点,点对多点的语音通信。()
2.正常的语音通话通过,基于基站卫星等,网络。而目前的问题则是Hg基于zzw,自己的网络,可以算是一种小型网络,没有中间服务器,类似增强版的蓝牙。如何在各peers之间进行信息交换?
不用管,zzw硬件平台给你提供,OK。
问题是,如何进行数据传输?
zzw与www的对比,本质都是多设备接入网络,
zzw,小型自组织网络群,更不稳定,无实体的网络载体接入(不准确)不太可靠。
www,有很多直接充当服务器来访问的,而zzw没这个概念,有比较大的差别。
所以结论是:
webrtc似乎无法在zzw中用。
假设法,如果把网络断掉,两个浏览器之间还能实现通话吗?结论是不能的。zzw可以提供类似的“网络”支持,https???是什么?
本质肯定是基于ip来的,
RTCPeerConnection:一个RTCPeerConnection对象允许用户在两个浏览器之间直接通讯。两个ffos算两个浏览器,有类网络。所以一对一应该可以,那么一对多呢?
测试再说,两ffos设备,一个webrtc 应用,那么本质上就是通过网络来传输的,连上网就可以用?理论上没问题。通路已经不一样了。
问题,zzw是否支持网络传输,提供网络层的传输?应该可以。
webrtc 估计行不通,放弃。
老老实实写api 酷爆。。。
1.
https://github.com/ns2250225/audioRecord
https://blog.youkuaiyun.com/ns2250225/article/details/79326864
webrtc
方案:
这块其实不一定好做
1.传blob文件,
A.先将blob存起来,getdevicestorage存
B.C++里flieopen打开,发过去,
C.peer 收到,存在固定位置,app里直接filereader读取,audio标签播放
所以需要建立一个收发的接口,至少是在库的那端?
问题:
1.app 在n4上点击无效,需要修改代码。
思路扩展:
1.可参考拨号打电话app
2.webrtc
https://developer.mozilla.org/en-US/docs/Web/API/WebRTC_API
http://www.cnblogs.com/jscode/p/3601648.html
https://blog.youkuaiyun.com/sly94/article/details/52121947
框架设计:
此方案得发送整个文件,实时发送,一秒发一个,按顺序编号?是否考虑丢包情况,加密问题如何解决。
1.两个webapi接口,pcmVoiceReceive ,接收数据
2.PcmVoiceSend, 发送数据给peers
存在本地就可以了,存完之后,js去读。
固定的sdcard目录?是否存在安全问题?暂时选择性忽略。
实时播放语音的功能,是否有现成接口或框架。
参考;
https://bbs.youkuaiyun.com/topics/391062340