HarmonyOS media.AVPlayer无法播放picker选择的视频uri?

通过相机录制的视频,使用picker选中后获得该视频的uri,然后使用media.AVPlayer播放报错。

关键代码:

// 1.uri转fd
let filePath = "file://media/Photo/13/VID_1724807350_000/VID_20240828_090743.mp4";
let fd = fileIo.openSync(filePath, fileIo.OpenMode.READ_WRITE | fileIo.OpenMode.CREATE).fd;
let state = fileIo.statSync(fd)
let avFileDescriptor: media.AVFileDescriptor = { fd:fd, offset: 0, length: state.size };
this.avPlayer.fdSrc = avFileDescriptor;
阅读 490
1 个回答

AVPlayer设置url,有3种来源:

1、如果使用本地资源播放,必须确认资源文件可用,并使用应用沙箱路径访问对应资源,也就是来源于沙箱路径。

2、如果使用网络播放路径,需声明权限:ohos.permission.INTERNET。

3、如果使用ResourceManager.getRawFd打开HAP资源文件描述符。

关于这块说明可参考官方文档该链接下的设置资源环节:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/using-avplayer-for-playback-V5\#开发步骤及注意事项

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进