Angular 视频src在videojs中动态更改时,m3u8文件未播放
我在这个问题上尝试了一些方法,但我找不到它,我正在使用videojs与contrib hls,这是第一次工作 对于m3u8文件,当我第一次使用ngOnit调用videojs时,它工作正常,但如果我更改动态src url,它会显示错误,我只是更改src url并将其附加到videojs src,但在这里,由于服务器或网络错误,媒体无法加载。但是,如果我使用mp4 mime类型,它工作得很好,并且更改动态src url也能工作,那么有人能帮我处理这个hls with m3u8文件吗 使用以下videojs文件:index.htmlAngular 视频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
<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'
}] }
]);
}