HarmonyOS鸿蒙Next中js API6如何从媒体中选择视频,并添加到video组件进行播放?
HarmonyOS鸿蒙Next中js API6如何从媒体中选择视频,并添加到video组件进行播放?
目前通过 mediaLibrary的startMediaSelect 获取到了 视频文件的uri dataability:///media/external/video/media/6370
文档中并没有指明src具体路径类型,参考image的路径,支持dataability
但实际使用过程中,显示打开视频文件失败,求大佬指教。
楼主你好,目前js api6的video组件的src不支持此uri (通过 mediaLibrary的startMediaSelect 获取到了 视频文件的uri ),目前的解决办法有,使用ets语法中VideoPlayer实例办法实现视频播放,参考链接:https://developer.harmonyos.com/cn/docs/documentation/doc-references/js-apis-media-0000001281201038
视频开发的demo参考:
更多关于HarmonyOS鸿蒙Next中js API6如何从媒体中选择视频,并添加到video组件进行播放?的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
请问api6的video支持什么类型的src呢?
找HarmonyOS工作还需要会Flutter的哦,有需要Flutter教程的可以学学大地老师的教程,很不错,B站免费学的哦:BV1S4411E7LY/?p=17
在HarmonyOS鸿蒙Next中,使用js API6从媒体库中选择视频并添加到<video>
组件进行播放,可以通过以下步骤实现:
-
引入必要的模块:
import mediaLibrary from '[@ohos](/user/ohos).multimedia.mediaLibrary'; import picker from '[@ohos](/user/ohos).file.picker';
-
创建视频选择器:
const videoPicker = new picker.PhotoViewPicker(); videoPicker.select({ type: picker.PhotoViewMimeType.VIDEO }).then((result) => { if (result && result.length > 0) { const videoUri = result[0].uri; // 将视频URI传递给<video>组件 playVideo(videoUri); } }).catch((err) => { console.error('Failed to pick video:', err); });
-
播放视频:
function playVideo(videoUri) { const videoComponent = document.getElementById('videoPlayer'); videoComponent.src = videoUri; videoComponent.play(); }
-
HTML部分:
<video id="videoPlayer" controls></video>
通过以上步骤,你可以从媒体库中选择视频并在<video>
组件中播放。
在HarmonyOS鸿蒙Next中,使用JS API6从媒体库选择视频并添加到<video>
组件播放的步骤如下:
- 引入媒体选择模块:使用
@ohos.file.picker
模块创建文件选择器。 - 配置选择器:设置选择器类型为视频,并调用
select()
方法打开选择界面。 - 获取视频路径:用户选择视频后,通过回调获取视频的URI。
- 设置
<video>
组件:将获取的URI赋值给<video>
组件的src
属性,实现视频播放。
示例代码:
import picker from '@ohos.file.picker';
let videoPicker = new picker.PhotoViewPicker();
videoPicker.select().then((PhotoSelectResult) => {
let videoUri = PhotoSelectResult[0].uri;
this.videoSrc = videoUri; // 将URI赋值给video组件的src属性
}).catch((err) => {
console.error('Failed to select video:', err);
});
确保在<video>
组件中绑定src
属性:
<video src="{{videoSrc}}" controls></video>
通过以上步骤,即可实现从媒体库选择视频并播放。