QVOD开发接口

来源:互联网 发布:手机淘宝直通车是什么 编辑:程序博客网 时间:2024/04/30 12:54

 

  1、属性接口: 

 

  1)URL:播放文件地址。URL值格式:qvod://文件大小|文件hash值|文件名| 

 

  如:qvod://145485901|E4284D21B54DCB7181EA853B88746D693 ACEA079|美丽的选择-第三部-05.rmvb| 

 

  2) AutoPlay:是否自动播放。0:不自动播放 1:自动播放。默认是不自动播放。 

 

  < PARAM NAME='AutoPlay' VALUE='http://blog.soso.com/qz.q/0'> 

 

  3) Showcontrol:是否显示控制栏,0=不显示 1= 显示 默认参数是显示 

 

  < PARAM NAME='Showcontrol' VALUE='http://blog.soso.com/qz.q/0'> 

 

  4)NextWebPage:播放当前节目后自动导航到下一集或者其它网页的功能 

 

  默认为空即不导航。网页地址请以http://开头. 

 

  <PARAM NAME='NextWebPage' VALUE='http://www.vod588.com/dy_player/b22cbb3c.ht ml?262614'> 

 

  5)NumLoop:是否循环播放当前节目 

 

  值:0 为不循环,大于0为循环次数,递减到0后即停止循环,-1为一直循环。 

 

  默认为0. 

 

  6)QvodAdUrl: 网页中的链接地址是qvod://格式时,可以在网页中用此参数指定播放前的缓冲页面地址 

 

  注:3.0.0.58版本及将来发布的版本才支持。 

 

  <PARAM NAME='QvodAdUrl' VALUE='http://buffer-ad.qvod.com/index_bak.asp'> 

 

  2、方法接口: 

 

  1)播放 

 

  Play(): 

 

  2)停止 

 

  Stop(): 

 

  3)暂停 

 

  Pause(): 

 

  4)设置当前播放位置 

 

  Currentpos: 

 

  例如想设置播放位置在一分钟则: 

 

  c++等语言: 

 

  long newValue = http://blog.soso.com/qz.q/60; 

 

  put_Currentpos(newValue); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var pos = 60; 

 

  QvodPlayer.Currentpos = 60; 

 

  5) 得到当前播放位置 

 

  Currentpos: 

 

  c++等语言: 

 

  double newValue = http://blog.soso.com/qz.q/0; 

 

  newValue = http://blog.soso.com/qz.q/get_Currentpos(); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var pos = 0; 

 

  pos = QvodPlayer.Currentpos; 

 

  6) 得到播放持续时间 

 

  Duration: 

 

  c++等语言: 

 

  double newValue = http://blog.soso.com/qz.q/0; 

 

  newValue = http://blog.soso.com/qz.q/get_Duration(); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var pos = 0; 

 

  pos = QvodPlayer.Duration; 

 

  7) 设置全屏与否 

 

  Full (BOOL bFull): 

 

  如设置全屏 

 

  c++等语言: 

 

  BOOL bFull = TRUE;//全屏则为TRUE,取消全屏则为FALSE 

 

  put_Full (bFull ); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var pos = true; 

 

  QvodPlayer.Full= true; 

 

  8) 得到是否全屏 

 

  Full: 

 

  c++等语言: 

 

  BOOL bFull = TRUE; 

 

  bFull = get_Full (); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var pos = true; 

 

  pos = QvodPlayer.Full; 

 

  9) 设置静音 

 

  Mute(): 

 

  c++等语言: 

 

  BOOL bMute= TRUE;//静单为TRUE,取消静音则为FALSE; 

 

  put_Mute(bMute); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var pos = true; 

 

  QvodPlayer.Mute = pos ; 

 

  10) 得到是否静音状态 

 

  BOOL GetMute(): 

 

  c++等语言: 

 

  BOOL bMute = TRUE; 

 

  Mute = get_Mute (); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var pos = true; 

 

  pos = QvodPlayer.Mute; 

 

  11) 得到当前播放状态 

 

  PlayState(): 

 

  c++等语言: 

 

  PLAYSTATE state= Undefined ; 

 

  state= get_PlayState (); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var state; 

 

  state = QvodPlayer.PlayState; 

 

  播放状态值: 

 

  enum enum_PalyState 

 

  { 

 

  _S_Init = 0, 

 

  _S_Stop, 

 

  _S_Pause, 

 

  _S_Playing, 

 

  _S_Buffering, 

 

  _S_Waiting, 

 

  _S_MediaEnded, 

 

  _S_Ready, 

 

  _S_Conning, 

 

  _S_BTDowning, 

 

  _S_CreateDS, 

 

  _S_Stoping 

 

  };//Undefined = 0,准备就绪 Stopped = 1,停止; Paused = 2,暂停; Playing = 3,播放中; Buffering = 4,缓冲中; Waiting = 5,等待中; MediaEnded = 6,播放结束Ready = 7, 准备读;Reconnecting = 8,重连中; BTDowning = 9 BT种子下载中; Createing = 10,正在连接中; Stoping=11 正在停止; 

 

  刚开始播的时候的状态是Createing 

 

  15) 得到现在声音的值 

 

  Volume(): 

 

  c++等语言: 

 

  long v = 0; 

 

  v= get_Volume (); 

 

  javastricpt/vb/vbstricpt等脚本语言:

 var v; 

 

  v= QvodPlayer.Volume; 

 

  16) 设置现在声音的值 0-100中间的值 

 

  Volume(): 

 

  例如设置声音值为50; 

 

  c++等语言: 

 

  long v = 50; 

 

  put_Volume (v); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var v = 50; 

 

  QvodPlayer.Volume = v; 

 

  17) 

 

  设置是否循环播放 newVal=0不循环,-1无限循环,大于0的值就代表循环次数 

 

  NumLoop(); 

 

  c++等语言: 

 

  long v = 0; //可以为-1,或者大于0的值于100等 

 

  put_NumLoop(v); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var v = 0; //可以为-1,或者大于0的值于100等 

 

  QvodPlayer.NumLoop= v; 

 

  18)设置视频框架. 

 

  viewid = 0; 按窗口拉伸埴充,viewid = 1;按比例填充 

 

  put_viewframe(long viewid); 

 

  c++等语言: 

 

  long viewid = 0; //viewid = 0;按窗口拉伸埴充 viewid = 1;put_viewframe(v);按比例填充 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var v = 0; //viewid = 0;按窗口拉伸埴充 viewid = 1;put_viewframe(v);按比例填充 

 

  QvodPlayer.put_viewframe(v); 

 

  19)获取播放文件码率 

 

  long value = http://blog.soso.com/qz.q/get_rate(); 

 

  c++等语言: 

 

  long v = 50; 

 

  get_rate(&v); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var v; 

 

  QvodPlayer.get_rate(v); 

 

  20)设置播放文件声道. 

 

  enum enum_SoundChannel 

 

  { 

 

  S_MONO =0, //混合音 - 0 

 

  S_LEFT, //左声道 - 1 

 

  S_RIGHT, //右声道 - 2 

 

  S_DEFAULT, //默认 - 3 

 

  S_LTOALL, //左声道扩展到全部 - 4 

 

  S_RTOALL //右声道扩展到全部 - 5 

 

  };put_SoundTrack(long track); 

 

  例如想设置左声道。 

 

  c++等语言: 

 

  long v = 1; 

 

  put_SoundTrack(v); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var v = 1; 

 

  QvodPlayer.put_SoundTrack(v); 

 

  21) 设置播放亮度对比度 

 

  ntype = 0;//视频调节 

 

  ntype = 1;//音频调节 

 

  ntype = 2;//均衡调节 

 

  ntype = 3;//字幕调节 

 

  put_AdjustVideo(long ntype); 

 

  c++等语言: 

 

  long ntype = 0; 

 

  put_AdjustVideo(ntype); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var ntype = 0; 

 

  put_AdjustVideo(ntype); 

 

  22) 获取播放文件路径 

 

  c++等语言: 

 

  BSTR strfilename; 

 

  HRESULT hr = get_MainInfo(&strfilename); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var filename ; 

 

  filename = get_MainInfo(); 

 

  23) 获取播放文件下载的进度 

 

  返回值是千分值.如果你想化成百分比的话,用这个值除以10即可.即是百分比的值.如你取到的值是98,则代表是已经 

 

  下载了9.8% 

 

  c++等语言: 

 

  long taskdown = 0; 

 

  HRESULT hr = get_CurTaskProcess(&taskdown ); 

 

  javastricpt/vb/vbstricpt等脚本语言: 

 

  var taskdown1 = QvodPlayer.get_CurTaskProcess(); 

 

  alert(taskdown1 ); 

 

  [24]设置控件所属的父窗口: 

 

  void PutParentWnd(long hWnd); 

 

  long hWnd 为父窗口句柄 

 

  如果设置该窗口后,当用户点击浮动的1倍,2倍或者右键菜单1倍,2倍,0.5倍时会向该窗口发送消息 

 

  :: PostMessage(hWnd, value, 0, 0); 

 

  value: 

 

  case WM_USER + 335://0.5倍 

 

  case WM_USER + 336://1倍 

 

  case WM_USER + 337://2倍 

 

  [25]控件函数调用: 

 

  c++ BSTR CallFunction(BSTR request); 

 

  javastricpt: var rexml = QvodPlayer.CallFunction(xml); 

 

  现在暂只支持通过该函数获取播放文件视频原始宽高 

 

  脚本函数如下: 

 

  var xml = "<Invoke name=/"Width_Height/" returntype=/"xml/"></Invoke>"; 

 

  var rexml = QvodPlayer.CallFunction(xml); 

 

  alert(rexml); 

 

  输入为:<invoke name="QvodVersion" returntype="xml"></invoke> 

 

  输出为:<invoke name="QvodVersion" returntype="xml" vn="%s" vs="%d"></invoke> 

 

  %s表示具体的版本号如3.0.0.59 %d如果是0表示是标准版,1则表示为是增强版。 

 

  [26]预缓冲下一集: 

 

  该接口能让用户在看当前这集节目的时候,自动先缓冲下一集节目,这样当用户看下一集时就能很快的开始看了。也可以配合 

 

  设置IE自动导航到下一页面NextWebPage。这个接口,这样用户就可以完全不用手动去点击网页,完全流畅观看节目了。 

 

  支持http或者QVOD格式两种协议。 

 

  函数: 

 

  c++ 

 

  BSTR url=_T("qvod://117840593|FEB33A6420E14C7CFA1682808 3CD914D9E959B3B|秘密的校园_03.rmvb|"); 

 

  StartNextDown(url);

javastricpt: 

 

  var url="http://117.21.248.253:80/131658100/A1B09F2D7F 2C84679AE5110210448F7FB7C8F54F/秘密的校园_04.rmvb" 

 

  或者url="qvod://117840593|FEB33A6420E14C7CFA16828083CD 914D9E959B3B|秘密的校园_03.rmvb|"; 

 

  QvodPlayer.StartNextDown(url); 

 

  [27]获取当前文件下载速度 

 

  函数: 

 

  c++ 

 

  long ldownrate = QvodPlayer.Downrate(); 

 

  javastricpt: 

 

  var ldownrate = QvodPlayer.Downrate;