HTML5 播放器使用文档

如何使用

<div id="e8888b74d1229efec6b4712e17cb6b7a_e"></div>
<script src="//player.polyv.net/script/player.js"></script>
<script>
  var player = polyvPlayer({
    wrap: '#e8888b74d1229efec6b4712e17cb6b7a_e',
    width: 800,
    height: 533,
    vid: 'e8888b74d1229efec6b4712e17cb6b7a_e',
  });
</script>

选项

参数 类型 默认值 说明
wrap string / HTMLElement - 页面上存在需要载入播放器的DOM元素或css选择器
width number / string 100% 播放器的宽度
height number / string auto 播放器的高度
vid string - 从 polyv 后台上传的视频会生成一个视频唯一vid
loop boolean false 视频播放结束后是否循环播放
autoplay boolean false 播放器加载后视频是否自动播放
volume number 0.75 视频默认音量大小,范围 (0, 1),播放器会记录上一次播放的音量
flash boolean false 是否默认打开flash播放器
df number - 视频默认清晰度,可设置为0123,分别对应自动、流畅、高清、超清,设置该参数会覆盖后台的设置
hideRepeat boolean false 播放结束后是否显示重播面板,可通过play.HTML5.changeRepeat改变
code string - 跑马灯设置中自定义的code值
speed boolean true 是否显示倍速选择
showHd boolean true 是否显示清晰度选择
ignoreIE boolean false 设置该选项将会在ie浏览器中禁用HTML5播放器(edge浏览器除外,国内360,QQ等浏览器的兼容模式表现为ie浏览器,所以也会被禁用)

选项-加密设置

playsafe (string / 默认值:undefined)
- 服务器计算出的 token 若要播放加密视频才需要该参数,非加密视频可忽略
- 请在服务器生成 token 值

ts (string | string / 默认值:undefined)
- 移动端加密视频时间戳 移动端视频的WEB加密

sign (string / 默认值:undefined)
- 移动端加密视频签名 移动端视频的WEB加密

token获取方式

// php
function get_client_ip() {
  if (!empty($_SERVER['HTTP_CLIENT_IP'])) {
    $ipaddress = $_SERVER['HTTP_CLIENT_IP'];
  } elseif (!empty($_SERVER['HTTP_X_FORWARDED_FOR'])) {
      $ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
  } else {
      $ipaddress = $_SERVER['REMOTE_ADDR'];
  }
    return $ipaddress;
}

$userId = 'your userId';       // polyv 提供的服务器间的通讯验证
$secretkey = 'your secretkey';     // polyv 提供的接口调用签名访问的key
$videoId = '65956867df8c717eb79136e05394122c_6';  // 视频对应vid
$ts = time() * 1000;      // 时间戳
$viewerIp = get_client_ip();  // 用户 ip
$viewerId = '12345';      // 自定义用户 id
$viewerName = 'testUser';  // 用户昵称, 若值为中文需要urlencode('张三')
$extraParams = 'HTML5';  // 自定义参数

/* 将参数 $userId、$secretkey、$videoId、$ts、$viewerIp、$viewerIp、$viewerId、$viewerName、$extraParams
    按照ASCKII升序 key + value + key + value ... +value 拼接
*/
$concated =  'extraParams'.$extraParams.'ts'.$ts.'userId'.$userId.'videoId'.$videoId.'viewerId'.$viewerId.'viewerIp'.$viewerIp.'viewerName'.$viewerName;

// 再首尾加上 secretkey
$plain = $secretkey.$concated.$secretkey;

// 取大写MD5
$sign = strtoupper(md5($plain));



// 然后将下列参数用post请求  https://hls.videocc.net/service/v1/token 获取 token
$url = 'https://hls.videocc.net/service/v1/token';
$data = array('userId' => $userId, 'videoId' => $videoId, 'ts' => $ts, 'viewerIp' => $viewerIp, 'viewerName' => $viewerName, 'extraParams' => $extraParams, 'viewerId' => $viewerId, 'sign' => $sign);

$options = array(
    'http' => array(
        'header'  => "Content-type: application/x-www-form-urlencoded\r\n",
        'method'  => 'POST',
        'content' => http_build_query($data)
    )
);
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);

// 获取返回结果的 token, 再传入 playsafe 中播放加密视频
$token = json_decode($result)->data->token;
var player = polyvPlayer({
  wrap: '#video',
  width: 800,
  height: 533,
  vid: '02bfeb00e2ea42ec033fedfbd24c2879_0',
  playsafe: '<?php echo $token ?>'  //传入服务器生成token
});

选项-自定义广告

adSkip (boolean / 默认值: false)

  • 是否可以跳过广告
  • 设置后会出现跳过广告的按钮

adMatter (array / 默认为后台设置值)

  • 自定义广告列表,可设置多个,设置后会覆盖后台广告设置
  • 视频广告只支持MP4格式

