原创文章,转载请注明出处!

前言:

amr作为一种高压缩比的音频格式,受到很多客户的青睐。本文主要涉及两部分的内容,一是amr如何转为mp3格式,二是如何直接播放amr格式的文件。

1. 如何使用Java将amr格式的文件转化为mp3格式的文件?

要实现转化需要一个依赖:

ws.schild

jave-core

2.4.4

上面的这个依赖本质上是封装一堆对于ffmpeg的调用接口,因此你的环境中要安装ffmpeg,否则单有jar包是没用的。你可以去下载并安装你系统对应版本的ffmpeg,然后配置环境变量,最后确认ffmpeg -version命令正常使用就表示安装成功。

有了jar包和ffmpeg,剩下的你只需要如下代码就可以了:

public boolean amrToMp3(java.io.File source, java.io.File target) throwsInputFormatException {

boolean bool = false;

AudioAttributes audio = newAudioAttributes();

audio.setCodec("libmp3lame");

EncodingAttributes attrs = newEncodingAttributes();

attrs.setFormat("mp3");

attrs.setAudioAttributes(audio);

Encoder encoder = newEncoder();

try{

MultimediaObject multimediaObject = newMultimediaObject(source);

encoder.encode(multimediaObject,target, attrs);

bool = true;

} catch (IllegalArgumentException |EncoderException e) {

e.printStackTrace();

bool = false;

}finally{

returnbool;

}

}

这段代码传入源文件路径和目标文件路径,然后就会把amr转化为mp3。

我本来是想采用这种方法的,因为我本地是可以正常使用的,但是迫于服务器是基于arm版cpu的redhat 7.6,想要在这上面安装ffmpeg对我来说极度困难,要先下载ffmpeg源码,然后编译,然后配置环境变量,这个过程中的试错会耗费相当一部分时间,因此开始考虑,能不能用js播放amr文件?

2. 如何直接播放amr格式的文件?

在网上搜索了大量资料后,发现可以先把 amr转化为base64字符串,然后用js播放base64字符串即可。这个方法有个局限就是:如果base64字符串太长的话,程序运行会出错,因为我们amr来源于用户的录音,因此,我们可以控制录音时间最大值,所以这个问题得以解决。

这里再多说一句用法,引入js后,先在页面加载时,初始化这个东西:RongIMLib.RongIMVoice.init();

然后你可以弄个button,点击的时候触发方法,传入amr转的base64字符串,(注意这个base64字符串一开始的逗号前面那一截不需要)RongIMLib.RongIMVoice.play(base64),页面这时候就会发出声音了。

大家如果想要可以私信我。

这就是处理amr问题的两个思路 ,弟兄们听懂了吗?

