如何播放 HLS aes 加密视频?

时间:2021-07-19 09:55:28

标签: javascript html http-live-streaming hls.js

我想播放这个文件 https://beecastmediastaging-koct1.streaming.media.azure.net/2cdb5c11-1a01-4a63-a6f4-43f4bd17f0e3/TestMV.ism/manifest(format=m3u8-aapl,encryption=cbc).m3u8

令牌:eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1cm46bWljcm9zb2Z0OmF6dXJlOm1lZGlhc2VydmljZXM6Y29udGVudGtleWlkZW50aWZpZXIiOiJhNDY2Njg0MS1mYjcyLTRmY2UtYmFkNy1hZTViZmMxNDc1OTUiLCJuYmYiOjE2MjY2NjE3NDksImV4cCI6MTYyNjY4MDA0OSwiaXNzIjoibXlJc3N1ZXIiLCJhdWQiOiJteUF1ZGllbmNlIn0.vkOiY0NuwClVl-tXUyw9Zbr7pgHzR22z6C855UU-9cw

这是我的代码

<!DOCTYPE html>
    <html>
     <head>
        <meta charset=utf-8 />
        <title>hls.js</title>
        <script src="//cdn.jsdelivr.net/npm/hls.js@latest"></script>
        <script src="https://code.jquery.com/jquery-1.12.4.min.js"></script>
    </head>
    <body>
        
        <script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>
        
        <video controls autoplay id="video-player" height="700" width="1000"></video>
        <script>

        var levels = [];
            var video = document.getElementById('video-player');
        var videoEnoryptSrc = "https://beecastmediastaging-koct1.streaming.media.azure.net/2cdb5c11-1a01-4a63-a6f4-43f4bd17f0e3/TestMV.ism/manifest(format=m3u8-aapl,encryption=cbc).m3u8"
        var key = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJ1cm46bWljcm9zb2Z0OmF6dXJlOm1lZGlhc2VydmljZXM6Y29udGVudGtleWlkZW50aWZpZXIiOiJhNDY2Njg0MS1mYjcyLTRmY2UtYmFkNy1hZTViZmMxNDc1OTUiLCJuYmYiOjE2MjY2NjE3NDksImV4cCI6MTYyNjY4MDA0OSwiaXNzIjoibXlJc3N1ZXIiLCJhdWQiOiJteUF1ZGllbmNlIn0.vkOiY0NuwClVl-tXUyw9Zbr7pgHzR22z6C855UU-9cw"
        var config = {
                capLevelToPlayerSize: true,
            }

            if (video.canPlayType("application/x-mpegURL")) {
                var hls = new Hls(config)
                hls.loadSource(videoSrc)
                hls.attachMedia(video)

            } else if (Hls.isSupported()) {
                var hls = new Hls(config);
                hls.loadSource(videoEnoryptSrc+"?token="+key);
                hls.attachMedia(video);
                var i = 0;
                hls.on(Hls.Events.MANIFEST_PARSED, function (event, data) {
                console.log(
                'manifest loaded, found ' + data.levels.length + ' quality level'
                );
                levels = data.levels;
                while (i<levels.length)
                {   
                    console.log(levels[i]);
                    console.log(levels[i].attrs.RESOLUTION);
                    i++;
                }
                }); 
            }
</script>
</body>
</html>

我收到以下错误“在请求标头中找不到访问令牌”

我能做什么.....?帮帮我。

0 个答案:

没有答案