切换风格

默认晚霞 雪山 粉色心情 伦敦 花卉 绿野仙踪 加州 白云 星空 薰衣草 城市 简约黑色 简约米色 龙珠
回复 0

3850

主题

3851

帖子

1万

积分

论坛元老

Rank: 8Rank: 8

积分
12834
【功能实现】m3u8解析[复制链接]
发表于 2022-4-8 22:34:46 | 显示全部楼层 |阅读模式
  

刚才看到有人发了帖子同样是解析m3u8视频前几天刚好也简单写了一个 代码开源
程序是tp5+layui开发的,是用ajax的
其实很简单,就是调用了下ckplayer播放器,他内置已经可以解析了。
后台控制器-方法

//m3u8格式视频解析

      public function m3u8(){

              if(request()->isAjax())

              {

                    $url = input('get.url');

                    $new_url = "f=http://". $_SERVER['HTTP_HOST']. "/static/admin/my/flash/m3u8.swf&a=".$url;

                    if(!empty($url)){

                          return json(['code' => 1, 'url' => $new_url,'msg' => '解析成功']);

                    }else{

                          return json(['code' => -1, 'url' => '','msg' => '请检查网址是否正确']);

                    }

              }

              return $this->fetch();

      }
复制代码
静态资源路径
223445w14woy6cunnrewy4.jpg
前端模板重要代码

<form class="layui-form" >

      <div class="layui-form-item">

              <label class="layui-form-label">输入后缀.m3u8地址</label>

              <div class="layui-input-block">

                    <input type="text" name="url" value="https://dy2.jsyunbf.com/20180706/g8PPPUN7/index.m3u8" class="layui-input" placeholder="请输入要下载文件的URL">

              </div>

      </div>

      <div class="layui-form-item">

              <div class="layui-input-block">

                    <button class="layui-btn" lay-submit lay-filter="m3u8">解析视频</button>

                    <a href="" class="layui-btn layui-btn-normal" id="bofang" target="_blank" style="display: none">点击播放</a>

                    <a type="reset" class="layui-btn layui-btn-danger" href="javascript:history.go(-1);">返回</a>

              </div>

      </div>

      <div class="layui-form-item">

              <div class="layui-input-block">

                    <div id="a1"></div>

              </div>

      </div>

</form>
复制代码
<script>

      //Demo

      layui.use(['form', 'layer'], function(){

              var form = layui.form;

              var $ = layui.$ //重点处

                    ,layer = layui.layer;

              //ajax表单提交

              form.on("submit(m3u8)", function(data){

                    $.ajax({

                          type:"GET",

                          url:"{:url('admin/tool/m3u8')}",

                          dataType:"JSON",

                          data:data.field,

                          success:function(res){

                                  if(res.code == '1'){

                                        layer.msg(res.msg, {icon: 6});

                                        var flashvars={

                                              f: '/static/admin/my/flash/m3u8.swf',                             //使用swf向播放器发送视频地址进行播放

                                              a: res.url,

                                              c: 0,                          //调用 ckplayer.js 配置播放器

                                              p: 1,                          //自动播放视频

                                              s: 4,                          //flash插件形式发送视频流地址给播放器进行播放

                                              lv: 0

                                        };

                                        var params={bgcolor:'#FFF',allowFullScreen:true,allowScriptAccess:'always',wmode:'transparent'};

                                        $(document).ready(function() {

                                              $('#a1').css('height', $(window).height());

                                        });

                                        CKobject.embedSWF('/static/admin/my/flash/ckplayer.swf','a1','ckplayer_a1','100%','86%;',flashvars,params);

                                  }else{

                                        layer.msg(res.msg, {icon: 5});



                                  }

                          }

                    });

                    return false;

              })

      });

</script>
复制代码
好了    没什么难度 希望大佬们支持
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|不懂 ( 粤ICP备14042591号-1 )|网站地图

GMT+8, 2024-10-30 12:15 , Processed in 0.112993 second(s), 30 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

返回顶部