【项目问题】pc端h5界面无法播放部分安卓音频

在开发语音许愿池功能时,遇到PC端H5无法播放部分安卓设备上传的m4a格式音频。经分析,问题出在音频声道不同,只有NBC格式能播放。为解决此问题,使用Java进行音频转码,将音频文件转为mp3格式,通过jave库实现快速转码,有效解决了播放兼容性问题。
摘要由CSDN通过智能技术生成

最近在项目里面做语音许愿池功能,手机app上传语音,然后手机打捞投屏到pc端的时候,h5界面用audio标签播放音频的时候,部分音频不能播放(m4a格式)。经过调查判定应该是安卓手机上传的音频有问题,我们最终采用了华为,小米,一加手机进行音频解析,发现原来音频的声道不同,只有NBC格式的才能播放,而implicit格式的就无法播放。下图是三分音频的信息:

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

这样一看就很恶心了,最终采用的办法是用jave转换格式,转成mp3格式
File source = new File(source );
File target = new File(target );
AudioAttributes audio = new AudioAttributes();
audio.setCodec(“libmp3lame”);
EncodingAttributes attrs = new EncodingAttributes();
attrs.setFormat(“mp3”);
attrs.setAudioAttributes(audio);
Encoder encoder = new Encoder();
encoder.encode(source, target, attrs);
用以上代码就ok了,不用考虑码率什么的。转换效率很快。
jar包我用的是jave-1.0.2的

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值