2024年1月5日发(作者:)一、Qvod Player插件: Qvod Player (Q播) 是一款基于准视频点播 (QVOD) 内核的、多功能、个性化的媒体播放器。Qvod Player 集成了全新播放引擎,不但支持自主研发的准视频点播技术;而且还是免费的 BT 点播软件,用户只需通过几分钟的缓冲即可边下载边观看丰富的 BT 影视节目。Qvod Player 具有的资源占用低、操作简捷、运行效率高,扩展能力强等特点,使其成为目前国内最受欢迎的 P2P 播放软件。 Qvod Player控件可以嵌入到网页中或者支持COM组件的开发程序中。 Qvod Player让你的视频播放随心随意。 二、使用平台:播放器使用COM组件开发技术,能在用户客户端浏览器或者支持COM组件的开发程序中使用。 三、使用方法: 1、在你的网页适当位置(即想让用户观看视频的位置)插入如下代码: 内容解释 1、object:HTML语言中对COM插件的统一使用方式。 2、classid:HTML语言中对WEB插件的调用语句。 3、clsid: F3D0D36F-23F8-4682-A195-74C92B03D4AF:Qvod Player插件类型ID值。 4、width/height 在网页中显示的该插件宽与高度。 5、id/ name/ 是要控制该Qvod Player插件的名字。QvodPlayer可以更改成你喜欢并且容易记住的名字。 如果不能下载该插件安装包。请用户自行去 下载安装 四、Qvod Player插件最简使用方法: 在你的网页适当位置源代码中插入如下代码,当用户打开该网页时,即可完成影片文件的播放功能: classid="clsid:F3D0D36F-23F8-4682-A195-74C92B03D4AF" width="500" height="400" id="QvodPlayer" name="QvodPlayer"> width="500" 可classid="clsid:F3D0D36F-23F8-4682-A195-74C92B03D4AF" height="400" 以id="QvodPlayer" 正name="QvodPlayer" 常播onError=if(m('请您先安装QvodPlayer软件,然后刷新本页才放.')){('/')}else{on='/'}> type='application/qvod-plugin'> 复制代码 如何兼容谷歌等非IE浏览器(支持快播4.2及以上版本) 标签变化 网站对谷歌浏览器支持,必须在原来的object标签中添加embed标签,例如下面红色部分: id='QvodPlayer' width='600' height='480'> < PARAM NAME='URL' VALUE='qvod://167960408|8F81A848CBEB17F4D4850A13DC781FC803181594|鹿鼎记(陈小春版)-|'> < PARAM NAME='Showcontrol' VALUE=1> < PARAM NAME='AutoPlay' VALUE='1'> URL='qvod://167960408|8F81A848CBEB17F4D4850A13DC781FC803181594|鹿鼎记(陈小春版)-|' type='application/qvod-plugin'> embed标签不仅支持URL参数,也同样支持object标签支持的Autoplay,Mute,Showcontrol,Volume,NumLoop,SoundTrack,NextWebPage,QvodAdUrl。在object中初始化的参数,必须在embed中传入才能起效。 2.避免汉字乱码 如果你的动态页面是通过网页URL传入qvod协议地址的要注意了,由于这类浏览器默认对url的参数进行GB2312编码,而插件只能识别utf-8码,这样就会导致创建的网络任务出现汉字乱码。 避免方法有二: 1. 不通过网页URL方式传入qvod协议地址; 2. 对qvod协议地址进行utf-8转码后带入URL的参数中。 任选一种方式即可。 五、Qvod Player接口使用方法 1、属性接口: 1)URL:播放文件地址。URL值格式:qvod://文件大小|文件hash值|文件名| 如:qvod://145485901|E4284D21B54DCB7181EA853B88746D693ACEA079|美丽的选择-第三部-| 2) AutoPlay:是否自动播放。0:不自动播放 1:自动播放。默认是不自动播放。 < PARAM NAME='AutoPlay' VALUE='0'> 3) Showcontrol:是否显示控制栏,0=不显示 1= 显示 默认参数是显示 < PARAM NAME='Showcontrol' VALUE='0'> 4)NextWebPage:播放当前节目后自动导航到下一集或者其它网页的功能 默认为空即不导航。网页地址请以开头. <;PARAM 5)NumLoop:是否循环播放当前节目 值:0 为不循环,大于0为循环次数,递减到0后即停止循环,-1为一直循环。 默认为0. 6)QvodAdUrl: 网页中的链接地址是qvod://格式时,可以在网页中用此参数指定播放前的缓冲页面地址 注:3.0.0.58版本及将来发布的版本才支持。 VALUE='/index_'> 2、方法接口: 1)播放 Play(): 2)停止 Stop(): 3)暂停 Pause(): 4)设置当前播放位置 Currentpos: 例如想设置播放位置在一分钟则: c++等语言: long newValue = 60; put_Currentpos(newValue); NAME='QvodAdUrl' NAME='NextWebPage' VALUE='/dy_player/?262614'> javastricpt/vb/vbstricpt等脚本语言: var pos = 60; tpos = 60; 5) 得到当前播放位置 Currentpos: c++等语言: double newValue = 0; newValue = get_Currentpos(); javastricpt/vb/vbstricpt等脚本语言: var pos = 0; pos = tpos; 6) 得到播放持续时间 Duration: c++等语言: double newValue = 0; newValue = get_Duration(); javastricpt/vb/vbstricpt等脚本语言: var pos = 0; pos = on; 7) 设置全屏与否 Full (BOOL bFull): 如设置全屏 c++等语言: BOOL bFull = TRUE;//全屏则为TRUE,取消全屏则为FALSE put_Full (bFull ); javastricpt/vb/vbstricpt等脚本语言: var pos = true; = true; 8) 得到是否全屏 Full: c++等语言: BOOL bFull = TRUE; bFull = get_Full (); javastricpt/vb/vbstricpt等脚本语言: var pos = true; pos = ; 9) 设置静音 Mute(): c++等语言: BOOL bMute= TRUE;//静单为TRUE,取消静音则为FALSE; put_Mute(bMute); javastricpt/vb/vbstricpt等脚本语言: var pos = true; = pos ; 10) 得到是否静音状态 BOOL GetMute(): c++等语言: BOOL bMute = TRUE; Mute = get_Mute (); javastricpt/vb/vbstricpt等脚本语言: var pos = true; pos = ; 11) 得到当前播放状态 PlayState(): c++等语言: PLAYSTATE state= Undefined ; state= get_PlayState (); javastricpt/vb/vbstricpt等脚本语言: var state; state = ate; 播放状态值: 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= ; 16) 设置现在声音的值 0-100中间的值 Volume(): 例如设置声音值为50; c++等语言: long v = 50; put_Volume (v); javastricpt/vb/vbstricpt等脚本语言: var v = 50; = 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等 p= 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);按比例填充 _viewframe(v); 19)获取播放文件码率 long value = get_rate(); c++等语言: long v = 50; get_rate(&v); javastricpt/vb/vbstricpt等脚本语言: var v; _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; _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 = _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 = nction(xml); 现在暂只支持通过该函数获取播放文件视频原始宽高 脚本函数如下: var xml = ""; var rexml = nction(xml); alert(rexml); 输入为: 输出为:vs="%d"> %s表示具体的版本号如3.0.0.59 %d如果是0表示是标准版,1则表示为是增强版。 [26]预缓冲下一集: 该接口能让用户在看当前这集节目的时候,自动先缓冲下一集节目,这样当用户看下一集时就能很快的开始看了。也可以配合 设置IE自动导航到下一页面NextWebPage。这个接口,这样用户就可以完全不用手动去点击网页,完全流畅观看节目了。 支持http或者QVOD格式两种协议。 函数: c++ BSTR url=_T("qvod://117840593|FEB33A6420E14C7CFA16828083CD914D9E959B3B|秘密的校园_|"); StartNextDown(url); javastricpt: var url="117.21.248.253:80/131658100/A1B09F2D7F2C84679AE5110210448F7FB7C8F54F/秘密的校园_" 或密的校园_|"; extDown(url); [27]获取当前文件下载速度 者url="qvod://117840593|FEB33A6420E14C7CFA16828083CD914D9E959B3B|秘函数: c++ long ldownrate = te(); javastricpt: var ldownrate = te; 详细使用方法请见二楼的附件. 附件:【教程】如何让快播4用户通过谷歌等非IE浏览器点播节目/bbs/ 基于快播技术二次开发成功案例 /bbs/?tid=18198 快播(QvodPlayer)播放器界面皮肤的DIY指南 /bbs/?tid=15561 【开源】 QVOD二次开发开源代码 密友高清(Meu)源代码及说明 /bbs/ /?tid=592
发布评论