Videoplayer组件使用

  • Creator 版本:2.3.1

  • 目标平台: 微信小程序

无法播放指定url下的视频。我用的是和本地视频播放一样的脚本,请问是否需要先把填好的url上的资源加载下来,才能播放

最好贴出代码。假如在resources/videoTest下有一个资源是test.mp4,这是一种可能对你有帮助的使用方法,this.videoPlayer.resourceType = cc.VideoPlayer.ResourceType.REMOTE; this.videoPlayer.remoteURL = cc.url.raw(“resources/videoTest/test.mp4”);

请问 你播放本地的视频没问题吗 ios 安卓 以及开发工具 播放都没有问题吗

播放本地视频安卓没问题,ios和电脑端也没法自动播放

cc.Class({
extends: cc.Component,
properties: {
videoplayer: cc.VideoPlayer
},
onLoad: function () {
this.videoplayer.node.on(‘ready-to-play’,this.callback,this);
this.videoplayer.node.on(‘completed’,this.callback2,this);
},
callback: function(event){
var videoplayer = event.detail;
if (this.videoplayer){
this.videoplayer._syncVolume();
this.videoplayer.play();
}
},

 callback2: function(event){
     cc.director.loadScene("start");
 },

});
是在一个场景中自动播放完之后跳转到另一个场景中

尝试了一下,微信小游戏中,监听不到【ready-to-play】,程序调用play也无效。
可以换个方案,使用wx.createVideo({})插入videoPlayer播放视频:

    let src = cc.url.raw("resources/videoTest/test.mp4");
    this.video = wx.createVideo({
      x: 0,
      y: 0,
      initialTime: 0,
      width: 300,
      height: 200,
      controls: false,
      autoplay: true,
      src: "远程服务器地址" + "/" + src
    })

    this.video.play();
    this.video.onEnded(res => {
      cc.log("视频播放完了");
      this.video.destroy();
      this.video = null;
    })

另外在界面onDestroy中也需要加上this.video && this.video.destroy();

老哥,能加个联系方式吗,有偿请您帮忙解决一下可以吗

哈哈,有偿真是客气了。
只是解决方案上给点参考,如果使用wx.createVideo,videoPlayer层级会在最上层,如果视频上层还要显示什么UI,这个方案也是不好处理,如果只是一个纯粹的视频界面,播放完毕自动跳转,这样的话上述代码中加上视频铺满全频的处理即可满足需求。
参考:https://developers.weixin.qq.com/minigame/dev/guide/base-ability/video.html

兄弟加个Q 1206743263 按照别人教程在引擎里使用wx api跑不成,求指导一下

已加…