安卓开发里面怎么把mp3文件转为amr文件
使用jave 报错
public static boolean Mp3ToAmr(String srcname, String targetname)
{
File source = new File(srcname); //源文件
File target = new File(targetname); //目标文件
AudioAttributes audio = new AudioAttributes();
audio.setCodec("libmp3lame");
EncodingAttributes attrs = new EncodingAttributes();
attrs.setFormat("mp3");
attrs.setAudioAttributes(audio);
Encoder encoder = new Encoder();
try {
encoder.encode(source, target, attrs);
return true;
} catch (IllegalArgumentException | EncoderException e) {
e.printStackTrace();
}
return false;
}
使用jave 报错
public static boolean Mp3ToAmr(String srcname, String targetname)
{
File source = new File(srcname); //源文件
File target = new File(targetname); //目标文件
AudioAttributes audio = new AudioAttributes();
audio.setCodec("libmp3lame");
EncodingAttributes attrs = new EncodingAttributes();
attrs.setFormat("mp3");
attrs.setAudioAttributes(audio);
Encoder encoder = new Encoder();
try {
encoder.encode(source, target, attrs);
return true;
} catch (IllegalArgumentException | EncoderException e) {
e.printStackTrace();
}
return false;
}
解决方案 »
- 100分求解:adb和adbd有办法同机通讯吗
- 100分立贴求证!100分立贴求证!100分立贴求证!android中出现了process is bad
- android像素问题
- 关于模拟器启动打开摄像头问题
- Android titlebar字体模糊
- 如何在指定主题下显示想要的DatePickerDialog样式
- 虽然每次都沉了,但我还是厚颜无耻的来提问了!!!
- 安卓 是否能检测到 深蹲?
- android studio 中的问题
- android studio 3.0 打开其他人的项目怎么配置build.gradle
- 萌新求问 WebView显示空白的问题
- 安卓应用开发,应用开启服务在后台运行,息屏一段时间后被关了,找原因和解决方案。
ffmpeg -i DING.mp3 -f wav test.wav
2.转换wav到amr:
ffmpeg -i test.wav -acodec libamr_nb -ab 12.2k -ar 8000 -ac 1 wav2amr.amr
参考资料:https://www.cnblogs.com/xiaofengfeng/p/3573025.html
其实应该也有直接的转换命令,楼主可以自己查下FFmpeg转换工具的api。其实楼主为什么要做mp3转amr呢,按说二者是可以直接在android中播放的。还可以把mp3上传到服务器(占带宽流量稍多),在服务端通过代码调用FFmpeg库来实现转换。欢迎私信交流。
有一个开源wav转amr的代码:https://github.com/Distrotech/opencore-amr/tree/distrotech-opencore-amr/test
服务端的转换已经搞定,但是6M需要5秒
现在放到安卓端执行转换,没有找到合适的源码