iOS 即时聊天 音频格式转NSData
WAV:无损
是微软公司开发的一种声音文件格式,它符合PIFFResource Interchange File Format文件规范,用于保存WINDOWS平台的音频信息资源,被WINDOWS平台及其应用程序所支持。“*.WAV”格式支持MSADPCM、CCITTALAW等多种压缩算法,支持多种音频位数、采样频率和声道,标准格式的WAV文件和CD格式一样,也是44.1K的采样频率,速率88K/秒,16位量化位数,看到了吧,WAV格式的声音文件质量和CD相差无几,也是目前PC机上广为流行的声音文件格式,几乎所有的音频编辑软件都“认识”WAV格式。 这里顺便提一下由苹果公司开发的AIFF(AudioInterchange FileFormat)格式和为UNIX系统开发的AU格式,它们都和和WAV非常相像,在大多数的音频编辑软件中也都支持它们这几种常见的音乐格式。
MP3:流行
MP3格式诞生于八十年代的德国,所谓的MP3也就是指的是MPEG标准中的音频部分,也就是MPEG音频层。根据压缩质量和编码处理的不同分为3层,分别对应“*.mp1"/“*.mp2”/“*.mp3”这3种声音文件。需要提醒大家注意的地方是:MPEG音频文件的压缩是一种有损压缩,MPEG3音频编码具有10:1~12:1的高压缩率,同时基本保持低音频部分不失真,但是牺牲了声音文件中12KHz到16KHz高音频这部分的质量来换取文件的尺寸,相同长度的音乐文件,用*.mp3格式来储存,一般只有*.wav文件的1/10,而音质要次于CD格式或WAV格式的声音文件。由于其文件尺寸小,音质好;所以在它问世之初还没有什么别的音频格式可以与之匹敌,因而为*.mp3格式的发展提供了良好的条件。直到现在,这种格式还是风靡一时,作为主流音频格式的地位难以被撼动。 MP3格式压缩音乐的采样频率有很多种,可以用64Kbps或更低的采样频率节省空间,也可以用320Kbps的标准达到极高的音质。我们用装有FraunhoferIIS Mpeg Lyaer3的 MP3编码器(现在效果最好的编码器)MusicMatch Jukebox6.0在128Kbps的频率下编码一首3分钟的歌曲,得到2.82MB的MP3文件。采用缺省的CBR(固定采样频率)技术可以以固定的频率采样一首歌曲,而VBR(可变采样频率)则可以在音乐“忙”的时候加大采样的频率获取更高的音质,不过产生的MP3文件可能在某些播放器上无法播放。我们把VBR的级别设定成为与前面的CBR文件的音质基本一样,生成的VBRMP3文件为2.9MB。
MIDI:作曲家最爱
WMA:最具实力
-(void)viewDidLoad
{
[superviewDidLoad];
self.view.backgroundColor = [UIColor whiteColor];
dispatch_queue_t dispatchQueue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT,0);
dispatch_async(dispatchQueue,^(void){
NSString*filePath = [[NSBundlemainBundle] pathForResource:@"Test" ofType:@"mp3"];
NSData* data= [NSData dataWithContentsOfFile:filePath];
NSError*error = nil;
self.audioPlay = [[AVAudioPlayer alloc] initWithData:data error:&error];
if(_audioPlay != nil) {
self.audioPlay.delegate = self;
} else {
NSLog(@"Error");
NSLog(@"%@", error.description);
}
});
// Do any additional setup after loadingthe view.
}
iOS 即时聊天 音频格式转NSData相关推荐
- IOS中的音频格式转换
ios播放音频的时候使用的是硬件解码器,仅播放单个音乐不会占用任何的CPU,当播放两个以上的时候才会占用cpu. 使用的格式有:caf(性能最好,核心音频格式,需解码),aiff(不需解码,但文件较大 ...
- ios 即时聊天轻松搞定
使用技术: CocoaAsyncSocket + Apache MINA(ApacheMINA是一个网络应用程序框架,用来帮助用户简单地开发高性能和高可扩展性的网络应用程序.它提供了一个通过Java ...
- iOS 即时聊天键盘处理
1 让tableview 滚动到最底层方法 if (_dataArr.count>0) { NSIndexPath *ip = [NSIndexPath indexPathForRow:_dat ...
- iOS即时语音聊天技术实践
CMDN Club第十五期活动已于3月15日顺利举行,本次活动以"移动平台语音技术的应用与实践"主题,以语音技术开发为焦点,从语音基础服务.语音产品开发.语音技术实现等多个维度,探 ...
- 基于WebSocket协议的iOS端即时聊天
好好好久没有在cnblogs上写博客,不过在这里写的最早的一篇博客的时间戳,真是时间久远啊,那时候还没毕业.不在cnblogs的期间,在github pages.简书上写过博客,github page ...
- iOS音频技术的研究-音频格式
什么是音频格式 这个问题我也是查了很久才弄明白的.音频格式其实是指容器的类型,在通俗一点就是声音文件的类型,比如说"我爱你中国.mp3",这个声音文件的音频格式就是MP3. 这里稍 ...
- ios开发xmpp仿微信即时聊天工具
最近在做一个项目,需要一个即时聊天工具,先打算有第三方环信(http://www.easemob.com),但是最终老板不允许,要自己开发用自己的服务器,哎!如果有需要的可以去看看这个环信,真的不错. ...
- iOS即时通讯,从入门到“放弃”?
image 前言 本文会用实例的方式,将iOS各种IM的方案都简单的实现一遍.并且提供一些选型.实现细节以及优化的建议. 注:文中的所有的代码示例,在github中都有demo: iOS即时通讯,从入 ...
- iOS即时通讯从入门到“放弃”?
前言 本文会用实例的方式,将iOS各种IM的方案都简单的实现一遍.并且提供一些选型.实现细节以及优化的建议. 注:文中的所有的代码示例,在github中都有demo: iOS即时通讯,从入门到&quo ...
最新文章
- Android开发者必备:推荐一款助力开发的开源APP
- Django上传文件及分页
- Linux学习记录-文件、目录与磁盘
- 百钱买白鸡与啤酒饮料
- Mysql orangepi_SSH远程登录香橙派Orange Pi Zero2开发板的操作方法
- 安卓快速排序与冒泡排序
- 程序员有了孩子,老大叫玲玲,老二叫玲依,老三叫...
- Python编程利用单纯形法和scipy库对比分析求解线性规划最大值和最优解问题
- sklearn 学习实践之——基于自带数据集(波士顿房价、鸢尾花、糖尿病等)构建分类、回归模型
- wide and deep及其发展
- shell脚本-从路径提取文件名、后缀
- 如何恢复快捷方式上的小箭头
- 微服务架构 | 配置中心 - [Config]
- php蓝牙连接不上,蓝牙音响连接不上手机怎么办 两种方法轻松解决连接问题
- 【C++】使用类来模拟string
- python股票涨停_Python与量化投资-股票复盘工具-2018-02-02
- matlab符号及其运算(1)
- DRF之View、APIView以及GenericAPIView
- python拼多多1分抢手机_如何抢到拼多多1元秒杀?抢不到是怎么回事?
- NIST cybersecurity framework的五个核心功能