您的位置:首页 > 移动开发 > Android开发

多段合并播放器方案(移动版)

2016-07-20 11:31 267 查看
我最近发现一个比较好的解决方案,可以在移动端很流畅的将多短视频当完整的一段视频进行播放,并且可以任意位置拖动。对于类似于优酷等视频网站,他们的视频地址可能是多段的,就可以采用这种解决方案进行播放(对用户感觉是完整的一段)。

将视频切分为多段播放,有以下好处:

1)节省流量:很多用户是只看了一会开头就关闭了视频,或者暂停了视频。如果是整个视频就完整一段地址的方式,如果该用户网速很快,很可能他只看了一会,却把整个视频给缓冲完了,浪费了服务器流量。

2)防盗链:如果只有一段地址,用户很容易获得到完整的视频文件;如果是多段地址,增加了盗链难度。

3)服务器负载均衡:多段地址可以更有利于负载均衡。

多段合并部分接口函数,如下:

static int ykseg_probe(AVProbeData *probe)

static int open_next_file(AVFormatContext *fmtctx)

static int seek_pos(AVFormatContext *fmtctx, int stream, int64_t ts, int flags)

多段视频合并播放示例程序下载地址:http://www.dolit.cn/download/f/segPlayer-1.0.rar

测试方法:



程序在android手机下安装后打开,需要输入的地址是一个类似于这样的地址: http://www.dolit.cn:8098/ykseg/1.ykseg (其实这是一个记事本,您

如果需要测试自己的多段视频,可以下载下来仿照这种方式做一个测试的ykseg文件,将地址交给播放器)。

这个1.ykseg里面的示例内容如下:

#YKSEG

url 'http://www.dolit.cn:8098/ykseg/1.flv'

duration 380

url 'http://www.dolit.cn:8098/ykseg/2.flv'

duration 403

url 'http://www.dolit.cn:8098/ykseg/3.flv'

duration 398

url 'http://www.dolit.cn:8098/ykseg/4.flv'

duration 398

url 'http://www.dolit.cn:8098/ykseg/5.flv'

duration 415

url 'http://www.dolit.cn:8098/ykseg/6.flv'

duration 366

url 'http://www.dolit.cn:8098/ykseg/7.flv'

duration 374

url 'http://www.dolit.cn:8098/ykseg/8.flv'

duration 374

其中url后面是每一段的地址,duration是这一段的时长为380s。这样一个格式的记事本交给播放器就可以测试播放了。

其他的详情看官网(h
85ca
ttp://blog.dolit.cn/segplayer-html)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息