文档章节

AMRWB优化

abcijkxyz
 abcijkxyz
发布于 2016/11/22 16:46
字数 237
阅读 30
收藏 0

 经过1个月时间的优化,AMR-WB解码性能总体提高了近10倍。

1. 从ITU官方网站下载代码,在ADS1.2上调试通过。对于测试码流为23.85kbps的向量tst_m8.cod,在ARM926EJS平台上,性能

    为105MIPS,156MCPS。

2. 根据profile的测试结果,占时间最大的是那些基本算术运算的操作。用ARMv5的内联汇编替换掉以后,性能大概为52MIPS,

    70MCPS。

3. 这时占时间的函数

  Filt_7k
  Syn_filt_32
  Filt_6k_7k
  Pred_lt4
  Syn_filt
  Oversamp_16k
 
 

           这几个函数都需要自己写汇编,只有汇编才能体现优化思路,C的优化很有限。这几个函数的汇编优化完以后,性能就在17MIPS,

     20MCPS左右了。

4.现在占时间的函数就变成下面的样子了:

 

  

 decoder
 Serial_parm
 Syn_filt_32
 HP400_12k8
 HP50_12k8

 

  这几个函数,主要是C的优化。把这些优化完,性能大概13MIPS,16.5MCPS。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

本文转载自:http://www.cnblogs.com/celerychen/archive/2009/11/27/3588224.html

共有 人打赏支持
abcijkxyz
粉丝 63
博文 6196
码字总数 1876
作品 0
深圳
项目经理
Linux 下完整安装ffmpeg(包括各种解码器)

FFmpeg 是什么? FFmpeg是一个开源免费跨平台的视频和音频流方案,属于自由软件,采用LGPL或GPL许可证(依据你选择的组件)。它提供了录制、转换以及流化音视频的完整解决方案。它包含了非常...

霖_柒
2015/04/27
0
0
Linux环境ffmpeg以及相应解码器安装

首先安装系统编译环境 2. 编译所需源码包 2.1 - yasm 汇编器,新版本的ffmpeg增加了汇编代码 2.2 - lame:Mp3音频解码 2.3 - amr支持 2.4 - amrnb支持 2.5 - amrwb支持 2.6 - ffmpeg 2.7 - 加...

jEpac
2016/07/21
21
0
ubuntu下ffmpeg的安装,实现支持3gpp转换

最近上线的项目,自驾游对讲机(android)的语音格式转码需要调试3gpp,所以需要再spx,3gpp,3gp等格式之间转换,特记录基于ubuntu环境下的环境ffmpeg部署细则 安装测试环境:ubuntu 11.04 ...

HelloEric
2012/12/25
0
0
Linux编译ffmpeg并转换MP3到AMR

AMR格式是智能手机上的常用音频文件格式,比如MP3格式的压缩比大,但是文件比MP3小,所以在移动互联项目中应用比较广泛。去年年底协助联想研究院开发一款预装产品过程中需要使用到MP3格式和A...

飞晏
2012/10/23
0
9
PHP调用CentOS命令调用ffmpeg将amr格式转mp3

一、 安装系统编译环境 二、编译所需源码包 1、汇编器,新版本的ffmpeg增加了汇编代码 2、Mp3音频解码 3、amr支持 4、amrnb支持 5、amrwb支持 6、ffmpeg 三、命令行使用方法 四、PHP调用Cen...

星星编程
2017/07/11
0
0

没有更多内容

加载失败,请刷新页面

加载更多

同样是工作3年程序员,为什么别人每月25K你却只有15K?

你有没有静下心来思考过:同样是做了x年Java开发,为什么你的技术比别人差很多?为什么别人每月26K你却只有15K? 其实技术水平的高低和个人智商关系不大(毕竟能做Java编程开发大家都不会差)...

Java填坑之路
1分钟前
0
0
跨域问题:解决跨域的三种方案

当前端页面与后台运行在不同的服务器时,就必定会出现跨域这一问题,本篇简单介绍解决跨域的三种方案,部分代码截图如下,仅供参考: 方式一:使用ajax的jsonp 前端代码 服务器代码 使用该方...

rechardchensir
1分钟前
0
0
linux学习-1012

8.6 管道符和作业控制 8.7/8.8 shell变量 8.9 环境变量配置文件 扩展 bashrc和bash_profile的区别 http://ask.apelearn.com/question/7719 简易审计系统: http://www.68idc.cn/help/server/...

wxy丶
2分钟前
0
0
springboot dubbo 在程序初始化完成前 使用回声测试对服务依赖检测

@Component @Order(2) public class PrkServiceInit implements ApplicationListener { private LoggerUtil logger = LogFactory.getLogger(PrkServiceInit.class); private static Applicat......

林伟琨
4分钟前
0
0
“网红架构师”解决你的Ceph 运维难题

Q1. 环境预准备 绝大多数MON创建的失败都是由于防火墙没有关导致的,亦或是SeLinux没关闭导致的。一定一定一定要关闭每个每个每个节点的防火墙(执行一次就好,没安装报错就忽视): CentOS s...

编程SHA
7分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部