代码拉取完成,页面将自动刷新
a. 编译demo
由于提供的.a静态库是在x86_64的机器上编译的,所以仅支持该架构的主机上编译运行。
$ make
b. 编译opencore-amr(可选)
如果想要在其他架构的CPU上编译运行,可以使用以下命令(脚本)编译opencore-amr
[下载地址]得到相应的库文件进行替换:
#!/bin/bash
tar xzf opencore-amr-0.1.3.tar.gz
cd opencore-amr-0.1.3/
./configure --prefix=$PWD/_install # --host=arm-linux-gnueabihf CC=arm-linux-gnueabihf-gcc
make -j96
make install
本示例是使用amr(nb)与pcm(8KHz,16bits,单/双声道)音频数据进行相互转化(编解码),使用如下:
$ ./pcm2amrnb ./audio/test_8000_16_1.pcm out.amr # 不管输入的PCM是单声道还是双声道,这里输出的amr都是单声道的
$ ./amrnb2pcm ./audio/test.amr out_8000_16_1.pcm # 解码出来的PCM都是8KHz单声道
"Amr supports only 8000Hz sample rate and 4.75k, 5.15k, ...": https://stackoverflow.com/questions/2559746/getting-error-while-converting-wav-to-amr-using-ffmpeg#
$ tree
.
├── audio
│ ├── test_8000_16_1.pcm
│ ├── test_8000_16_2.pcm
│ └── test.amr
├── docs
│ ├── AMR文件格式分析_dinggo的专栏-CSDN博客_amr格式.mhtml
│ ├── AMR编码文件解析_hanzhen7541的博客-CSDN博客.mhtml
│ └── audio - getting error while converting wav to amr using ffmpeg - Stack Overflow.mhtml
├── include
│ ├── interf_dec.h
│ └── interf_enc.h
├── libs
│ └── libopencore-amrnb.a
├── main_amrnb2pcm.c
├── main_pcm2amrnb.c
├── Makefile
└── README.md
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。