• 2.2、jwplayer视频播放(FLV,mp4)实现和已封装好的php接口


    2.2.1、PHP调用方法

    <?php
    class flv{
        var $flv_root = '/resources/jwplayer/';
        
        public static function get_header(){
            echo "<script type='text/javascript' src='/resources/jwplayer/jwplayer.js'></script>";        
        }
        
        #$arr为数组类型的播放列表;
        #只有一个视频不显示播放列表,整个宽度设置为800px;多个视频显示播放列表,宽度设置为1000px,播放列表宽度设为200px;    
        public function flv($arr){
            $width=800;
            $height=450;
            $size=1;
            if(count($arr)>=2){
                $size=200;
                $width=1000;
            }        
            $list = json_encode($arr);        
            $retval = '';
            #$options = array();        
            $retval .= "<div id='myElement'></div>
    ";
            $retval .= "<script type='text/javascript'>
    ";
            $retval .= "jwplayer('myElement').setup({
    ";
            $retval .= "flashplayer:'/resources/jwplayer/jwplayer.flash.swf',
    "; #播放器路径
            $retval .= "primary:'flash',
    "; #默认以flash形式播放,也可以设置为html5
            $retval .= "playlist:{$list},
    "; #播放列表
            $retval .= "{$width},
    "; #播放器宽度(包括播放列表)
            #$retval .= "aspectratio:'4:3',
    "; #播放器长宽比
            $retval .= "height: {$height},
    "; #播放器高度
            $retval .= "listbar:{position:'right',size:{$size},layout:'extended'},
    "; #播放器列表显示样式 basic/extended
            $retval .= "captions:{color:'#FF0000',backgroundColor:'#F1F1F1',windowColor:'#FF6600'},
    "; #设置节点显示样式,加载的是.vtt文件
            $retval .= "logo:{file:'',link:'http://www.hrloo.com'},
    "; #logo链接和logo链接的地址
            $retval .= "autostart:'false',
    "; #是否自动播放
            $retval .= "repeat:'true',
    "; #是否循环播放
            $retval .= "startparam:'start',
    ";
            $retval .= "provider:'http',
    "; #视频流协议类型
            $retval .= "stretching:'uniform',
    "; #视频缩略图(视频)填充类型:等比例放大/缩小填充        
            $retval .= "streamer:'start'"; #设置视频文件加载方式,是否支持拖动加载,FLV(start)
            $retval .= "});
    ";
            $retval .= "</script>";        
            echo $retval;
        }    
    }
    ?>

    2.2.2、调用参数格式为:

    <?php
    #list数组为传给播放器的参数(可多个视频,多个分辨率)
    $list=array(
            array(
                    'image'=>'',//视频封面
                    'sources'=>array(                        
                            array('file'=>'flv/ssshr1024x768.flv','label'=>'1024x768'),//播放的视频路径和清晰度提示选择
                            array('file'=>'flv/ssshr640x480.flv','label'=>'640x480','default'=>'true'),//default选项可以设置默认播放的清晰度
                            array('file'=>'flv/ssshr352x288.flv','label'=>'352x288')
                    ),
                    'title'=>'人力资源培训课程测试',//视频标题
                    'description'=>'培训课程',//视频简介,播放列表为图片模式可以显示
                    'tracks'=>array(
                            array('file'=>'mario.vtt','kind'=>'chapters'), //视频节点提示文子
                            array('file'=>'','kind'=>'thumbnails') //视频节点缩略图
                            )
                    ),
            array(
                    'image'=>'',
                    'sources'=>array(
                            array('file'=>'flv/sco01_01.swf','label'=>'720p HD'),
                            array('file'=>'mario.flv','label'=>'720p HD')
                            ),
                    'title'=>'mario1 test flv',
                    'description'=>'马里奥马里奥',
                    'tracks'=>array(
                            array('file'=>'mario.vtt')
                            )
                    )
        )
    ?>

    2.2.3、使用方法:

    <?php
    $flv = new flv($list);
    $flv->get_header();
    $flv->flv($list);
    ?>
  • 相关阅读:
    【转】JSch
    【转】JSch
    【转】class卸载、热替换和Tomcat的热部署的分析
    关于Tomcat自动加载更新class的小技巧
    MySQL中order by中关于NULL值的排序问题
    MySQL触发器使用详解
    QuartZ Cron表达式
    JDBC的URL设置allowMultiQueries的原因
    CRT:C运行库简介
    IntelliJ IDEA安装AngularJS插件
  • 原文地址:https://www.cnblogs.com/fremcode/p/3842282.html
Copyright © 2020-2023  润新知