播放m3u8视频页面代码简单demo及一些测试播放地址

 

m3u8测试播放地址

https://leshiyuncdn.ahjunqin.top/20231221/11lQU4M0/index.m3u8

 

播放页面html页面代码

 

<script src="//cdn.jsdelivr.net/npm/hls.js@latest"></script>
                        <div id="player-container">
                            <div id="player"></div>
                            <div id="player-tip"></div>
                        </div>

 

css

复制代码
 #player-container {
            position: relative;
            width: 100%;
            max-width: 752px;
            height: 423px;
            margin: 30px auto;
            background: black;
        }

        @media ( max-width : 767px) {
            #player-container {
                height: 300px;
            }
        }



       #player {
            width: 100%;
            height: 100%;
        }

         #player-tip {
            position: absolute;
            width: 100%;
            top: 50%;
            margin-top: -20px;
            text-align: center;
            color: #ccc;
            visibility: hidden;
        }
复制代码

 

 

js

 

<script src="https://cdn.staticfile.org/jquery/2.1.1/jquery.min.js"></script>
复制代码
    function isMobile() {
        return (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent));
    }

    function playM3U8(src) {
        window.location.hash = 'type=m3u8&src=' + encodeURIComponent(src);
        $('#player-tip').hide();

        if (isMobile()) {
            playM3U8byNative(src);
        } else {
            playM3U8byHlsJS(src);
        }
    }

    function playM3U8byNative(src) {
        var html = '<video id="player" controls autoplay>';
        html += '<source src="' + src + '" type="application/x-mpegurl">'
        html += '<source src="' + src + '" type="video/mp4">'
        html += '</video>';
        $('#player').replaceWith(html);
        return;
    }

    function playM3U8byHlsJS(src) {
        $('#player').replaceWith('<video id="player" controls></video>');
        var video = document.getElementById('player');
        var hls = new Hls();
        hls.attachMedia(video);
        hls.on(Hls.Events.MEDIA_ATTACHED, function () {
            console.log("video and hls.js are now bound together !");
            hls.loadSource(src);
            hls.on(Hls.Events.MANIFEST_PARSED, function (event, data) {
                console.log("manifest loaded, found " + data.levels.length + " quality level");
                video.play();
            });
        });
    }
复制代码

 

 

使用 在js里调用

playM3U8("m3u8格式的播放地址");



posted @   yvioo  阅读(5809)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2021-07-10 SpringBoot 设置服务一启动就执行(启动执行)、初始化数据
2021-07-10 JAVA日期Date格式转corn表达式
2021-07-10 SpringBoot整合quartz框架启动定时任务报错:the given trigger will never fire.
点击右上角即可分享
微信分享提示