HarmonyOS鸿蒙Next中小白请教avplayer开发音频播放的问题

HarmonyOS鸿蒙Next中小白请教avplayer开发音频播放的问题 我的需求是从手机里读取mp3文件进行播放。

拉起了窗口选择了mp3文件,并获得了URI。

后续参考这个开发示例:https://developer.harmonyos.com/cn/docs/documentation/doc-guides-V3/using-avplayer-for-playback-0000001504424437-V3

其中,我将示例中打开资源文件地址获取fd这个步骤修改了下,使用uri打开,如下:

真机上运行时,也能打印出状态机的initialized、prepared、playing下的日志,可是没有声音,想知道问题出在哪里?是不能用URI打开还是什么原因?

其次是也按照开发示例使用“资源管理接口获取打包在HAP内的媒体资源文件并通过fdSrc属性进行播放示例”进行播放,在rawfile 文件夹下存放了与示例同名的MP3文件,真机运行时也跟上面一样,能打印出状态机的initialized、prepared、playing下的日志,但没有声音。

想知道问题出在哪里?


更多关于HarmonyOS鸿蒙Next中小白请教avplayer开发音频播放的问题的实战教程也可以访问 https://www.itying.com/category-93-b0.html

6 回复

cke_129.png

官方示例中 播放后直接调用了暂停,这部分代码要注释diao

更多关于HarmonyOS鸿蒙Next中小白请教avplayer开发音频播放的问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


好的,确实有声音了,感谢大佬!

可以看官方的codelabs里面有 项目

官方的哪一个项目?

在HarmonyOS鸿蒙Next中,AVPlayer是用于音视频播放的核心组件。要开发音频播放功能,首先需要导入@ohos.multimedia.media模块。创建AVPlayer实例后,可以通过urlfdSrc设置音频源。使用prepare()方法准备播放资源,play()开始播放,pause()暂停,stop()停止播放。可以通过on('stateChange')监听播放状态变化,on('timeUpdate')获取当前播放时间。seek()方法用于跳转到指定时间点。播放结束后,调用release()释放资源。

在HarmonyOS鸿蒙Next中,使用AVPlayer开发音频播放时,首先需要导入ohos.multimedia.media库。创建AVPlayer实例后,通过setSource()设置音频源,可以是本地文件路径或网络URL。调用prepare()准备播放,play()开始播放。注意监听播放状态和错误,使用on('stateChange')on('error')回调处理。播放完成后调用release()释放资源。确保在config.json中声明ohos.permission.INTERNET权限以支持网络音频播放。

回到顶部