使用 speex 格式对录制的声音进行语音压缩,并且进行ogg封装,实现了 ios 和 android 的语音编解码互通。代码包包括iOS Demo 和 Android demo。
作者说:前段时间为了实现语音短消息的功能,找了挺多的方案,包括amr的,aac的。不是使用amr的原因是,因为原项目中使用了g729的库和opencore-amr的库冲突了,无法使用,aac对android的兼容性好像不太好,最后决定使用speex格式进行语音压缩,有在cocoaChina上有位大神分享了一个speex的例子,但是那个并没实现ogg封装的,但是android的demo是已经加了ogg封装的,苦于对android不熟悉,只能相办法让IOS这边实现ogg封装。在国内的论坛和一些开源网站都找不到ios相关ogg封装例子,最终在github上找到了ios的speex ogg封装的demo,十分感谢github上的那位大神,现在把ios和andoird的一起分享给大家。已经测试过可以ios和android的语音编解码可以互通的了。 [Code4App.com]
这个是从github上面一个android speex开源项目修改封装而来,在项目中用于IM中的语音压缩和通话记录压缩。IM语音压缩不失真的情况下一分钟可以压缩到100K左右。 首先看使用方式。 编码解码音频文件示例代码: void encodeAudioFile(File rawFile, File speexFile, ) { SpeexFileConverter.encode(rawFile
由于项目需要做语音降噪处理,最近做了这方面的研究。但结果却没有达到,反而却学得了基于Speex的语音压缩和解压,也算没有白白浪费时间(300K的语音文件经过Speex压缩后文件大小变为了30K左右,对于网络传输非常好)。 关于Speex:http://www.speex.org/ Speex主要提供的技术: 1.窄带(
这个是从github上面一个android speex开源项目修改封装而来,在项目中用于IM中的语音压缩和通话记录压缩。IM语音压缩不失真的情况下一分钟可以压缩到100K左右。 首先看使用方式。 编码解码音频文件示例代码: void encodeAudioFile(File rawFile, File speexFile, ) { SpeexFileConverter.encode(rawFile
今天我们继续上一篇博客“IOS开发之使用Speex格式实现简单的语音聊天功能(一)”继续往下讲,主要是讲述一下PlayManager与RecorderManager两个类的功能。 首先要讲的是RecorderManager,该类的主要功能就是负责对用户的语音进行录制,和停止录制。 #import <Foundation/Foundation.h> #import "Encapsulator.h
前言 项目需要,抛弃掉原有的音频,统一使用speex(虽然这个解决方案也比较老,speex项目已经停止,但是资料最全,能快速满足项目需求的speex最优) speex speex官网 自行了解speex是什么,重要概念不要混淆,speex只负责压缩和反压缩,不要涉及到音频了就把播放什么的都跟他联系。切记这点,对理解很有帮助。 下面转载: 安卓录音的时候是使用AudioRecord来进行录制的(当然
这么牛逼的轮子,肯定要美图镇楼 Speex是一套主要针对语音的开源免费,无专利保护的音频压缩格式。 本轮子,适用超大型项目,因为库本身很大,当然本身IM项目就没有小项目吧 Speex(音标[spi:ks])是一套开源免费的、无专利保护的、针对语音设计的音频压缩格式。Speex项目通过以提供昂贵的专用语音编解码器的免费替代方案为目标,来降低语音应用程序的进入门槛。此外,Speex非常适用于互联网应用
一. OGG音频格式概述 Ogg是一个自由且开放标准的容器格式,由Xiph.Org基金会所维护。Ogg格式并不受到软件专利的限制,并设计用于有效率地流媒体和处理高品质的数字多媒体。 “Ogg”意指一种文件格式,可以纳入各式各样自由和开放源代码的编解码器,包含音效、视频、文字(像字幕)与元数据的处理。 在Ogg的多媒体框架下,Theora提供有损的图像层面,而通常用音乐导向的Vorbis编解码器作为
之前写过了如何将speex与wav格式的音频互相转换,如果没有看过的请看一下连接 http://www.cnblogs.com/dongweiq/p/4515186.html 虽然自己实现了相关的压缩算法,但是发现还是与gauss的压缩比例差了一些,一部分是参数设置的问题,另外一部分是没有使用ogg的问题。 本来想研究一下gauss的ogg算法,然后将他录制的音频转为wav格式,再继续进行后面的频
我们的司信项目又有了新的需求,就是要做会议室。然而需求却很纠结,要继续按照原来发语音消息那样的形式来实现这个会议的功能,还要实现语音播放的计时,暂停,语音的拼接,还要绘制频谱图等等。 如果是wav,mp3不论你怎么拼接,绘制频谱图,我也没有问题,网上都有现成的例子。然而这一次居然让用speex的音频做这一切。 于是看了司信之前的发语音消息部分speex的代码,天啊,人家录的时候这是实时录音实时编码
Ogg是一个自由且开放标准的容器格式,由Xiph.Org 基金会所维护。Ogg格式并不受到软件专利的限制,并设计用于有效率地串流媒体和处理高质量的数字多媒体。 Ogg意指一种文件格式,可以纳入各式各样自由和开放源代码的编解码器,包含音效、视频、 文字(像字幕)与元数据的处理。 OggTheora Theora是一个免权利金、开放格式的有损影像压缩技术,由Xiph.Org基金会开发,该基金会
导语今天就给大家带来个语言识别跟语言转文字的小工具,1.直接使用在1.2官网注册后拿到APISecret和APIKey,直接复制文章2.4demo代码,保存为online_tts.py,在命令行执行python online_tts.py -client_secret=你的client_secret -client_id=你的client_id -file_save_path=test.wav --text=今天天气不错1. 获取权限Pyth
Speex是一套专门用于压缩声音的库,由于其专门针对声音,所以压缩声音的性能非常高.Speex由于其压缩性能,及0.80版后的跨平台的性能,所以在网络声音的传输中有很大的价值.但是需要注意的是speex只能对声音进行压缩,不支持音乐的压缩,如果你需要音乐的压缩你或许需要用vorbis库. 支持包括Linux、BSD、MacOS 以及 Symbian 系统。
本文向大家介绍Java实现的zip压缩及解压缩工具类示例,包括了Java实现的zip压缩及解压缩工具类示例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了Java实现的zip压缩及解压缩工具类。分享给大家供大家参考,具体如下: 更多关于java算法相关内容感兴趣的读者可查看本站专题:《Java文件与目录操作技巧汇总》、《Java数据结构与算法教程》、《Java操作DOM节点技巧总结》和《J
我需要在没有中间存储的情况下读写压缩(GZIP)流。目前,我使用Spring
本文向大家介绍Linux Apache设置压缩及缓存,包括了Linux Apache设置压缩及缓存的使用技巧和注意事项,需要的朋友参考一下 压缩文件: 编辑apache模块 vim /etc/httpd/conf.modules.d/00-base.conf 确保以下三个模块没有被注释 LoadModule headers_module modules/mod_headers.so LoadMod
本文向大家介绍C#中使用WinRAR实现加密压缩及解压缩文件,包括了C#中使用WinRAR实现加密压缩及解压缩文件的使用技巧和注意事项,需要的朋友参考一下 本次示例主要实现: 1.压缩文件夹及其下文件 2.压缩文件夹下文件 3.压缩文件夹及其下文件为rar 还是 zip 4.解压缩 5.加密压缩及解加密压缩 ----------- 示例代码如下: # re: C# (加密)压缩及解压缩 相关文件夹