晨风交流论坛_CMP_CChat_Flash_音乐_视频_播放器_live直播_聊天室

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 38029|回复: 42

[教程] 【stream】CMP4可拖动视频播放功能使用方法

[复制链接]
发表于 2009-12-14 22:43:41 | 显示全部楼层 |阅读模式
官方QQ群:102348392 | 捐赠CMP
现在大多视频网站的视频,都是可以拖动到某个位置直接播放的,无需预先下载完
先来个stream视频播放的例子:
[cmp=600,300]http://cmp.cenfun.com/cmp4/cmp.swf?skins=skins/mini/vplayer.zip&skin_id=1&context_menu=0&config=null&lists=&play_mode=4&bgcolor=ffffff&auto_play=0&play_id=1&stream=1&label=Avatar&type=2&src=src_handler.php%3Ffrom%3Dsina%26vid%3D27015444%26start%3D%7Bstart_bytes%7D [/cmp]
视频源来自sina,它里面的视频支持这个

那平时我们用的不能拖动播放的视频又是什么呢?
我们一般的都是使用逐渐式下载的,也就是普通的http下载,每次请求都从头开始下载
而这种支持拖动播放的,可以不用从头开始下载,这里需要服务器的特殊支持

这个特殊支持就是,由客户端传入一个开始位置的参数,服务器从那个开始位置返回数据到客户端
而不用每次都从0开始返回数据,这样就可以跳着播放视频了

最新版本的CMP4也支持这个,为了区分默认的逐渐式下载视频,使用参数stream来表示,如:
  1. <m type="" src="music/test.flv" lrc="" stream="true" label="可拖动播放视频" />
复制代码
默认是false,也就是不支持拖动播放

看了上面的说明,要支持拖动播放,理所当然还要有2个前提条件
1,视频所在的服务器支持这种非逐渐式下载,如sina的视频
2,必须传入一个开始位置的参数,告诉服务器从哪开始返回数据


这里详细讲下第二个,开始位置的参数,一般是用start来表示(某些视频网站用其他的)
start位置又分两种情况:
1,开始的时间位置,即从哪个时间秒开始
2,开始的字节位置,即相对于总的文件大小,从哪个位置开始

那我们从哪去得到这个开始位置呢?
CMP4在拖动进度条时,会自动生成这两个开始位置,并保存为:
1,start_seconds  表示开始的秒数,也就是开始时间
2,start_bytes  表示开始的字节位置

所以在填写视频地址时,我们只需填写一个字符替换值即可得到开始位置,如:
  1. <m type="" src="music/test.flv?start={start_seconds}" lrc="" stream="true" label="可拖动播放视频" />
复制代码
每次拖动时,将自动提交新的开始时间位置

如果某些服务器是支持开始字节位置的,如sina,那么:
  1. <m type="" src="music/test.flv?start={start_bytes}" lrc="" stream="true" label="可拖动播放视频" />
复制代码
这样不用再为看一个2个小时电影,中间断线而重新下载一遍
看过了段落也可以直接跳过播放

有条件的朋友可以自架Streaming服务器实现http伪流传输视频
http://bbs.cenfun.com/thread-17246-1-1.html
发表于 2009-12-15 00:43:38 | 显示全部楼层
呵呵 不错 ~~~
发表于 2009-12-15 06:09:47 | 显示全部楼层
支持了
发表于 2009-12-15 08:13:56 | 显示全部楼层
哇塞,老大你太牛了,有了这个说明CMP的应用更广了,对于不点不通的人。
发表于 2009-12-15 11:56:58 | 显示全部楼层
可以多首播放,就更好了
 楼主| 发表于 2009-12-15 12:07:49 | 显示全部楼层
要多首,加一个列表不就可以了啊
发表于 2009-12-15 12:18:44 | 显示全部楼层
7# cenfun

对额,还可以这样,请问下老大,能否实现歌曲地址是动态的,例如1.mp3,参数里给的地址是

1.PHP ,然后这个php指向1.mp3的真实地址
 楼主| 发表于 2009-12-15 12:36:57 | 显示全部楼层
当然可以啊
由于没有后缀,多传一个type告诉是什么类型就行了
发表于 2009-12-15 12:41:22 | 显示全部楼层
本帖最后由 useful 于 2009-12-15 12:42 编辑

9# cenfun



试着做了,好像不行


  1. http://cmp.cenfun.com/cmp4/cmp.swf?skins=skins/mini.zip&skin_id=1&context_menu=0&config=null&lists=&repeat=1&bgcolor=ffffff&auto_play=1&src=http://192.168.1.102/cmp4/music/css.php


  2. css.php

  3. <?
  4. echo "http://192.168.1.102/cmp4/music/css.mp3";
  5. ?>
  6. <?
  7. Header("Location: http://192.168.1.102/cmp4/music/css.mp3");
  8. ?>
复制代码
 楼主| 发表于 2009-12-15 12:46:46 | 显示全部楼层
1,要传type告诉cmp是什么类型,type=1或者type=mp3
2,你用你内网的地址192.168.1.102,其他人也没法帮你测啊

在cmp3专区有个叫阿常的,他的全是asp地址的,你可以去查阅下

QQ|客服QQ44023478|Archiver|手机版|小黑屋|晨风交流论坛 ( 粤ICP备05008793号 )

GMT+8, 2019-1-17 06:17 , Processed in 0.058789 second(s), 18 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表