Angular 视频src在videojs中动态更改时,m3u8文件未播放

Angular 视频src在videojs中动态更改时,m3u8文件未播放,angular,video.js,http-live-streaming,m3u8,Angular,Video.js,Http Live Streaming,M3u8,我在这个问题上尝试了一些方法,但我找不到它,我正在使用videojs与contrib hls,这是第一次工作 对于m3u8文件,当我第一次使用ngOnit调用videojs时,它工作正常,但如果我更改动态src url,它会显示错误,我只是更改src url并将其附加到videojs src,但在这里,由于服务器或网络错误,媒体无法加载。但是,如果我使用mp4 mime类型,它工作得很好,并且更改动态src url也能工作,那么有人能帮我处理这个hls with m3u8文件吗 使用以下vide

我在这个问题上尝试了一些方法,但我找不到它,我正在使用videojs与contrib hls,这是第一次工作

对于m3u8文件,当我第一次使用ngOnit调用videojs时,它工作正常,但如果我更改动态src url,它会显示错误,我只是更改src url并将其附加到videojs src,但在这里,由于服务器或网络错误,媒体无法加载。但是,如果我使用mp4 mime类型,它工作得很好,并且更改动态src url也能工作,那么有人能帮我处理这个hls with m3u8文件吗

使用以下videojs文件:index.html

<link href="//vjs.zencdn.net/5.11/video-js.min.css" rel="stylesheet">
<script src="//vjs.zencdn.net/5.11/video.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/videojs-contrib-hls/3.6.4/videojs-contrib-hls.min.js"></script>
组件html代码:

<video id="example_video_11" class="video-js vjs-default-skin"
        controls preload="auto" data-setup='{"example_option":true}'>
      <source [src] = videoUrl type="application/x-mpegURL" />  
   </video>

找到正确的解决方案花了2天时间

我用过 动态更改视频源。在我的index.html中包含videojs播放列表js文件,并在我选择的视频方法中添加了一个简单片段

selectedVideo(video:VideoFile) { // passing new video object 
 this.selectedVideo = video;   
 this.videoUrl = this.selectedVideo.videoPath;
 this.videoUrl = this.videoUrl + '?access_token='+ this.authenticationService.access_token;  
 let self = this;
 this.videoJSplayer.playlist([{
            sources: [{
                     src: self.videoUrl,
                     type: 'application/x-mpegURL'
                     }] }
                  ]);   
    }
它解决了我的问题。它动态地改变了src

selectedVideo(video:VideoFile) { // passing new video object 
 this.selectedVideo = video;   
 this.videoUrl = this.selectedVideo.videoPath;
 this.videoUrl = this.videoUrl + '?access_token='+ this.authenticationService.access_token;  
 let self = this;
 this.videoJSplayer.playlist([{
            sources: [{
                     src: self.videoUrl,
                     type: 'application/x-mpegURL'
                     }] }
                  ]);   
    }