java 播放amr_amr格式转mp3和直接播放amr格式的文件-sunziren相关推荐

  1. mp3转wma格式转换器 mp3音频怎么转换wma格式

    常见的音频格式,一般我们见过的都是MP3音频格式来的.而现在给你介绍的mp3转换wma格式中,wma音频格式是Windows Media Audio,是微软力推的一种音频格式.WMA格式是以减少数据流 ...

  2. 怎么把amr格式转换为mp3格式?

    怎么把amr格式转换为mp3格式?amr是什么?今天简单直接点讲amr也是音频文件的一种不常见格式.因为兼容性的原因,所以你如果下载到了以amr为后缀的音频,打开往往是播放不了的,这个时候也很简单,我 ...

  3. php amr格式转换,php 微信amr转mp3的方法

    php微信amr转mp3的方法:首先下载"ffmpeg6-php54-win32-vc9":然后将"php_ffmpeg.dll"拷贝到"php-5. ...

  4. 很简单的x2m格式转换为mp3方法

    一个很简单的x2m格式转换为mp3方法. 正常下载的喜马拉雅文件是一个.x2m格式文件,无法通过正常的格式工厂等格式转换工具进行转换,因为.xm文件它本身就不是一个通用的.被广泛认可的音频文件. 所以 ...

  5. 融云 AMR(Aduio) 播放 AMR 格式 Base64 码音频

    1.必备资料 github AMR 开源库 :https://github.com/jpemartins/amr.js 用心把这个项目看一遍,对于我下面说的话,可以忽略啦,代码是最好的文章,哈哈~~ ...

  6. linux java amr转mp3_本工具用于将微信语音 amr 格式转换为 mp3 格式以便在 html5 的 audio 标签中进行播放...

    音频转码工具 本工具主要用于将微信语音 amr 格式转换为 mp3 格式以便在 html5 的 audio 标签中进行播放. 支持 Linux/Windows/Mac 平台 因为是基于 JAVE 项目 ...

  7. java amr音频转码_jave: 音频转码工具,主要用于将微信语音 amr 格式转换为 mp3 格式以便在 html5 的 audio 标签中进行播放...

    音频转码工具 本工具主要用于将微信语音 amr 格式转换为 mp3 格式以便在 html5 的 audio 标签中进行播放. 支持 Linux/Windows/Mac 平台 因为是基于 JAVE 项目 ...

  8. 【Java】java转换可播放的QQ/微信高质量语音格式,mp3/wav转silk格式(高质量音频),mp3转换amr格式(低质量音频),mp3/wav转pcm(非语音格式)

    1.简要 参考各个博主,发现java里mp3转silk的案例真的少,几乎没有,有的都是基于 linux系统的,所以自己研究了下就有了以下代码 tips:mp3转换silk格式,需要先转换成pcm再转换 ...

  9. java silk转mp3,小程序录音后格式转换问题请教

    23 回复 我也大概知道是这玩意,但是java代码不太会搞.... 大叔啊,有没有直接的java代码啊,我自己写了但是出了好多问题,不知道如何是好啊....冒昧问下nutz提供转码工具类么...如果没 ...

最新文章

  1. 独角兽也未能幸免,2019“阵亡”新经济公司大盘点
  2. Windows 查看端口占用
  3. Python实现matplotlib显示中文的方法详解
  4. 手工杀毒之“三十六计”
  5. 【linux基础】linux不能进入系统
  6. 最大公约数,最小公倍数的求法
  7. java文章采集爬虫代码示例
  8. 成功路上并不拥挤 因为坚持的人不多
  9. 关于Java基础部分知识的综合应用之成员调度系统的项目
  10. 伯俊软件获得阿里云原生核心授牌伙伴认证,共建新生态
  11. 《创新者的基因》读书笔记
  12. 涉密计算机外送维修,涉密计算机及涉密介质维修
  13. Unity3D学习笔记(一):Unity简介、游戏物体、组件和生命周期函数
  14. 无人驾驶系统是个复杂的计算机系统,无人驾驶汽车安全行驶的三大系统
  15. [java]飞书机器人签名校验GenSign方法
  16. 使用云服务器掉线/异常/出问题是什么原因?如何解决?
  17. 三星c1116 android5.0,三星C1116(GALAXY K Zoom 联通3G)一键救砖教程,轻松刷回官方系统...
  18. 如何修炼成一个合格的商业分析师
  19. IT66121FN: 带 HDMI1.4 3D 嵌入式 CEC 的低功耗发射器
  20. PL/SQL dev使用指南

热门文章

  1. [转]解密回声消除技术之二(应用篇)
  2. 让虞书欣、李诞拍到停不下来!AR+AI双引擎的互动小游戏,如何打开IP新玩法?...
  3. 机器学习模型的评价指标和方法
  4. 牛客ACM模式标准输入
  5. STM32产生SPWM波
  6. 第五届浙江省网络与信息安全竞赛部分WP
  7. Implementing the 3DVIA Composer Player ActiveX in Windows Presentation Foundation
  8. 学了一个学期《数据分析方法》课程,一篇文章总结完!
  9. lisp 边坡_STAB(土质边坡稳定分析原理、方法与程序)程序使用说明书.pdf
  10. 自己动手写php web server