
Audio&video
文章平均质量分 76
督门提码
督门提码!
展开
-
iPhone4平台上实时音视频对话(经验)
经过两个多月的奋战,从无到有,现在iPhone4平台上实时音视频对话已取得初步成果。其间查阅了很多资料,感谢这些信息的提供者。继往开来,我写下此文。我只列出要点,具体编码以及平台移植各位自己去努力吧。照着下面的步骤,您一定能做出来的。1,视频采集用iPhone4SDK里面的AVCaptureSession. 苹果官网有示例代码。2,视频编码用ffmpeg,如要支持H264编码,还需转载 2013-06-25 18:10:00 · 905 阅读 · 0 评论 -
iOS音频开发功能
声音的用处 •声效■ 点击按钮 ■ 警告声 ■ 用户动作伴随的短声• 任意长度的声音(音乐,播客,讲话内容) • 来自网络服务的音频流 • 录制的声音这会有多难?• 在一个多功能的移动设备上播放声音可能令人惊讶 的复杂■ 可能同时有多个来源■ 无数可能的输出■ 变幻的事件,可能超出用户的控制 ■ 给看上去类似的动作不同的优先级• 操作系统管理声音系统 ■ 再一次,你转载 2013-06-27 19:59:37 · 3642 阅读 · 0 评论 -
关于 -- IPhone 的音频队列服务
音频队列服务提供一个可能,那就是:把音频数据块填充到音频队列服务缓冲区中,从而达到播放声音的目的,这种方式很类似 Windows 中的 waveOutWrite 方法。这样,我们就可以通过这个方法实现播放从网络上传输过来的音频数据。我们需要通过队列服务提供的 AQOutputCallback 回调中填充缓冲区,在这里,我们就可以填充从网络传输过来的数据。 参看代码:AudioStr转载 2013-06-28 15:12:44 · 1274 阅读 · 0 评论 -
iphone实现声音的录制和播放
在之前iPhone播放声音文件的例子中,只是实现了声音的播放,下面主要实现声音的录制,同时播放声音。采用AVAudioRecorder进行声音的录制。下面是实现的代码:#import "TalkingDemoViewController.h"@implementation TalkingDemoViewController @synthesize recorder; /转载 2013-06-28 16:54:34 · 2672 阅读 · 4 评论 -
IOS多媒体支持
无论多媒体功能在您的应用程序中是处于中心地位,还是偶尔被使用,iPhone用户都期望有很高的品质。视频应该充分利用设备携带的高分辨率屏幕和高帧率,而引人注目的音频也会对应用程序的总体用户体验有不可估量的增强作用。您可以利用iPhone OS的多媒体框架来为应用程序加入下面这些功能:高品质的音频录制和回放生动的游戏声音实时的声音聊天转载 2013-06-28 16:56:06 · 1537 阅读 · 0 评论 -
iOS录音的几个函数调用
int i, bufferByteSize;UInt32 size;CFURLRef url;readarri=0;try {mFileName = CFStringCreateCopy(kCFAllocatorDefault, inRecordFile);// specify the recording formatSetupA转载 2013-06-27 19:34:41 · 3388 阅读 · 0 评论 -
iOS语音功能介绍
从技术上讲主要就是录音:把录音文件发到服务器,再从服务器传到另外一个设备进行播放,这个过程是非常简单的,但是考虑一个问题就是要适合网络传输,因为网络是特别脆弱的,不管是发的时候还是收的时候它会占到我们手机的流量,这个流量是大家比较关心的,因为这个网络确实太贵了,为了便于网络传输我们进行一个压缩和解压的过程,知道这个过程之后,我们可以进入我们iOS平台要讲的东西。第一个是语音录制、语音编解码、语音播转载 2013-06-27 19:47:02 · 11840 阅读 · 1 评论 -
iOS即时语音聊天技术实践
CMDN Club第十五期活动已于3月15日顺利举行,本次活动以“移动平台语音技术的应用与实践”主题,以语音技术开发为焦点,从语音基础服务、语音产品开发、语音技术实现等多个维度,探索语音产品创新和技术实践的热点话题。我们邀请了北京爱图腾科技高级iOS开发工程师张天虹,为大家带来iOS即时语音聊天技术实践演讲。图:北京爱图腾科技高级iOS开发工程师张天虹在做演讲以下是文字实录转载 2013-06-27 19:57:33 · 4498 阅读 · 1 评论 -
音频编解码speex库的使用方法
Speex是近年来开发出的一套功能强大的语音引擎,能够实现高质量和低比特率的编码。它不仅提供了基于码激励线性预测(CELP)算法的编/解码模块, 而且在其最新发布的版本中还提供了声音预处理和声学回声消除模块,为保障IP网络中的语音通信质量提供了技术手段。此外,Speex还具有压缩后的比特率 低(2~44 kbps)的特点,并支持多种比特率。这些特点使得Speex特别适合VoIP的系统。虽然转载 2013-06-27 19:11:41 · 12803 阅读 · 1 评论 -
RTMP中的speex音频流与RTP的对接
带音视频交互的flash项目中,音频编码只能选择speex格式。 这篇文章分为三部分。分别为flex中提供的音频接口、RTMP中的speex数据、如何转换为RTP流。 一、flex中提供的音频接口 用flex编写客户端,它提供的接口是封装过的,与speex标准编解码器之间的调用实际上相当于一个黑盒,它们之间的差异需要我们分析。 麦克风音频的转载 2013-06-27 19:15:02 · 2336 阅读 · 0 评论 -
iOS音频队列服务
音频队列服务提供一个可能,那就是把音频数据块填充到音频队列服务缓冲区中,从而达到播放声音的目的,这种方式很类似 Windows 中的 waveOutWrite 方法。这样,我们就可以通过这个方法实现播放从网络上传输过来的音频数据。我们需要通过队列服务提供的 AQOutputCallback 回调中填充缓冲区,在这里,我们就可以填充从网络传输过来的数据。 参看代码:AudioSt转载 2013-06-27 19:33:14 · 3556 阅读 · 0 评论 -
AudioToolbox 详解
第一部分用到了AudioToolbox这个音频接口,总结下,希望对需要的朋友有帮助。AudioToolbox这个库是C的接口,偏向于底层,用于在线流媒体音乐的播放,可以调用该库的相关接口自己封装一个在线播放器类,AudioStreamer是老外封装的一个播放器类,有兴趣的朋友可以研究下。 其实IOS库中有两个可以播放在线音乐的播放器类,AVPlayer和MPMusicPla转载 2013-06-28 15:10:36 · 5289 阅读 · 0 评论 -
IOS4直接获取摄像头数据
需要添加的framework:CoreMedia,CoreVideo,QuartzCore,AVFoundationMyAVController.h:1234567891011121314151617181920转载 2013-07-26 16:30:42 · 1117 阅读 · 0 评论 -
ios将摄像头捕获的视频数据转为jpeg格式
想要将摄像头进行视频录制或者拍照可以用UIImagePickerController,不过UIImagePickerController会弹出一个自己的界面,可是有时候我们不想要弹出的这个界面,那么就可以用另一种方法来获取摄像头得到的数据了。首先需要引入一个包#import ,接下来你的类需要实现AVCaptureVideoDataOutputSampleBufferDelegate这个协转载 2013-07-26 16:40:21 · 1219 阅读 · 0 评论 -
iOS 拨打电话功能的实现
// 定义点击拨号按钮时的操作 [cpp] view plaincopy- (void)callAction{ NSString *number = @"";// 此处读入电话号码 // NSString *num = [[NSString alloc]initWithFormat:@"tel://%@",number];转载 2013-06-27 19:44:37 · 19396 阅读 · 1 评论 -
iPhone OS音频视频编程指南
控制回放音量音频队列对象为您提供两种控制回放音量的方法。您可以通过调用AudioQueueSetParameter函数并传入kAudioQueueParam_Volume参数来直接设置回放的音量,如程序清单7-8所示,音量的变化会立即生效。程序清单7-8 直接设置回放的音量Float32 volume = 1; // linear sca转载 2013-06-27 19:43:04 · 2262 阅读 · 0 评论 -
关于 -- IPhone 的音频队列服务
音频队列服务提供一个可能,那就是:把音频数据块填充到音频队列服务缓冲区中,从而达到播放声音的目的,这种方式很类似 Windows 中的 waveOutWrite 方法。这样,我们就可以通过这个方法实现播放从网络上传输过来的音频数据。我们需要通过队列服务提供的 AQOutputCallback 回调中填充缓冲区,在这里,我们就可以填充从网络传输过来的数据。 参看代码:AudioStr转载 2013-06-25 18:17:50 · 869 阅读 · 0 评论 -
[iOS]使用Audio Queue Services 播放和录制音频
要在iOS设备上播放和录制音频,苹果推荐我们使用AVFoundation框架中的AVAudioPlayer和AVAudioRecorder类。虽然用法比较简单,但是不支持流式;这就意味着:在播放音频前,必须等到整个音频加载完成后,才能开始播放音频;录音时,也必须等到录音结束后,才能获取到录音数据。这给应用造成了很大的局限性。为了解决这个问题,我们就需要使用Audio Queue Services来转载 2013-06-25 17:57:31 · 1600 阅读 · 0 评论 -
iphone视频聊天代码实现
视频聊天从摄像头中取得缓冲数据,转换成NSData,通过网络发送,接收端取得NSData后把NSData转换成图像,双方不停的收发数据,播放图像,就形成了视频聊天。废话不多说,直接上代码:首先创建视频输入输出:NSError *error= nil; //Setup the video input AVCaptureDevice *videoDevi转载 2013-06-25 18:15:32 · 1110 阅读 · 0 评论 -
音频录制之AVAudioRecorder
#import #import @interface AudioPlayerViewController : UIViewController{AVAudioPlayer *audioPlayer;AVAudioRecorder *audioRecorder;int recordEncoding;enum{ ENC_AAC = 1, ENC_ALAC = 2,转载 2013-06-27 15:08:27 · 1957 阅读 · 0 评论 -
音频队列服务编程指南(Audio Queue Services Programming Guide)(二)
关于音频队列(Audio Queues)本章你将学习到音频队列的功能、架构和内部工作原理。我们将向你介绍音频队列用来播放或录制所用的音频队列(audio queues)、音频队列缓冲区(audio queue buffers)和回调函数(callback functions),你还可以找到关于音频队列状态和参数的信息,截至到本章的结尾,你将会获得有效使用该技术的概念性理解。什么转载 2013-06-27 17:29:31 · 13203 阅读 · 1 评论 -
音频队列服务编程指南(Audio Queue Services Programming Guide)(一)
介绍 本文档介绍了如何使用音频队列服务(Audio Queue Services),这是Core Audio Toolbox框架中的一个C语言编程接口。什么是音频队列服务(Audio Queue Services) 在iOS和Mac OS X中,音频队列服务提供了一种直接、低开销的的方式来录制和播放音频。这也是向你的iOS和Mac OS X程序中添加录制和播转载 2013-06-27 17:30:22 · 3201 阅读 · 0 评论 -
音频队列服务编程指南(Audio Queue Services Programming Guide)(三)
音频录制 当你使用音频队列服务进行录制的时候,你可以将音频录制到任何地方——磁盘文件、网络连接或内存对象等等。本章将介绍中最常见的一种情况——将音频录制到磁盘文件中。注意: 本章介绍了基于ANSI-C的录制的实现,并且使用了MAC OS X中Core Audio SDK中了一些C++类,如果想了解基于Objective-C的例子,请参考iOS转载 2013-06-27 17:31:45 · 3561 阅读 · 0 评论 -
在iOS AudioQueue中用Speex进行编码和解码
n the apple sample code "SpeakHere" you can do some thing like this:AudioQueueNewInput( &mRecordFormat, MyInputBuffe转载 2013-06-27 17:44:44 · 3423 阅读 · 1 评论 -
ios 音频:录音与混音-问答
1. reading my code for recording * MyInputBufferHandler Q: 这里有Enqueue Buffer动作,这样,这个buffer有机会重新fill A: YES!. callback中总会有enqueue动作的,无论recording还是playback. Q: 参数含义转载 2013-06-27 18:06:28 · 4118 阅读 · 0 评论 -
C++中利用Speex进行音频压缩
#ifdef HAVE_CONFIG_H #include "config.h" #endif #include #include #include #include #ifdef FIXED_DEBUG extern long long spx_mips; #endif #define FRAME_SIZ转载 2013-06-27 18:16:36 · 3691 阅读 · 0 评论 -
iOS使用speex
为实现类似微信上的对讲机功能,做了两个Demo。一种使用lib-amr库,用amr格式实现。另一个用的是speex库,这个提的人很多,但是出教程的不多,大家有很多不明所以的地方,新手对此较为实现类似微信上的对讲机功能,做了两个Demo。一种使用lib-amr库,用amr格式实现。另一个用的是speex库,这个提的人很多,但是出教程的不多,大家有很多不明所以的地方,新手对此较为困惑。转载 2013-06-27 19:19:01 · 8019 阅读 · 0 评论 -
iOS录音功能的实现
这里ios的录音功能主要依靠AVFoundation.framework与CoreAudio.framework来实现在工程内添加这两个framework我这里给工程命名audio_text在生成的audio_textViewController.h里的代码如下[cpp] view plaincopy转载 2013-06-27 19:28:16 · 1682 阅读 · 0 评论 -
iOS实现音频采集到缓存
我要做音频通话,但是Sample都是录制到文件的 录制是可以到buffer的呀做过,你只要不设定录制的文件在回调里就可以取得数据的我也正在研究这个呢,希望各位同仁帮帮哦作哪步了?你能把你做G.711音频编解码的例子发我参考参考吗? 录制是可以到buffer的呀做过,你只要不设定录制的文件在回调里就可以取得数据的转载 2013-06-27 19:29:40 · 3045 阅读 · 0 评论 -
ffmpeg 获取视频关键帧
1:http://blog.youkuaiyun.com/tipboy/article/details/70524842:ffmpeg教程:http://dranger.com/ffmpeg/tutorial01.html av_register_all(); if(av_open_input_file(&pFormatCtx, filen转载 2013-09-17 14:14:01 · 1792 阅读 · 0 评论