最近在自己写一个远程教学系统,将老师电脑屏幕,鼠标动作和讲课声音传输到学生端,学生要是有问题可以通过文字形式发给教师端。
有个问题卡了我两天多了,刚刚才解决,在这里记录一下,方便其他和我有一样问题的朋友。
服务器(java)发出音频,安卓端和PC(java)接受音频,PC的客户端能很好地接受音频但是安卓却只有噪声,谷歌百度了好久试了各种解决方案都不行,原因是网上大部分代码都是安卓和安卓进行声音传输,调用的方法其实都是底层C的方法,而我的项目里面声音是从JAVA服务器里面发出的,而JAVA和C的字节数组的结构是不一样的,一个是大端一个是小端,所以在JAVA发出音频时,应该把声音数据设置成小端,下面是代码:
bigEndian=false; AudioFormat(sampleRate, sampleSizeInBits, channels, signed,bigEndian);
这样在安卓端就能接受到正确的声音了。
相关推荐
Android9.0下使用AudioTrack解析,从socket服务端tcp传输过来的音频流裸数据的示例
android使用AudioTrack低延迟播放音频文件.rar,太多无法一一验证是否可用,程序如果跑不起来需要自调,部分代码功能进行参考学习。
AudioTrack和RTP 和 Socket
android使用audioRecord和audioTrack实现语音录音播放与即时播放
本Demo使用MediaCodec解码AAC音频数据,解码之后直接使用AudioTrack播放PCM音频数据
audiotrack 播放音频
Android实现使用AudioTrack实现正弦波音频播放,不固定频率可任意切换频率。20Hz~2KHz之间进行无缝切换。
可以多个音频顺序播放,可以重复播放音频 博文地址:http://blog.csdn.net/w1027296673/article/details/50441709
AudioRecord录音 AudioTrack播放, 详见博客: http://blog.csdn.net/yangysng07/article/details/41150839
通过AudioTrack实现播放PCM文件,设置采样率,将文件读取到byte字节中
读取wav文件,用static模式播放.注意需要添加权限,<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission>
实现用audiotrack播放pcm音频流
使用AudioTrack进行播放时,将音频数据保存下来,保存为pcm格式,可以用于分析音频文件是否有问题。
android基于AudioTrack播放PCM音频文件的源码实例,播放扩展名为rm格式的文件,不使用android 内置的Audio和video来播放PCM音频数据,通过通过解码得到PCM数据源,使用AudioTrack类实现音频文件的播放,本源码就是...
android AudioRecord AudioTrack实现录音并播放 并支持参数选择(频率、编码格式、声道) 更多信息可参考http://blog.sina.com.cn/u/1788464665
RT,一个使用audiotrack播放PCM音频数据的DEMO,上传的代码工程中有个音频数据文件夹,包含了用于测试的PCM数据文件,详情请看readme.txt;另外代码附详细说明,走过路过的都不要错过了,喜欢就顶下吧
用AudioRecord获取音频源数据流存储后,再用AudioTrack读取存储文件,播放录音。能够录音后,即时播放。
使用AudioRecord和AudioTrack实现录音和播放,直接数据流播放。 创建2个线程,一个线程录音,一个播放。
一个使用audiotrack播放PCM音频数据的DEMO,上传的代码工程中有个音频数据文件夹,包含了用于测试的PCM数据文件,详情请看readme.txt;另外代码附详细说明,走过路过的都不要错过了,喜欢就顶下吧
AudioTrack播放原始音频PCM