HarmonyOS 鸿蒙Next如何播放本地mp3文件

发布于 1周前 作者 h691938207 来自 鸿蒙OS

HarmonyOS 鸿蒙Next如何播放本地mp3文件

playSound() {
//创建soundPool实例
let soundPool: media.SoundPool;
let audioRendererInfo: audio.AudioRendererInfo = {
usage: audio.StreamUsage.STREAM_USAGE_MUSIC,
rendererFlags: 1
}
media.createSoundPool(5, audioRendererInfo, (error: BusinessError, soundPool_: media.SoundPool) => {
if (error) {
console.log(‘zd----’, Failed to createSoundPool)
return;
} else {
soundPool = soundPool_;
console.log(‘zd----’, Succeeded in createSoundPool)
let file: fileIo.File;
let soundID: number = 0;
let fileSize: number = 1; //通过fileIo.stat()获取size值
let uri: string = “”;
//获取fd的描述信息
fileIo.open(’…/…/resources/rawfile/kazicui.mp3’, fileIo.OpenMode.READ_ONLY).then((file_: fileIo.File) => {
file = file_;
console.log(‘zd----’, "file fd: " + file.fd);
uri = ‘fd://’ + (file.fd).toString()
soundPool.load(file.fd, 0, fileSize).then((soundId: number) => {
console.log(‘zd----’, ‘Succeeded in loading soundpool’);
soundID = soundId;
}, (err: BusinessError) => {
console.log(‘zd----’, 'Failed to load soundpool and catch error is ’ + err.message);
});
}).catch((e: BusinessError) => {
console.log(‘zd----’, ‘Failed to load soundpool and catch error is ’ + e.message + ’ code:’ + e.code);
});
}
});
}

提示Failed to load soundpool and catch error is No such file or directory code:13900002
音频文件要放在哪里

1 回复

作为IT专家,对于HarmonyOS 鸿蒙Next如何播放本地mp3文件的问题,以下提供几种专业方法:

方法一:使用华为音乐应用

  1. 确保本地mp3文件的格式被华为音乐应用支持(通常支持mp3、m4a、wav等)。
  2. 检查文件夹命名,避免使用特殊字符,以确保文件能被正常扫描。
  3. 在华为音乐应用中检查扫描设置,确保没有将音乐文件所在的文件夹设置为过滤项。
  4. 确保华为音乐应用具有访问存储空间的权限。

方法二:使用Media Kit中的AVPlayer API

  1. 创建AVPlayer实例对象,并加载音频资源。
  2. 设置AVPlayer的回调函数,处理播放状态的变化。
  3. 调用AVPlayer的play方法开始播放。

方法三:使用AudioRenderer API

  1. 配置音频渲染参数,并创建AudioRenderer实例。
  2. 调用AudioRenderer的start方法开始播放音频数据。

请注意,以上方法都需要基于HarmonyOS的开发环境进行实现。如果问题依旧没法解决请联系官网客服,官网地址是:https://www.itying.com/category-93-b0.html

回到顶部