示例:

 adMatter: [
    {
      addrurl: 'http://www.polyv.net/', //广告跳转链接
      adtype: 2,  //广告资源类型: 1 图片广告 、2 视频广告、3 swf广告(flash播放器生效)
      location: 1, //广告位置: 1 片头广告、2 暂停广告 、3 片尾广告
      timesize: 10, //广告时长(单位:秒)
      matterurl: 'test.mp4', //广告地址
      cataid: 1 //分类ID(可选,默认为 1)
    }
  ]

选项-自定义片头

teaser_show (number / 默认为后台设置值)
- 是否显示片头,0 不显示, 1 显示

teaser_url (string / 默认为后台设置值)
- 片头地址(视频只支持mp4)

teaser_time (number / 默认为后台设置值,图片默认3
- 片头显示时长

teaserSkip (boolean / 默认值 false
- 是否显示跳过片头按钮

选项-统计

statistics (object / 默认值: undefined)
- 用户自定义播放统计参数

statistics: {
    session_id: 'class_1', // 播放场次标识
    param1: '1',           //自定义参数,可设置4个
    param2: '2',
    param3: '3',
    param4: '4',
  }

选项-自定义logo

logo (object / 默认值: undefined)
- 自定义logo设置,如果不设置则读取 polyv 后台的设置值
- 若设置了宽高的任何一个的话logo大小会根据据设置值显示,若不设置则最大显示120px,请注意图片大小不要过大以免影响显示效果

logo: {
  // 宽  默认 'auto'
  logo_width: 200,
  // 高  默认 'auto'
  logo_height: 'auto',
  // logo地址
  logo_url: 'test.png',
  // 位置 0,1,2,3,4 (隐藏、左上、右上、左下、右下)
  logo_pos: 2,
  // 跳转链接 (选填)
  logo_link: 'http://www.polyv.net/',
  // 透明度 (0~100)
  logo_alpha: 50
}

实例属性

属性 返回值 说明
isSupportHTML5 boolean 浏览器是否支持 HTML5 播放器,若返回 true 则播放器默认打开 HTML5 播放器,否则将打开flash 播放器
HTML5 boolean / object 当前打开的是flash播放器则该属性为 false,反之为HTML5播放器的实例,该实例之后会说明
flash boolean / object 当前打开的是HTML5播放器则该属性为 false,反之返回多终端代码初始化的实例,该实例之后会说明

实例方法

player.toFlash
- 切换到 flash 播放器

player.toHTML5
- 切换到 HTML5 播放器

player.destroy
- 销毁播放器,包括HTML5和flash播放器

player.on
- 事件绑定

player.changeStatistics(session_id, param1, param2, param3, param4)
- 修改播放统计参数

player.changeVid(object / string)
- 接口支持传入object、json格式化字符串、多个参数传入,使用如下:

const option = {
  vid: '需要切换视频的vid',
  autoplay: true,
  ts: '移动端授权ts',
  sign: '移动端授权sign',
  playsafe: '若是加密视频需重新生成',
  statistics: {}  // 和选项中statistics一样,会覆盖掉原本的统计参数
};
// 方法一
player.changeVid(option);
//方法二
player.changeVid(JSON.stringify(option));
// 方法三 该写法为flash播放器的写法,请尽量使用方法一、方法二
player.changeVid(vid, watchStartTime, autoplay, ts, sign)

另提供以下方法

j2s_getCurrentTimej2s_getDurationj2s_pauseVideoj2s_resumeVideo
j2s_stopVideochangeVidj2s_stayInVideoTimej2s_realPlayVideoTime
j2s_seekVideoj2s_setVolumechangeRepeattoggleFullscreen

  • 具体方法与flash播放器一致,具体参考播放器函数接口汇总
  • toggleFullscreen只在HTML5播放器生效,因为浏览器安全限制,flash尚不支持

播放器切换事件

HTML5Load
- HTML5 播放器切换到 flash 播放器时触发

player.on('HTML5Load', function() {
  console.log(typeof player.HTML5);  // 'object';
  console.log(player.flash);  // false
});

flashLoad
- flash 播放器切换到 HTML5 播放器时触发

HTML5 属性

若当前播放器为 HTML5播放器,player.HTML5属性为HTML5播放器实例对象,反之为false

属性

player.HTML5.video (HTMLElement)
- HTML5播放器所创建的原生 video 元素,可按照需要自行绑定事件与设置属性等

方法

player.HTML5.play
- 播放视频

player.HTML5.pause
- 暂停视频

player.HTML5.togglePlay
- 暂停播放交替切换

player.HTML5.toggleFullscreen:
- 全屏非全屏交替切换
- 在player.HTML5.video 中可以通过绑定 fullscreen 与 exitFullscreen事件来监听全屏与退出全屏事件

player.HTML5.changeVid (object)

参数对象设置
- vid (必填): 需更换的vid,若与当前播放视频vid一样则无效
- playsafe(选填):若更换的视频为加密视频,需要传入playsafe参数,每个不同vid都需重新传入一个不同playsafe
- autoplay (boolean/ 选填): 切换视频后视频是否自动播放

player.HTML5.changeRepeat (boolean)

  • 参数truefalse ,改变hideRepeat值

flash属性

若当前播放器为 flash 播放器,player.flash属性为polyv多终端代码初始化播放器后返回对象,反之为false
- 参考 多终端代码

HTML5 播放器与 flash 播放器切换说明

  1. 为了兼容不兼容HTML5播放器的浏览器,若检测到不兼容的浏览器或设置flash: true会自动打开flash播放器,比如IE10、IE9。
  2. 播放器实例有 HTML5 与 flash 两个属性,根据当前播放器类型而切换
  3. 可以设置 flashLoad 事件监听flash播放器是否加载

与flash事件兼容

目前HTML5播放器兼容了部分flash播放器事件,设置后在HTML5播放器中也会触发, 参考 flash播放器事件,事件如下:
s2j_onVideoPlays2j_onVideoPauses2j_onPlayerInitOvers2j_onPlayOver、 s2j_onPlayStarts2j_onFullScreens2j_onNormalScreens2j_onVideoSeeks2j_onReadyPlays2j_onPlayerError

兼容性

  • pc:IE11(window 8+)或以上浏览器兼容HTML5播放器,IE10、IE9将打开flash播放器
  • 移动端: 将调用多终端代码打开播放器
  • 因用ES2015编写,暂不兼容IE8

在多终端代码中使用 HTML5 播放器

页面中只需引入多终端代码,不需引入 HTML5 播放器代码,切换是会自动加载

默认打开flash

  • 参数:在 flashvars 参数加上 skin_type: 'skin_blue'ban_set_player: 'off'
  • changeH5Success: 当点击切换 HTML5 播放器时触发且只会在默认打开 flash 播放器时触发
  • 说明: 该设置会默认打开 flash 播放器,但播放器中会有切换播放器的选项
  • 设置如下:
var player = polyvObject('#video').videoPlayer({
    width: 800,
    vid: '02bfeb00e2ea42ec033fedfbd24c2879_0',
    flashvars: {
      skin_type: 'skin_blue',
      ban_set_player: 'off'
    }
});
player.on('changeH5Success', function(newPlayer) {
  player = newPlayer;  // newPlayer 是初始化 HTML5 播放器后返回对象
});

默认打开HTML5 播放器

  • 参数: forceH5 (boolean / false)
  • 说明: 设置 forceH5 参数为 true 后播放器将默认打开 HTML5 播放器(浏览器不兼容除外),若需要播放加密视频需传入 playsafe 参数
  • 设置如下
// 返回 HTML5 播放器对象
var player = polyvObject('#video').videoPlayer({
    width: 800,
    vid: '65956867dfc7794f00b20912e5ea5ecc_6',
    forceH5: true,
    // playsafe: 'token' 加密视频需传入
});
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

播放器错误代码参考

Flash播放器错误提示

错误来源 错误类型 编号 中文 英文
后台 客户套餐过期 #001 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台 客户套餐流量用完 #002 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台 黑白名单不通过 #006 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台 该视频不存在 #004 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台 视频审核不通过 #005 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台 视频正在审核 #009 视频暂时无法播放,请稍后刷新重试 The video is temporarily not available, please refresh later
后台 视频正在编码 #010 视频暂时无法播放,请稍后刷新重试 The video is temporarily not available, please refresh later
配置/网络 xml加载失败 #003 视频暂时无法播放,请稍后刷新重试 The video is temporarily not available, please refresh later
配置/网络 视频文件加载失败 #007 视频暂时无法播放,请稍后刷新重试 The video is temporarily not available, please refresh later
配置/网络 视频文件加载超时 #008 视频暂时无法播放,请稍后刷新重试 The video is temporarily not available, please refresh later
配置/网络 播放器皮肤加载失败 #011 视频暂时无法播放,请稍后刷新重试 The video is temporarily not available, please refresh later
配置/网络 跑马灯加载错误/失败 #012 视频暂时无法播放,请稍后刷新重试 The video is temporarily not available, please refresh later
配置/网络 授权加载错误/失败 #013 视频暂时无法播放,请稍后刷新重试 The video is temporarily not available, please refresh later
浏览器 Flash没有js权限 #014 视频无法加载,请尝试把浏览器更新至最新版本或更换浏览器,若继续提示相同错误请向管理员反馈 The video is not available, please update or change your browser. If it does not work, please contact the Administrators
浏览器 js错误 #015 视频无法加载,请尝试把浏览器更新至最新版本或更换浏览器,若继续提示相同错误请向管理员反馈 The video is not available, please update or change your browser. If it does not work, please contact the Administrators

IOS sdk错误提示

错误来源 错误类型 编号 中文 英文
后台/SDK 该码率不存在 #101 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 目标码率的 m3u8 无法获取,或者获取结果为空 #102 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 账户流量超标 #103 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 账户过期 #104 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 视频状态错误(videojson中status 字段不等于60 /61) #105 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 vid 不合法(指定vid不包含userid前缀) #106 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 加密秘钥长度不正确(配置SDK加密串) #107 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 加密向量长度不正确(配置SDK加密串) #108 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 加密串解密参数有误(配置SDK加密串) #109 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 签名错误(本地服务器) #110 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 下载路径为空(用户配置下载路径) #111 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
本地 文件操作(移动、删除、创建目录、读取)失败 #112 当前视频无法播放,请尝试删除视频后重新下载。若问题无法解决,请向管理员反馈 The video is not available, please try to delete the video before re-download it. If it does not work, please contact the Administrators.
本地 下载任务创建失败 #113 当前视频无法播放,请尝试删除视频后重新下载。若问题无法解决,请向管理员反馈 The video is not available, please try to delete the video before re-download it. If it does not work, please contact the Administrators.
网络 网络请求错误 #114 视频暂时无法播放,请检查网络环境是否正常。若问题无法解决,请向管理员反馈 The video is temporarily not available, please try to repair the network. The video is not available, please try to delete the video before re-download it. If it does not work, please contact the Administrators.

Android sdk错误提示

错误来源 错误类型 编号 中文 英文
后台/SDK 流量超标 20004 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 账号过期 20005 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 视频开始播放错误 20008 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 没有权限访问视频 20009 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 视频状态错误 20011 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK video取得为null 20016 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK mp4链接数量错误 20017 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK m3u8链接数量错误 20018 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 1.5倍播放地址为空 30003 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 1.5倍播放地址错误 30004 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 1.5倍播放地址错误 30005 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK m3u8 15x链接数量错误 30006 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK 视频加载过程中出错 30011 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK hls url 格式错误 30013 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK token取得为null 30015 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
后台/SDK hls2 url 格式错误 30016 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 没有设置用户token 20010 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 vid错误 20014 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 码率错误 20015 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 播放视频速度为null 30001 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 切换码率相同 30007 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 切换播放速度相同 30008 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 不能切换码率 30009 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 不能切换速度 30010 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
App开发 视频码率不存在 如果视频只有流畅码率,而用户输出了高清码率会提示这个错误 30014 当前视频无法播放,请向管理员反馈 The video is not available, please contact the Administrators
本地 本地视频文件错误 20007 当前视频无法播放,请尝试删除视频后重新下载。若问题无法解决,请向管理员反馈 The video is not available, please try to delete the video before re-download it. If it does not work, please contact the Administrators.
本地 没有缓存视频 30002 当前视频无法播放,请尝试删除视频后重新下载。若问题无法解决,请向管理员反馈 The video is not available, please try to delete the video before re-download it. If it does not work, please contact the Administrators.
网络 无法连接网络 20003 视频暂时无法播放,请检查网络环境是否正常。若问题无法解决,请向管理员反馈 The video is temporarily not available, please try to repair the network. The video is not available, please try to delete the video before re-download it. If it does not work, please contact the Administrators.
网络/后台 问答错误 网络问题无法加载问答数据,或者服务器问答数据错误。 30012 视频暂时无法播放,请检查网络环境是否正常。若问题无法解决,请向管理员反馈 The video is temporarily not available, please try to repair the network. The video is not available, please try to delete the video before re-download it. If it does not work, please contact the Administrators.

错误来源说明:

  • 后台:服务器处理或点播后台所导致的的情况;
  • 网络:客户端网络环境导致的情况。
  • 配置:本地配置文件导致的情况;
  • 浏览器:浏览器权限或兼容性导致的情况;
  • Flash版本:Flash更新或安装问题。
  • SDK:播放器SDK内部错误导致的的情况;
  • App开发:App集成SDK过程中导致的情况;
  • 本地:客户端本地文件或缓存导致的情况。
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

用户自定义参数

在播放代码中,用户可以添加参数session_id,自定义为任何值(比如,表示学员信息的学员ID),最长不能超过50个英文字符。示例代码如下:

<script src='//player.polyv.net/script/polyvplayer.min.js'></script>
<div id='plv_e2e84a7383f869a0c8501b0c2f3dbdec_e'></div>
<script>
var player = polyvObject('#plv_e2e84a7383f869a0c8501b0c2f3dbdec_e').videoPlayer({
 'width':'600',
 'height':'450',
 'vid' : 'e2e84a7383f869a0c8501b0c2f3dbdec_e',
'session_id' :'TEST_POLYV'
});
</script>

当用户访问使用了以上示例播放代码的页面时,播放代码js会把session_id提交到POLYV系统的播放日志数据库中。当用户通过调用获取某一天视频日志时,就能查询到日志里面每一条记录中的session_id,如下图所示:

QQ图片20160815180751

以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

播放器函数接口汇总

供javascript调用的播放器函数接口
函数名 参数 返回 说明 代码示例
j2s_getCurrentTime 秒数 返回当前播放头的时间,例如视频时长120秒,播放头时间在20.5秒,则返回20.5;页面javascript可不断轮询此播放时间,配合后面暂停/播放/停止等函数,对播放过程实现高级的控制。 查看
j2s_pauseVideo 暂停播放当前视频 查看
j2s_resumeVideo 恢复播放当前视频 查看
j2s_stopVideo 停止播放当前视频,并显示结束画面 查看
j2s_seekVideo _second JS控制播放器SEEK功能 ,函数名:j2s_seekVideo(_second)其中参数_second 为秒数 查看
j2s_setVolume _rate JS控制播放器音量功能 ,函数名:j2s_setVolume(_rate)其中参数_rate 为0~1
changeVid vid,watchStartTime,autoPlay,ts,sign 在不刷新页面和播放器的情况下,切换到下一个视频,可应用于自定义播放列表。参数说明:vid:切换视频vid(String),watchStartTime:开始播放时间(Number),autoPlay:是否自动播放("on"/"off"),ts: web授权用(String),sign: web授权用(String) 查看
j2s_getFlowCount() 字节数 获取当前流量(单位:字节)的接口供JS调用 查看
j2s_getDuration() 秒数 获取当前视频的播放时长(播放器初始化完毕才可以调用,默认为0,播放器初始化完毕事件为s2j_onPlayerInitOver) 查看
j2s_stayInVideoTime() 秒数 只记录正常播放过程中的观看时间,包括视频缓冲的时间,不包括广告、片头、暂停、片尾等时间。 查看
j2s_realPlayVideoTime() 秒数 只记录正常播放过程中的观看时间,不包括视频缓冲的时间,也不包括广告、片头、暂停、片尾等时间。 查看
j2s_showInterAction() 控制问答播放器显示问答
j2s_hideInterAction() 控制问答播放器隐藏问答
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

播放器函数接口示例一

演示

当前观看时间(包含视频缓冲时间)是 0 秒
当前观看时间(不包含视频缓冲时间)是 0 秒
当前播放进度是 0 秒
当前流量: 0 字节 | 0 KB
当前视频的时长是 0 秒
示例代码
点击查看播放器函数接口说明

<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="708" height="490" id="polyvplayer02bfeb00e2ba940698c54cdf517aa9b6_0"><PARAM NAME=movie VALUE="http://player.polyv.net/videos/player.swf"><param name="allowscriptaccess" value="always"><param name="wmode" value="Transparent"><param name="flashvars" value="vid=02bfeb00e2ba940698c54cdf517aa9b6_0" /><param name="allowFullScreen" value="true" /><EMBED src="http://player.polyv.net/videos/player.swf" width="708" height="490"  TYPE="application/x-shockwave-flash" allowscriptaccess="always" wmode="Transparent" name="polyvplayer02bfeb00e2ba940698c54cdf517aa9b6_0" allowFullScreen="true" flashvars="vid=02bfeb00e2ba940698c54cdf517aa9b6_0"/></EMBED></OBJECT><br />
 
<span id="stayInVideoTime">当前观看时间(包含视频缓冲时间)是 0 秒</span><br>
<span id="realPlayVideoTime">当前观看时间(不包含视频缓冲时间)是 0 秒</span><br>
<span id="getCurrentTime">当前播放进度是 0 秒</span><br />
<span id="flow">当前流量: 0 字节 | 0 KB</span><br />
<span id="duration">当前视频的时长是 0 秒</span><br />
 
<input type="button" onclick="resume()" value="播放"></input>
<input type="button" onclick="pause()" value="暂停"></input>
<input type="button" onclick="seek(30)" value="seek到第30秒"></input>
<input type="button" onclick="stop()" value="停止"></input>
<input type="button" onclick="nextVideo()" value="切换到下一个视频"></input><br />
 
<script type="text/javascript">
function getPlayer(movieName) {
 if (navigator.appName.indexOf("Microsoft") != -1) {
  var reObj=window[movieName];
  try
  {
   if(reObj.length>0)
   {
    return reObj[0];
   }
            else
            {
              return reObj;
            }
  }catch(e)
  {
    
  }
  return ;
 }
 else {
  return document[movieName];
 }
}
var player=getPlayer("polyvplayer02bfeb00e2ba940698c54cdf517aa9b6_0");
 
function resume()
{
  player.j2s_resumeVideo();
}
 
function pause()
{
  player.j2s_pauseVideo();
} 
 
function seek(_sec)
{
  player.j2s_seekVideo(_sec);
}
 
function stop()
{
  player.j2s_stopVideo();
}
 
function nextVideo()
{
  player.changeVid("02bfeb00e27ff92a76364b16af2f115e_0");
}
 
function render()
{
if(player != undefined && player.j2s_stayInVideoTime != undefined && player.j2s_realPlayVideoTime != undefined && player.j2s_getCurrentTime != undefined && player.j2s_getDuration != undefined && player.j2s_getFlowCount != undefined){
  var sec1=player.j2s_stayInVideoTime();
  var sec2=player.j2s_getCurrentTime();
  var sec3=player.j2s_getDuration();
  var sec4=player.j2s_realPlayVideoTime();
  var byte=player.j2s_getFlowCount();
  document.getElementById("stayInVideoTime").innerHTML="当前观看时间(包含视频缓冲时间)是 <span style='color:#ff0000;'>"+sec1+"</span> 秒";
  document.getElementById("realPlayVideoTime").innerHTML="当前观看时间(不包含视频缓冲时间)是 <span style='color:#ff0000;'>"+sec4+"</span> 秒";
  document.getElementById("getCurrentTime").innerHTML="当前播放进度是 <span style='color:#ff0000;'>"+sec2+"</span> 秒";
  document.getElementById("duration").innerHTML="当前视频的时长是 <span style='color:#ff0000;'>"+sec3+"</span> 秒";
  document.getElementById("flow").innerHTML="当前流量: <span style='color:#ff0000;'>"+byte+"</span> 字节 | <span style='color:#ff0000;'>"+byte/1024+"</span> KB";
}
}
var interval=setInterval("render()",500);
</script>
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

播放器函数接口示例二

演示


当前观看时间(包含视频缓冲时间)是 0 秒
当前观看时间(不包含视频缓冲时间)是 0 秒
当前播放进度是 0 秒
当前流量: 0 字节 | 0 KB
当前视频的时长是 0 秒

示例代码
点击查看播放器函数接口说明


<span id="stayInVideoTime">当前观看时间(包含视频缓冲时间)是 0 秒</span><br> <span id="realPlayVideoTime">当前观看时间(不包含视频缓冲时间)是 0 秒</span><br> <span id="getCurrentTime">当前播放进度是 0 秒</span><br /> <span id="flow">当前流量: 0 字节 | 0 KB</span><br /> <span id="duration">当前视频的时长是 0 秒</span><br /> <input type="button" onclick="resume()" value="播放"></input> <input type="button" onclick="pause()" value="暂停"></input> <input type="button" onclick="seek(30)" value="seek到第30秒"></input> <input type="button" onclick="stop()" value="停止"></input> <input type="button" onclick="nextVideo()" value="切换到下一个视频"></input><br /> <script type="text/javascript"> function getPlayer(movieName) { if (navigator.appName.indexOf("Microsoft") != -1) { var reObj=window[movieName]; try { if(reObj.length>0) { return reObj[0]; } else { return reObj; } }catch(e) { } return ; } else { return document[movieName]; } } function resume() { player.j2s_resumeVideo(); } function pause() { player.j2s_pauseVideo(); } function seek(_sec) { player.j2s_seekVideo(_sec); } function stop() { player.j2s_stopVideo(); } function nextVideo() { player.changeVid("02bfeb00e27ff92a76364b16af2f115e_0"); } function render() { if(player != undefined && player.j2s_stayInVideoTime != undefined && player.j2s_realPlayVideoTime != undefined && player.j2s_getCurrentTime != undefined && player.j2s_getDuration != undefined && player.j2s_getFlowCount != undefined){ var sec1=player.j2s_stayInVideoTime(); var sec2=player.j2s_getCurrentTime(); var sec3=player.j2s_getDuration(); var sec4=player.j2s_realPlayVideoTime(); var byte=player.j2s_getFlowCount(); document.getElementById("stayInVideoTime").innerHTML="当前观看时间(包含视频缓冲时间)是 <span style='color:#ff0000;'>"+sec1+"</span> 秒"; document.getElementById("realPlayVideoTime").innerHTML="当前观看时间(不包含视频缓冲时间)是 <span style='color:#ff0000;'>"+sec4+"</span> 秒"; document.getElementById("getCurrentTime").innerHTML="当前播放进度是 <span style='color:#ff0000;'>"+sec2+"</span> 秒"; document.getElementById("duration").innerHTML="当前视频的时长是 <span style='color:#ff0000;'>"+sec3+"</span> 秒"; document.getElementById("flow").innerHTML="当前流量: <span style='color:#ff0000;'>"+byte+"</span> 字节 | <span style='color:#ff0000;'>"+byte/1024+"</span> KB"; } } var interval=setInterval("render()",500); </script>
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

播放器flashvars参数

参数名 取值 说明 代码示例
loading_bg_img url 播放器一开始LOADING时的大背景图URL 查看
df 1-3 视频默认播放的清晰度,取值范围1-3  ;  如:df=1 流畅,df=2高清,df=3超清 查看
teaser_time 视频片头图片显示多少秒后消失,如: teaser_time=2.5 查看
watchStartTime 视频默认从第几秒开始播放 , 如 watchStartTime=30.5 查看
watchEndTime 视频播放结束的秒数,如整段视频时长120秒,watchEndTime=60,则视频在播放到60秒时会结束播放,并且只能在60秒内进行seek拖动播放 查看
ban_seek_by_limit_time on/off 用于限制用户只能以自然播放的形式来观看视频,不能通过seek拖拉来快速观看视频。
一般是配合“watchStartTime”来使用,默认值为off(如果没有设置该参数,则watchStartTime默认是从0秒开始播放),当设定为ban_seek_by_limit_time =on后,并设定了watchStartTime=xx秒,则播放过程中,只能在watchStartTime范围seek拖动视频,或自然播放过程中,播放头时间超过watchStartTime后,可在播放头时间内seek拖动视频
查看
start 截取视频的一部分作为一个独立的视频,如原视频时长60秒,设定start=20后,则视频显示为40秒,并且从原视频的第20秒开始播放。
通常配合end参数一起使用。
查看
end 截取视频的一部分作为一个独立的视频,如原视频时长60秒,设定start=20,end=50后,则视频显示为30秒,并且从原视频的第20秒开始播放,到原视频的50秒结束播放。 查看
autoplay string 如果当前是第一个播放的视频,用该参数来控制是否自动播放,0表示关闭自动播放,1表示开启自动播放。切换后的视频不受此参数控制 查看
setScreen string 设置视频默认播放的屏幕比例,取值范围
1.“100”:原始
2.“4_3”:4:3
3.“16_9”:16:9
4.“fill”:铺满
查看
setVolumeM Number 视频声音增益
1为原视频音量大小,不变
1.5为原视频音量1.5倍
查看
volume Number 初始视频音量
0为静音
1为原视频音量大小
is_auto_replay on/off 自动循环播放当前视频,默认值为off。注:在播放列表里会忽略本参数。 查看
ban_ad_time on/off on则表示不显示广告倒计时 查看
ban_ui on/off 不显示所有控制栏,右侧栏等按钮,只有播放画面和Loading,设为on为不显示 查看
ban_control on/off 禁止播放器上所有按钮的功能 查看
list_id id 在播放器内显示播放列表
is_play_once on/off 只允许观看一次,播放结束后,返回封面并隐藏控制栏,禁止所有操作
video_bg_color 十六进制 为了让视频背景与网页背景融合,可以用户自定义视频背景颜色,如:ccff00
ban_history_time on/off on表示不记录当前的播放时间,并且不续播
history_video_duration int类型,取正整数,单位为分钟 表示视频总时长超过多少分钟时,flash播放器会记录历史播放进度,下次播放时自动续播,默认为5分钟
ban_skin_big_play_btn on/off 对播放器皮肤的特别定制,可以去掉控制栏的大播放按钮
ban_bar_keep_play_btn on/off 去掉“现代”播放器皮肤的控制栏,只保留居中的大播放按钮
interaction_data string 修改教育答题提交到后台的地址,如http://yoursite.com/getexam
logo_url string logo图片地址,如http://www.polyv.net/images/newnavbar/logo.png
logo_alpha Number logo透明度,取值是0~1
logo_link string 点击logo后跳转链接,如http://my.polyv.net
skin_type string 当后台预览播放器,设定了一个预览用的皮肤类型,重新加载UXML时,会忽略掉UXML里设定的皮肤类型。皮肤类型选择 如:"skin_blue"
logo_pos Number logo显示位置,1:左上角;2:右上角;3:左下角;4:右下角
ban_preview_video on/off 禁止显示缩略图
barHideTime Number 皮肤自定义隐藏时间
注:以上对时间点的设置后,根据视频文件实际关键帧所在时间点,实际显示的时间可能有几秒的偏差. 如 设定watchStartTime=20 ,而离20秒最近的关键帧位置在18秒,则实际播放时,从18秒开始播放.

HTML代码和多终端代码添加多个flashvars参数示例:

HTML代码(多个flashvars参数用符合“&”连接):

<OBJECT classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="600" height="416" id="e2e84a738396503c313915c17b5b08ac_e">
<PARAM NAME=movie VALUE="http://player.polyv.net/videos/player.swf">
<param name="allowscriptaccess" value="always">
<param name="wmode" value="Transparent">
<param name="flashvars" value="vid=e2e84a738396503c313915c17b5b08ac_e&watchStartTime=5&watchEndTime=20" /><param name="allowFullScreen" value="true" />
<EMBED src="http://player.polyv.net/videos/player.swf" width="600" height="416"  TYPE="application/x-shockwave-flash" allowscriptaccess="always" wmode="Transparent" name="e2e84a738396503c313915c17b5b08ac_e" allowFullScreen="true" flashvars="vid=e2e84a738396503c313915c17b5b08ac_e&watchStartTime=5&watchEndTime=20"/></EMBED>
</OBJECT>

多终端代码(多个flashvars参数用{}括起来,格式为{"aa":"bb","cc":"dd"}):

<script src='//player.polyv.net/script/polyvplayer.min.js'></script>
<div id='plv_e2e84a7383891b0f03445b0f683d0b18_e'></div>
<script>
var player = polyvObject('#plv_e2e84a7383891b0f03445b0f683d0b18_e').videoPlayer({
    'width':'600',
    'height':'416',
    'vid' : 'e2e84a7383891b0f03445b0f683d0b18_e',
    'flashvars':{"watchStartTime":"5","watchEndTime":"20"}
});
</script>
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

播放器flashvars参数示例一

点击查看播放器flashvars参数说明

代码示例 (注:flashVars应在 以及 标签同时设定)

<object id="polyvplayerd81a899efa04df410e7adcbebeb064b1_d" width="680" height="422" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000">
<PARAM NAME=movie VALUE="http://player.polyv.net/videos/player.swf">
<param name="allowscriptaccess" value="always">
<param name="wmode" value="Transparent"><param name="flashvars" value="vid=d81a899efa04df410e7adcbebeb064b1_d&autoplay=true&watchStartTime=30&watchEndTime=60&df=2&ban_seek_by_limit_time=on&is_auto_replay=on&ban_ad_time=on&loading_bg_img=http://www.polyv.net/images/bg-bg.jpg" />
<param name="allowFullScreen" value="true" />
<EMBED src="http://player.polyv.net/videos/player.swf" width="680" height="422"  TYPE="application/x-shockwave-flash" allowscriptaccess="always" wmode="Transparent" name="polyvplayerd81a899efa04df410e7adcbebeb064b1_d" allowFullScreen="true" flashvars="vid=d81a899efa04df410e7adcbebeb064b1_d&autoplay=true&watchStartTime=30&watchEndTime=180&df=2&ban_seek_by_limit_time=on&is_auto_replay=on&ban_ad_time=on&loading_bg_img=http://www.polyv.net/images/bg-bg.jpg"/></EMBED>
</object>
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

播放器flashvars参数示例二

点击查看播放器flashvars参数说明

代码示例

<script src="https://player.polyv.net/script/polyvplayer.min.js"></script>
<div id="plv_24b4f0f7335218bdf7b5728ba61cb14d_2"></div>
<script>
var player = polyvObject('#plv_24b4f0f7335218bdf7b5728ba61cb14d_2').videoPlayer({
    'width':'680',
    'height':'422',
    'vid' : '24b4f0f7335218bdf7b5728ba61cb14d_2',
    'start':'10',
    'end':'50',
    'flashvars' : {"autoplay":"true","teaser_time":"3","setScreen":"4_3","setVolumeM":"1.5","ban_ui":"on","ban_control":"on"}
});
</script>
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...

自定义字幕样式flashvars参数

通过flashvars参数可自定义字幕的样式,具体参数说明如下所示。

参数名 代表意义 参数可选 参数类型 默认值
srt_caption_txt_size 字幕字体大小 范围:12--55 整型 20
srt_caption_txt_color 字幕字体颜色 包含三个 8 位 RGB 颜色成分的数字;例如,0xFFFFF 为白色 0xFFFFFF白色
srt_caption_txt_font 字幕字体 String 微软雅黑
srt_caption_txt_letterspacing 字幕字体间距 整型 0.5
srt_caption_txt_filter 是否描边 “on” :描边 “off”:不描边 String on
srt_caption_txt_filter_alpha 字幕描边透明度 范围:0~1 整型 1
srt_caption_txt_filter_color 字幕描边颜色 包含三个 8 位 RGB 颜色成分的数字;例如,0x000000 为黑色 0x000000黑色
srt_caption_txt_filter_blurx 字幕描边水平模糊量 范围:0~255 整型 4
srt_caption_txt_filter_blury 字幕描边垂直模糊量 范围:0~255 整型 4
srt_offset_time 字幕时间偏移 整型 0
stage_width_set 用户指定宽,依据这个值进行等比缩放 整型 1080
srt_caption_txt_height 自定义字幕距离控制栏的高度 整型 0
以上内容是否对您有帮助?根本没有帮助文档较差文档一般文档不错文档很好
Loading...