AMR和WAV互相转换

---------------------------2015.8.25---------------------------------- -------

安卓录制的amr转换出现问题的,请百度下载mediainfo,比对demo录制转换的amr参数是否一致。

也有人找我说安卓出问题,但是最后确实是安卓端录制参数问题造成的。

这demo我使用过网上下载的amr文件,转换wav,是正常的。所以出问题,极可能是安卓录制不对。

//----------------------------2015.6.6-----------------------------------------

重制了个简洁很多的demo。支持电脑模拟器录音转换,iOS7 至 iPhone 6p iOS8。

下载地址

//-----------------2015.3.20-----------------------------------------------------------

各位不好意思,这么慢才更新。

最新库文件在这里 支持64位库文件  ,替换原来demo中的文件即可。

//---------------------------------------------------------------------------------

上网查了下资料,发现资料不多,现在搞定了,分享下经验,方便大家交流学习吧。

实现过程是先录制WAV,然后再转AMR,然后发送给Andriod。接收时再把AMR格式转WAV然后播放。

1.录制WAV,参考了官方的SpeakHere范例

https://developer.apple.com/library/ios/#samplecode/SpeakHere/Introduction/Intro.html

2.转AMR格式主要参考了

与大家讨论如何用opencore amr在iOS上decode(已解决)

http://blog.csdn.net/favormm/article/details/6804553

综上,最后实现了WAV和AMR格式的互转。

综合了一下,做了个小小的demo,里面实现了录制WAV,WAV转AMR,AMR转WAV的功能。

时间: 2024-10-05 23:26:57

AMR和WAV互相转换的相关文章

Web 播放声音 — Flash 篇 (播放 AMR、WAV)

本文主要介绍 Flash 播放 AMR 格式 Base64码 音频. 在此之前么有接触过 Flash ,接触 AS3 是一头雾水,不过幸好有 TypeScript 和 JavaScript 的基础看起来不是很费劲,现学现卖的就是开了 ”跳坑“ 之旅~~~ 1.实现思路 起初一点实现思路都木有,不知道该从何做起,只知道用 Flash 播放 AMR ,度娘谷姐的一顿找,结果可想而知,没有糟糕,只有十分糟糕,哈哈. 后来想了想,凡事都得有个思路,不能闷头干,瞬间恍然大悟,为自己浪费的快一天的时间,感到

vs2010音频文件压缩 调用lame_enc.dll将WAV格式转换成MP3

/* //My_lame.h */ #pragma once#include "stdafx.h"#include <windows.h>#include <stdio.h>#include <stdlib.h>#include <string>#include "BladeMP3EncDLL.h"class My_lame{public: My_lame(void); ~My_lame(void); HINSTANC

ffmpeg常用转换命令,支持WAV转AMR

音频转换: 1.转换amr到mp3: ffmpeg -i shenhuxi.amr amr2mp3.mp3 2.转换amr到wav: ffmpeg -acodec libamr_nb -i shenhuxi.amr amr2wav.wav 3.转换mp3到wav: ffmpeg -i DING.mp3 -f wav test.wav 4.转换wav到amr: ffmpeg -i test.wav -acodec libamr_nb -ab 12.2k -ar 8000 -ac 1 wav2amr

FFMPEG 音频转换命令

音频转换: 1.转换amr到mp3: ffmpeg -i shenhuxi.amr amr2mp3.mp3 2.转换amr到wav: ffmpeg -acodec libamr_nb -i shenhuxi.amr amr2wav.wav 3.转换mp3到wav: ffmpeg -i DING.mp3 -f wav test.wav 4.转换wav到amr: ffmpeg -i test.wav -acodec libamr_nb -ab 12.2k -ar 8000 -ac 1 wav2amr

ffmpeg常用转换命令

音频转换: 1.转换amr到mp3: ffmpeg -i shenhuxi.amr amr2mp3.mp3 2.转换amr到wav: ffmpeg -acodec libamr_nb -i shenhuxi.amr amr2wav.wav 3.转换mp3到wav: ffmpeg -i DING.mp3 -f wav test.wav 4.转换wav到amr: ffmpeg -i test.wav -acodec libamr_nb -ab 12.2k -ar 8000 -ac 1 wav2amr

wav转amr以及简单调整音量

说一下wav转amr的方式.wav是PC上录制音频最容易生成的方式,但是缺点是生成的音频体积比较大.amr是手机上音频播放比较主流的格式,优点是音频体积小,易于传输. 转换的方式很简单,amr分两种,这里以nb为例.首先需要下载opencore-amr,将静态库和文件导入工程里.然后输入以下代码 int wav2Amr( const char *infile, const char *outfile) { enum Mode mode = MR122; int ch, dtx = 0; FILE

im client iOS端将android端录制的格式为amr的语音转码为wav格式

用到一个开源的库:opencore-amr for ios https://github.com/feuvan/opencore-amr-iOS 1.下载后运行xcode脚本, 2.脚本运行完成后,看到目录下test里面有例子,即解压和压缩的例子 我试了下,用amrn-dec.c +(DDMessageEntity *)makeMessageFromStream:(DDDataInputStream *)bodyData { int32_t seqNo = [bodyData readInt];

Linux下ffmpeg的wav与amr相互转换

转载:http://blog.csdn.net/sanshipianyezi/article/details/78742621 转载:http://blog.csdn.net/szfhy/article/details/50441162 在linux下进行wav和amr的相互转换,如果是amr转为wav只需要ffmpeg即可 但是若wav转为amr则需要依赖ffmpeg和opencore_amrnb库. 完整下载地址:http://download.csdn.net/download/sansh

Amr音频转换Mp3格式

最近研发部门有一个需求andriod手机端的音频格式amr或wav格式的音频文件需要统一在线转换,为了保证快速并行完成我使用的goroutine和chan,我已经封装好了docker镜像,大家有兴趣的可以下载直接使用: docker pull docker.io/liyinda/alpine_amrtomp3 github地址如下: https://github.com/liyinda/AmrToMp3 部分逻辑代码如下: //将filelist的文件列表传入ch管道 ch :=make(cha