首页 > 代码库 > 2.2、jwplayer视频播放(FLV,mp4)实现和已封装好的php接口

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

2.2.1、PHP调用方法

<?phpclass flv{    var $flv_root = ‘/resources/jwplayer/‘;        public static function get_header(){        echo "<script type=‘text/javascript‘ src=http://www.mamicode.com/‘/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>\n";        $retval .= "<script type=‘text/javascript‘>\n";        $retval .= "jwplayer(‘myElement‘).setup({\n";        $retval .= "flashplayer:‘/resources/jwplayer/jwplayer.flash.swf‘,\n"; #播放器路径        $retval .= "primary:‘flash‘,\n"; #默认以flash形式播放,也可以设置为html5        $retval .= "playlist:{$list},\n"; #播放列表        $retval .= "width:{$width},\n"; #播放器宽度(包括播放列表)        #$retval .= "aspectratio:‘4:3‘,\n"; #播放器长宽比        $retval .= "height: {$height},\n"; #播放器高度        $retval .= "listbar:{position:‘right‘,size:{$size},layout:‘extended‘},\n"; #播放器列表显示样式 basic/extended        $retval .= "captions:{color:‘#FF0000‘,backgroundColor:‘#F1F1F1‘,windowColor:‘#FF6600‘},\n"; #设置节点显示样式,加载的是.vtt文件        $retval .= "logo:{file:‘‘,link:‘http://www.hrloo.com‘},\n"; #logo链接和logo链接的地址        $retval .= "autostart:‘false‘,\n"; #是否自动播放        $retval .= "repeat:‘true‘,\n"; #是否循环播放        $retval .= "startparam:‘start‘,\n";        $retval .= "provider:‘http‘,\n"; #视频流协议类型        $retval .= "stretching:‘uniform‘,\n"; #视频缩略图(视频)填充类型:等比例放大/缩小填充                $retval .= "streamer:‘start‘"; #设置视频文件加载方式,是否支持拖动加载,FLV(start)        $retval .= "});\n";        $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);?>