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>\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); ?>