AudioQueue语音流 speex压缩 实时通讯 对讲机

AudioQueue几个重要参数

    AudioQueueRef                   inputQueue;//队列
    AudioQueueBufferRef     inputBuffers[3];//缓冲区 可以定义宏容易修改,一般为3个,设置多个可以让语音播放不卡
    AudioStreamBasicDescription     audioDescription;//音频采集参数设置
    ///设置音频参数
    audioDescription.mSampleRate = 8000; //采样率
    audioDescription.mFormatID = kAudioFormatLinearPCM;
    audioDescription.mFormatFlags = kLinearPCMFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked;
    audioDescription.mChannelsPerFrame = 1; ///单声道
    audioDescription.mFramesPerPacket = 1; //每一个packet一侦数据
    audioDescription.mBitsPerChannel = 16; //每个采样点16bit量化
    audioDescription.mBytesPerFrame = (audioDescription.mBitsPerChannel / 8) * audioDescription.mChannelsPerFrame;
    audioDescription.mBytesPerPacket = audioDescription.mBytesPerFrame;

    AudioQueueNewOutput(&audioDescription, AudioPlayerAQInputCallback, (__bridge void*)self, nil, nil, 0, &audioQueue); //使用player的内部线程播放
AudioQueueAllocateBuffer(audioQueue, MIN_SIZE_FRAME, &audioQueueBuffers[i]);//初始化音频缓冲区
AudioQueueStop(audioQueue, true);//停止队列
        AudioQueueReset(audioQueue);//重置队列
    AudioQueueDispose(_inputQueue, true);//销毁队列
时间: 2024-12-20 16:10:16

AudioQueue语音流 speex压缩 实时通讯 对讲机的相关文章

用PHP 和Websocket实现实时通讯---GoEasy

说到websocket大家一定不会陌生,WebSocket是HTML5一种新的协议.它实现了浏览器与服务器全双工通信(full-duplex).一开始的握手需要借助HTTP请求完成,当浏览器和服务器握手成功后,浏览器和服务器之间就形成了一条快速通道.两者之间就直接可以数据互相传送.有了websocket, 大家就可以摒弃以往用轮询来实现实时通讯的方式了. 有了websocket后,应运而生的相关产品也不在少数,选择也成了最大的问题,在这里你可能会说"干嘛用别人的,我可以自己用原始的开发一个啊&q

用JAVA和Websocket实现实时通讯

说到websocket大家一定不会陌生,WebSocket是HTML5一种新的协议.它实现了浏览器与服务器全双工通信(full-duplex).一开始的握手需要借助HTTP请求完成,当浏览器和服务器握手成功后,浏览器和服务器之间就形成了一条快速通道.两者之间就直接可以数据互相传送.有了websocket, 大家就可以摒弃以往用轮询来实现实时通讯的方式了. 有了websocket后,应运而生的相关产品也不在少数,选择也成了最大的问题,在这里你可能会说"干嘛用别人的,我可以自己用原始的开发一个啊&q

用C(++)和Websocket实现实时通讯

说到websocket大家一定不会陌生,WebSocket是HTML5一种新的协议.它实现了浏览器与服务器全双工通信(full-duplex).一开始的握手需要借助HTTP请求完成,当浏览器和服务器握手成功后,浏览器和服务器之间就形成了一条快速通道.两者之间就直接可以数据互相传送.有了websocket, 大家就可以摒弃以往用轮询来实现实时通讯的方式了. 有了websocket后,应运而生的相关产品也不在少数,选择也成了最大的问题,在这里你可能会说"干嘛用别人的,我可以自己用原始的开发一个啊&q

Node.js 切近实战(十一) 之实时通讯

曾经在幽幽暗暗反反复复中追问,才知道平平淡淡从从容容才是真,听着歌曲,写博客,感觉就来了. 今天我们主要看一下Socket.IO实时通讯,先看一下界面. .row  .col-md-9   .panel.panel-primary    .panel-heading     h3.panel-title(style='font-size:13px;') Chat Message    .panel-body#div_msgbody(style='min-height:590px;max-heig

通过WebSocket实现实时通讯C#语言编写服务端

无意中发现js有webSocket对象于是百度了一下客户端代码与服务端代码没有现成的 有的就有一些简单了连接例子有的还不好使 于是就自己整理了一下 c#编写的服务端代码 using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Net; using System.Net.Sockets; using System.Text.RegularExpression

Android IOS WebRTC 音视频开发总结(六二)-- 大数据解密国外实时通讯行业开发现状

本文主要介绍国外实时通讯行业现状,文章最早发表在我们的微信公众号上,详见这里,欢迎关注微信公众号blackerteam,更多详见www.blackerteam.com 上篇文章我们采用百度搜索指数来分析国内webrtc现状,得到不少同行认同,所以我们今天决定采用同样的方法来分析国外webrtc现状,不过这次的数据源来自google趋势,另外分析的同时会将国内与国外进行比对,让大家更好地了解两者之间的差异: 图表1:2005年-21015年的搜索趋势 分析说明: 1.整体趋势与国内一样,2011年

Android IOS WebRTC 音视频开发总结(六一)-- 大数据解密国内实时通讯行业开发现状

本文主要介绍国内实时通讯行业现状,文章最早发表在我们的微信公众号上,详见这里,欢迎关注微信公众号blackerteam,更多详见www.blackerteam.com 这几年移动互联网发展势头很猛,与之相应的就是实时通讯需求增加,但这都只是主观感受,缺乏数据证明,但今天我想到其实看webrtc的开发热度就可以说明很多问题,因为现在不管是搞pc还是移动端的实时通讯开发,基本上都是在用webrtc,他很具有代表性. 不过问题来了不管是刚接触还是接触webrtc很久的人可能都对国内webrtc应用现状

基于javascript用olamisdk实现web端语音识别语义理解(speex压缩)

转载请注明原文地址:http://blog.csdn.net/ls0609/article/details/73920229 olami开放平台sdk除了支持语音识别功能外,更强大的在于支持语义理解功能,在Android平台和iOS平台都有示例demo供大家下载. 语音在线听书demo:http://blog.csdn.net/ls0609/article/details/71519203 语音记账demo:http://blog.csdn.net/ls0609/article/details/

ASP.NET MVC4使用SignalR实现实时通讯

本文介绍在ASP.NET MVC框架中如何使用SignalR进行实时通讯 1.如何在Web中实现实时通讯 实时通讯: 例如“消息提示”.“web聊天室”等.由于web浏览器中使用的是http协议(大部分请求)进行通讯,http被称为是无状态,每次http请求和应答都是通过建立tcp连接,发送数据反馈应答,关闭tcp连接.而且必须是客户端先请求服务器端,服务器端再反馈给客户端消息.并不能实现服务器端主动给客户端推送消息的功能. 实时通讯的传统实现方法: 1.刷新整个页面.这种方法最为原始,页面中设