在我的应用程序中,我需要将mp3文件解码为pcm缓冲区.这是很多数据,所以当我读取并解码时,我将其下采样到单声道22050Hz.

它的工作速度很慢,30秒用于在运行模式下解码3分钟的歌曲,在调试模式下老化.在我使用libmpg的Windows机器上,我可以在大约1秒内完成.

是否有更快的方式,任何人都知道肯定更快?我不想浪费时间实现另一种方法,如果它没有明显更快.谢谢.

顺便说一下,在我的应用程序中,我需要将整个内容下载到内存中的pcm缓冲区,所以我对简单播放mp3文件的东西不感兴趣.

最佳答案 这是你在Android中使用Native的时刻!

– 使用NDK并找到一个快速的c / c库(它们比jlayer快20倍,例如18秒内9min sogn)

– 有些库可以是有用的:

www underbit.com/products/mad/

www oracle.com/technetwork/java/javase/download-137625.html(不确定这个支持MP3toPCM)

lame.sourceforge.net/about.php(这个在github上有一个android开源项目,我希望对你非常有用!

https://github.com/intervigilium/liblame)

android pcm格式转mp3,java – android最快的解码mp3到pcm数据的方法相关推荐

  1. byte数组穿换成pcm格式_形象地介绍DSD的编解码原理及和PCM的区别

    一直有人不清楚DSD到底是啥原理,和MP3, FLAC, APE, WAV等基于PCM编码技术的音频格式又有啥区别.特意做了两张图说明一下.图一是是由很多黑点构成的蒙娜丽莎头像,点击看大图就知道是没有 ...

  2. Android布局文件怎样转java,android studio中从布局文件到mainactivity.java的控制流

    下面是一个android应用程序的代码片段,它生成一个随机数字表单1-20,用户猜中数字,当猜中数字后按下按钮时,将比较用户编写的数字(val)和应用程序生成的数字(rand_no). 比较之后,我希 ...

  3. 腾讯微博android sdk,腾讯微博java(android)sdk新增微博api详细介绍

    本文主要介绍腾讯微博android sdk中新增微博有关的8个接口,以及使用的示例代码 注意:以下所有的api示例代码都需要先新建QqTSdkService类对象qqTSdkService并初始化,见 ...

  4. 腾讯微博android sdk,腾讯微博java(android)sdk时间线api详细介绍

    本文主要介绍腾讯微博android sdk中时间线有关的20个接口,以及正常获取及翻页的使用的示例代码及部分特例 注意:以下所有的api示例代码都需要先新建QqTSdkService类对象qqTSdk ...

  5. android 请求权限失败怎么办,java – Android HTTP POST请求错误 – 套接字失败EACCES(权限被拒绝)...

    我正在尝试从 Eclipse下的Android应用程序向我的localhost发送POST请求,但是我收到此错误: socket failed EACCES (Permission denied). ...

  6. android系统模拟麦克风,在Android模拟器中使用麦克风(Java Android初学者)

    在 Android模拟器中使用麦克风的 I READ HERE可能是可能的,所以我决定尝试一下(尽管 THIS QUESTION的答案说它不可能) 我复制/粘贴了 ANDROID DEVELOPERS ...

  7. android double比较大小吗,java – Android – 比较方法违反了它的一般...

    没有用于重新发明轮子.我相信你应该只返回lhs.getDist().compareTo(rhs.getDist());让提供的实现compareTo完成这项工作. Compares two Doubl ...

  8. android开发中出现R.java was modified manually! Reverting to generated version!问题的解决方法...

    这种问题是说R.java文件没有起作用,开发中R.java文件是很重要的,所以解决此类问题按照下面的方法即可: 进入 eclipse后选择菜单栏中的 Projects ,然后选择 clean 这样就把 ...

  9. android 双线程等待,在Java/Android中启动另一个线程之前如何等待线程完成?

    在回答您的问题之前,我强烈建议您查看 ExecutorServices,例如 ThreadPoolExecutor. 现在回答你的问题: 如果要等待上一个线程完成,在开始下一步之前,您可以在之间添加t ...

最新文章

  1. 独家 | Python 3.10发布——你应该知道的五大新特性
  2. 程序员,是否应该有自己的职业规划?
  3. 大专学java还是python_零基础应该选择学习 java、php、前端 还是 python?
  4. 手机zip模拟器_车祸现场模拟器简体中文免安装版 6.4G
  5. Oracle 数据类型及存储方式(袁光东 原创)
  6. HotSpot源码(二):Java与C语言对比
  7. JavaScript中的arguments,callee,caller
  8. Php获取id并提交表单,提交表单后 PHP获取提交内容的实现方法
  9. 非递归遍历二叉树-前序中序
  10. 灵敏度和稳定性能兼具 新气体传感器技术适用于工业应用
  11. 原生js对数组操作(find,findIndex)
  12. kingbase 修改数据库密码
  13. 基于新浪微博api的微博分享功能实现
  14. html代码中font是什么意思,HTML元素font标签的使用方法及作用
  15. 史上屌炸天超详细的Java实现逆波兰表达式
  16. 实现树莓派模拟wifi进行打卡签到
  17. Python多线程-手慢无的真相
  18. PS运动模糊+径向模糊+高斯模糊
  19. Firefox 禁止中国用户!!
  20. 笔记本如何选择修复计算机,详细教你笔记本电脑无线网卡修复

热门文章

  1. 电脑台式计算机描述不可用,【计算机描述不可用】计算机描述不可用步骤_计算机分级不可用-系统城...
  2. 《数据库原理》实验六 SQL数据查询实验
  3. 华为机试:查找众数及中位数
  4. Dextran-PEG2000-Conjugate,葡聚糖聚乙二醇Conjugate,葡聚糖聚乙二醇,属于葡聚糖缀合物
  5. 你的睡眠时间和睡眠质量达标了么?
  6. scala在idea中的配置
  7. SPSS MODELER笔记1----数据基本处理和整体方法概念
  8. Nginx优化之虚拟主机
  9. flash崩溃未保存!
  10. 《黑客狙击》--一部值得观看的国产高科技犯罪电影