untitledOURTEAMlinkedinuntitled2untitled3iconuntitled4icon2untitled01020304ourteam-01-2youjian-01hornmaillinkedinTEAMlagou
lingdonglingfenglingkonglingmoulingwulingyuelingzhizhanshiiconfont-jindanluntaniconfont-boke4iconfont-wendang0iconfont-pciconfont-AppleAcciconfont-iconset0290iconfont-iconfontfaqviconfont-touxiangclosenavbar-liveOSnavbar-videoAinavbar-videodatanavbar-videoOSasmpnavbar-vmrtnavbar-one1navbar-documentnavbar-faqnavbar-tutorialnavbar-blognavbar-forumvideojj-magicinvideojj-revenueSVD-01vdap-ctrlnavbar-videoOS-titlenavbar-LiveOS-titleicon-hotnavbar-newtop-arrowvpls-product-arrowvpls-product-plusV-MallV+MALL
dl-folderdl-ctrldl-androiddl-iosdl-webdl-videoOS-titledl-liveOS-title

Web SDKdownload

|点播 VideoOS

文档
点播 解决方案
纯互动层接入
Web SDKdownloadiOS SDKdownloadAndroid SDKdownload

手机体验

Web SDKdownload

|直播 LiveOS

手机体验

文档

下载次数 10000+

Web SDKiOS SDKAndroid SDK

谁在使用

日日煮游久网游戏不易
Web SDKiOS SDKAndroid SDK

谁在使用

芒果tv浙江tv风行网
Web SDKiOS SDKAndroid SDK

谁在使用

战旗tv斗鱼tv熊猫tv

目前还没有提供该服务,
请点击客服联系我们~

6.22

Beta

Version 6.222017.05.25

1 修复Editor错误显示undefined的问题

2 修复Array方法冲突的问题

3 修复视频中有新闻时,推送新的新闻,两个新闻重叠的问题

4 修复风行PC,接了OS的视频不显示小窗的问题

5 修复红包广告图比例不正确的问题

links:

6.20

Release

Version 6.202017.05.16

1 添加定时上线热点功能

2 优化热点出现和消失逻辑

3 其他bug修复

4 修复中插出现后被隐藏的问题

5 去掉投票云图热点的标题

6 更新venvy播放器

7 更新TestIva工具

links:

6.19

Release

Version 6.192017.05.02

1 添加新闻插件前端UI

2 修复文字投票在编辑模式下的样式问题

3 海报信息层未设置商品图时的样式问题

4 修复播放器启动的时候没有应用播放器设置的bug

5 修复le.cztv播放器桥文件回调事件名

6 修复前贴广告和互动层广告冲突的问题

7 集成cztv播放器seekTo接口

links:

6.18

Release

Version 6.182017.04.13

1 气泡和抽奖按钮ui改变

2 修复气泡计时器未清除的bug

3 优化图片加载逻辑

4 调整广告信息侧边主题样式

5 播放器移动端兼容视频后缀

6 播放器解析增强

7 启动方式优化

8 气泡,配置GIF广告图显示对话框的问题

9 气泡,部分浏览器下展示异常的问题

10 底部文字投票优化

11 纯曝光加X的云图,点击后云图会消失的问题

links:

6.17

Release

Version 6.172017.03.29

1 海报信息层UI迭代

2 百科信息层UI迭代

3 前端打点优化热点位置和大小配置

4 前端打点优化卡牌热点设置

5 投票记录上次用户选项

6 增加气泡应用

7 修复播放器移动端对url匹配bug

links:

6.16

Release

Version 6.162017.03.21

1 添加dsp动态刷新逻辑

2 中插广告显示广告和倒计时标签

3 更新全屏弹出的广告红包主题

4 更新底部投票UI

5 打点的时候支持显示资源适用设备

links:

6.15

Release

Version 6.152017.03.15

1 添加中插应用

2 添加红包倒计时

3 禅道bug修复

4 修复红包倒计时背景颜色

links:

6.14

Release

Version 6.142017.03.03

1 集成DSP广告

2 修复osx下firefox浏览器字体问题

3 兼容老的api接口配置

links:

6.13

Release

Version 6.132017.02.25

1 修改LotteryTip 的Preview banner 预览图

2 修复热点的标题white-space样式

3 修复web播放器在移动端的表现

4 修复https站点切换原生播放器失败

5 修复打点编辑器输入框内容会被清空或覆盖

6 修复视频播放完一段时间后无法打点的问题

7 修复海报热点出现滚动条的问题

8 修复底部投票的文字投票中,选择投票的样式问题

9 修复轻松购前端标签字换行的问题

10 修复播放器设置页面SDK出现异常的问题

11 修复轨迹框移动到视频右侧时,热点标题会显示不完整问题

links:

6.12

Release

Version 6.122017.02.18

1 增加抽奖应用

2 应用autoFormat播放器配置

3 增加热点展示时标题动效

4 修复播放器右键菜单设置无效的问题

5 修复播放器单击播放或者暂停的功能

6 修复广告信息层等不正确渲染回车文本的问题

links:

6.11

Release

Version 6.112017.02.09

1 修复高级设置切换项目级设置报错

2 修复信息层有效点击linkId监控数据

3 调整VNews的UI

4 前端支持广告动态投放和用户单日频次控制

links:

6.10

Release

Version 6.102017.01.19

1 云图加入关闭按钮

2 修复组件样式标签的parent为head

3 新增3个灵悟小白点监控:

  (1) 灵悟初始化(cat=5)

  (2) 灵悟开始画框(cat=49)

  (3) 灵悟点击确定(cat=50)

4灵悟集成淘宝客推广位pid

5禅道bug修复

links:

6.9.0

Release

Version 6.9.02017.01.12

1 增加对liveOS的sdk动态加载的支持

2 修复IE10播放器样式错乱的问题

3 增加admin前端全局打点的支持

4 修复轻松购关闭按钮的小白点监控

5 前端支持根据灵悟后台设置,展示对应的提示语和推广商品等

links:

6.8.0

Release

Version 6.8.02017.01.05

1 调整v-news过期时间

2 加入v-news小白点数据统计

3 修复播放器https的问题

4 修复core销毁没有清除播放器timer的问题

5 其他bug修复和体验优化

links:

6.7.0

Release

Version 6.7.02016.12.29

1 增加广告红包二维码生成参数

2 加入自定义referer2

3 加入v-news新闻推送前端支持

4 重构了插件间focus/blur的关系

5 红包广告ui 调整

6 灵悟淘宝客url跳转替换

7 过滤掉包含不合法参数的va.gif请求

8 播放器桥文件中添加长尾、大平台的相关配置

9 添加定制化广告红包主题

10 支持http/https资源和接口

11 增加新的应用轻松购

12 修复视频改变大小后小白点统计重复的问题

13 修复Iva加载器不能重复创建互动层的问题

links:

6.6.0

Release

Version 6.6.02016.12.15

1 hotfix 播放器更新代码

2 灵悟商品区分相似款和推荐款

3 灵悟新手引导优化

4 修复创建热点自动播放视频

5 修复投票后数据同步问题

6 修复flash播放m3u8报错的问题

7 修复图片的点击曝光第3方监控没触发的问题

links:

6.5.0

Release

Version 6.5.02016.12.08

1 播放器在移动端显示异常

2 修复IE10下显示问题

3 加入移动端H5广告红包插件

4 加入模块加载器缓存策略

5 添加预览器错误检查

6 修复移动端播放器播放问题

7 修复图片的点击监控

8 修复投票结果不更新的bug

9 修正previewer中的publicUrl

10 修复红包热点显示异常的问题

11 修复灵动贴点击消失的问题

12 修复投票数据更新的问题

links:

6.3.0

Release

Version 6.3.02016.11.25

1 支持mqtt定时热点推送和前端打点支持

2 支持前端显示全局热点

3 增加mqtt-swf以兼容IE浏览器

4 加入友好的错误提示

5 加入通用的声波和波纹热点主题

6 优化cytron启动和模块加载逻辑

7 默认播放器支持单独视频源配置: `config.videoSource`

8 修复编辑模式不能控制播放器进度条的问题

9 修复播放器onStop没有停用runner的bug

10 修复播放器onend没有回调stop_callback的bug

links:

6.2.0

Release

Version 6.2.02016.11.28

1 提取应用模块公用库到core,模块大小减少了30%

2 修复红包二维码加载慢的问题,加入loading状

3 优化前端字体显示效果,加入font-smoothing

4 优化core初始化的api请求,避免启动的时候对服务器造成过大压力

5 优化应用模块的加载策略,使用lazyload机制,按需加载

6 添加并优化侧dg样式:百科,广告,轮播,卡牌

7 加入侧dg点赞特效

links:

6.1.0

Release

Version 6.1.02016.10.21

1 添加二维码红包和对应的热点样式

2 添加百科和广告的侧DG样式

3 添加mqttClient

4 重构了禁用互动层的逻辑

5 修复卡牌热点的显示问题

6 修复css在新蓝网的部分样式问题

7 修复了新蓝网播放器的对接时`getTotalTime`为空

8 优化了打点编辑器的部分UE

links:

6.0

Release

Version 6.02016.10.13

1 加入应用、主题和插件系统,并支持模块化

2 加入了第三方播放器接入系统

3 优化了核心逻辑运行的性能

4 SDK的大小精简到90KB

5 重构热点编辑器

6 集成新的数据统计接口

7 增加灵悟功能,默认开启

links:

5.6

Release

Version 5.62016.08.30

1 修改用户标识,支持全平台

2 增加云图特效

3 修复destroy方法调用后显示的异常的bug

links:

5.5

Release

Version 5.52016.06.17

1 新增信息层类型—H5

2 新增热点点击第三方监控

3 修改风车默认icon

4 卡牌外链可跳广告类型云窗

links:

5.4

Release

Version 5.42016.05.12

1 新增信息层类型--片花

2 直播前端打点灵动球优化

3 修复了红包的一些bug

links:

5.3

Release

Version 5.32016.04.27

1 选择资源时,添加根据栏目来筛选

2 直播信息层优化

3 美化了IE下滚动条的样式

4 优化了投票选项较多时的展示样式

links:

5.2

Release

Version 5.22016.04.13

1 增加了投票广告贴图,并添加第三方监控

2 解决了直播信息层冲突的问题

3 优化了直播过程中热点和信息层展示的逻辑

4 增加了直播中的发红包功能

links:

5.0

Release

Version 5.02016.03.28

1 增加了广告类型

2 增加了混合类型

3 修改了投票样式

4 优化了显链和隐链的跟踪逻辑

5 增加了主题色配置

6 优化了云泡的逻辑

links:

4.9

Release

Version 4.92016.01.28

1 优化了跟踪算法

2 修改了投票的样式

3 修复了直播端的一些bug

links:

4.6

Release

Version 4.62015.12.23

1 添加云窗展示和关闭特效

2 添加投票功能

3 优化直播互动功能

4 修复云链显示时间的bug

5 H5播放器优化

links:

4.4

Release

Version 4.42015.12.03

1 新增卡牌功能

2 新增直播实时推送云链云图

3 新增显链在进度条的白点效果

4 播放器适配移动端H5

5 互动层适配移动端微信H5

6 优化跟踪框展示效果

7 优化云链展示效果

8 修复IE10全屏的bug

links:

4.2

Release

Version 4.22015.11.13

1 增加云图跟踪功能

2 播放器增加可实现连续播放的接口

3 优化播放器 loading页面

4 修复切换清晰度时的卡顿问题

5 支持播放rtmp流、m3u8格式文件

6 支持移动端播放

7 视频当前清晰度播放异常时,自动切换清晰度播放

8 新增控制台的审核模式,即展示云链并自动打开云窗

links:

4.0

Release

Version 4.02015.09.18

1 新增直播播放器

2 新增点播播放器皮肤

3 Iva互动层样式升级

4 新增云图功能

5 升级图像跟踪功能,缩减实时跟踪延时

6 新增资源管理库

7 提升Iva互动层在控制台里的加载速度

8 新增网页播放器支持 hls

9 新增跟踪框可点击

10 新增云链云图可隐藏

11 新增播放器样式可在 video++控制台 配置

12 新增Video++用户可在无权限的网站申请权限

13 修复IE浏览器播放异常

links:

3.0.1

Release

Version 3.0.12017.05.24

1 修复了多段视频拼接文件安全性不足拒绝访问导致无法播放的bug

2 互动信息层加载完成附带有无热点信息(纯视频,不考虑广告投放和即时打点)

3 全局点显示,可以显示项目级热点

4 新增新闻、气泡功能

5 广告投放系统上线

6 修复部分特效在切入后台后唤醒消失

3.0.0

Release

Version 3.0.02017.05.05

1 互动层重写处理与渲染逻辑使界面可以动态化更新

2 优化播放器界面,使界面更简洁

3 修复部分Bug

4 软解播放器支持https

5 需配合新版本的VideoOS使用

2.0.5

Release

Version 2.0.52016.11.30

1 优化mqtt

2 网络请求全线变为https

3 优化第三方控件,使之不会与原控件冲突

4 针对iOS10字体优化

2.0.4

Release

Version 2.0.42016.08.30

1 修改统计接口,使消耗流量更少,体验更加

2 修复若干bug

3 业务调整暂时移除云泡功能

2.0.3

Release

Version 2.0.32016.05.30

1 根据苹果官网更新Reachabipty,全面支持IPv6

2 修复播放器在播放只有音频的流时报错

3 添加无网时播放本地多段视频(仅限mp4,mov,m4a系统支持格式,flv等不稳定)

4 去除相关库版本过高的警告

5 优化数据库读写,全面提高性能

6 优化百科类资源,使视觉协调统一

7 修复混合云窗点赞显示bug

8 后台自定义风车图标,给予用户个性化配置

9 优化投票动画,使展现过程更为流畅

2.0.2

Release

Version 2.0.22016.05.01

1 完善用户互动体验

2 重构云链逻辑,减小CPU的使用

3 优化红包和卡牌云链提示中的文字大小,使其更适应,不会造成文字太小

4 修复云云窗可能会盖在控制器上方

5 修复外链打开网页有时会有延时的问题

6 修复云窗图标有部分被切割

7 修复本地视频在没有网络情况下无法播放

更新优化VVSDKPlayerVenvyTagState通知枚举,无界面需自行控制播放器暂停(详见Demo和头文件)


  typedef NS_ENUM(NSInteger, VVSDKPlayerVenvyTagState) {
    VVSDKVenvyTagPausePlayer,           //云链被点击,打开云窗,右边遮住小半屏,可能需要暂停(最好隐藏控制栏)
    VVSDKVenvyTagPlayPlayer,            //云窗关闭,如果之前控制暂停可以继续播放

    //如果不由SDK控制外链打开将没有以下状态
    VVSDKVenvyDgPausePlayer,            //云窗的外链被点击,打开外链,默认暂停(最好暂停和隐藏控制栏)
    VVSDKVenvyDgPlayPlayer              //云窗的外链关闭,默认播放(可以根据之前播放状态继续播放或者保持暂停)
  };

2.0.1

Release

Version 2.0.12016.04.19

1 完善用户体验,添加本地存储(需要新导入pbsqpte3.dypb库)

2 替换直播链接Websocket为物联网MQTT,减小带宽使用,使交互更流畅

3 添加混合类信息层,人物、商品、地点三种类型的信息展示与广告完美融合

4 新增优惠码及口令两种类型红包,满足不同需求

5 添加视频在尚未加载时,可自定义清晰度功能

6 修复切换清晰度时,产生重音问题

7 修复播放器标题字数过多时会超出范围的情况

2.0

Release

Version 2.02016.03.28

1 全新互动信息层样式,带来更美观的视觉体验

2 优化互动信息层,将全屏形式转换成侧栏形式,提升用户观看体验

3 新版热点,优化默认样式,增加可自定义icon,且完美支持gif格式

4 新增多款热点特效,包括翻转、呼吸灯、波纹等,酷炫效果迅速抓住眼球

5 新增后台配置,操作更快捷,互动层显示轻松掌控

6 移除VideoPlsIVASDKResources.bundle中excutable File(Xcode 7编译报错)

7 修复bug若干

1.3.6

Release

Version 1.3.62016.02.01

1 修复切换窗口和全屏后云链显示重置

2 修复本地文件播放问题

3 修复在加载视频(实际还未加载)中旋转屏幕有可能闪退问题

4 修复videoType = 2时界面中清晰度修改和视频显示有可能会延时出现

5 修复在Devices只有iPhone的情况下使用iPad(iOS 8.0~8.2)打开,退出播放器会发生闪退

6 优化云链显示

7 优化播放器

1.3.5

Release

Version 1.3.52016.01.21

1 修复部分视频在切换清晰度后云链位置异常

2 修复部分原因导致互动层在播放器控制视图的上方

3 处理videotype=2的网络请求无返回信息问题

1.3.4

Release

Version 1.3.42016.01.14

1 添加版本信息,在framework中的info.ppst即可查到

2 互动添加卡牌和投票支持

3 添加风车,使用户能更清晰得到交互提示

4 优化交互层和播放器

5 修复播放m3u8资源时进入后台后恢复应用无画面

6 替换getcurrentBufferTime:方法为getCurrentBufferTime:

7 过滤播放完成后拖动进度条的交互,需要再次播放后才能拖动进度条,避免出现无限加载的状态

8 修复云泡组件在编辑时直接退出视频导致键盘不消失

9 修复有可能视频没有加载完成导致交互位置有误

10 分离必须用资源组件VideoPlsIVASDKResources.bundle和播放器用资源VenvyVideoSDKResources.bundle,如果使用无界面播放器可以不用导入VenvyVideoSDKResources.bundle

11 添加对hevc支持,H.265的流能够播放

12 直播互动支持(测试)

1.3.3

Release

Version 1.3.32015.12.18

1 优化网络连接,使之更加稳定

2 修复在Xcode7上可能会出现链接库过期

3 更新api接口,现在本地网络源也能获得云链了

4 优化播放性能

5 重新修改videoType属性中的类型设置并添加ispve属性来控制是否直播(具体可看SDK中的头文件)

  • 0:八大视频网站地址(默认)
  • 1:可直接访问视频原地址(网络)/直播地址
  • 2(测试):需要我请求一次得到json格式集合(直接能播放的视频源)/直播地址集合
    使用方法:如为本地组装url请传 file://path 主要用于本地多种清晰度 具体格式详见setDictionaryFormatWithDurationKey:的注释
  • 3(暂定):深入合作方防盗链视频(通用包无效)
  • -1:存于手机中的本地视频
1.3.1

Release

Version 1.3.12015.11.30

1 增加云泡功能

2 优化播放器

3 修复播放结束后按钮没有变回播放状态

4 添加获取当前视频图像方法

1.3

Release

Version 1.32015.11.10

1 v1.3 更新日志

2 云链样式改版,对接新版4.0,云窗能够显示百科购物等

3 新增云图功能,移动端也能看到云图啦

4 重构系统播放器,消耗资源更少、更稳定

5 无界面方法改版,云链可以不遮挡控制栏,具体见文档和Demo

6 优化界面显示

7 增加隐藏云链


请各位开发者们注意:
不要用此bundleID:cn.venvyvideo.VenvyVideoSDKDemo注册在你们Developer的Identifiers中,希望已注册的删除该App ID,并邮件告知一下我(zard1096@videopls.com),谢谢合作!

1.2

Release

Version 1.22015.09.18

1 添加无界面播放器(通过设置VVSDKPlayerView的controlStyle)

2 添加可供无界面播放器使用的一些小界面

3 重新编译ffmpeg,使最终打包增加的体积从7M左右降到3.5M左右

4 增加播放器运行稳定性

5 移除bundle的excutable file,使Xcode7编译不报错

1.1

Release

Version 1.12015.08.13

起始版本

2.0.4

Beta

Version 2.0.42017.01.10

1 互动层添加新的红包样式

2 互动层添加新版带图片投票样式

3 优化互动层内存使用

4 播放器bug修复提升播放器的稳定性

2.0.3

Release

Version 2.0.32016.08.30

1 互动层添加云图动效

2 云图可跳转广告、百科,无点击效果等

3 直播添加按照项目、栏目投放互动层

4 修复bug若干

2.0.2

Release

Version 2.0.22016.05.30

1.播放器加载网络缓存,优化拖动

2.互动层修复横竖屏切换位置不对bug

3.优化互动层,减小内存的使用

4.减小播放器体积

5.修复bug若干

2.0.1

Release

Version 2.0.12016.04.16

1.互动层逻辑修改

2.添加混合云链

3.直播稳定性并发行增强

4.优化本地存储

5修复bug若干

2.0

Release

Version 2.02016.03.28

1.新版热点,icon全面升级,完美支持gif格式

2.优化信息层,将全屏显示转换成侧滑显示,提升用户观看体验

3.直播互动层增加趣味红包领取功能,互动形式更多样

4.修复播放器锁屏键播放bug

5.修复其他bug若干

1.4.7

Release

Version 1.4.72016.01.21

1.添加风车

2.优化互动层

3.增加播放器稳定性

4.修复bug若干

1.4.6

Release

Version 1.4.62016.01.13

1.添加卡牌

2.添加投票

3.分离播放器与互动层 ,互动层可单独使用

4.修复bug若干

1.4.5

Release

Version 1.4.52015.12.19

1.添加云泡功能

2.添加云图功能,优化隐链 ,显链

3.播放器控制器支持滚动

4.添加视频比例

5.修复bug若干

1.4.4

Release

Version 1.4.42015.11.30

1.添加外部调用切换视频源

2.优化网络请求

3.播放器bug修复提升播放器稳定性

4.其他bug修复和稳定性增强

1.4.3

Release

Version 1.4.32015.11.12

1.添加百科,购物,云链

2.添加视频比例的接口

3.大幅优化高清高帧率视频播放效果与性能

4.全面兼容Android 6.0

5.播放器bug修复提升播放器稳定性

1.4.2

Release

Version 1.4.22015.09.18

优化新版云链云图,新增云链自动跟踪

添加播放器视频比例功能

播放器bug修复提升播放器稳定性

减小播放器体积

直播细节优化

修复上个版本中的若干bug


  • 加载外部SWF到程序中
var xmlLoader:URLLoader = new URLLoader();
xmlLoader.addEventListener(Event.COMPLETE, configLoaded);
xmlLoader.load(new URLRequest("http://sdk.cdn.videojj.com/flash/bin/vjj_config.xml?" + Math.random()));

var loader:Loader = new Loader();
loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadCompleteHandler);

function configLoaded(e:Event):void
{
    xmlLoader.removeEventListener(Event.COMPLETE, configLoaded);
    var xml:XML = new XML(xmlLoader.data);
    var sdk_url:String = xml.@src2;
    loader.load(new URLRequest(sdk_url));
}

为了让Video++互动层的用户体验更好,建议将我们放到最上层。

  • 互动层加载成功后初始化参数示例
function loadCompleteHandler(e:Event):void
{
        var videoPlsDS:DisplayObject = loader.content as DisplayObject;
        addChild(videoPlsDS);

        /**
         * 根据传入的object初始化
         * 需要用到的参数有:
         *  width               播放器宽度
         *  height              播放器高度
         *  referer             当前页面的页面地址
         *  host                服务器地址(默认:http://liveapi.videojj.com)
         *  platformid          平台id (登录live.videojj.com后在后台设置-帐号设置内查看)
         *  platformUserId      房间号id(平台房间唯一id)
         *=====================以上参数点播必填=====================
         *
         *  token               主播token(普通用户不用传)
         *  play_callback       继续播放回调(用于播放中插)
         *  pause_callback      暂停播放回调(用于播放中插)
         *=====================以上参数点播选填=====================
         *
         */

        var obj:Object = new Object();
        obj.width = 800;
        obj.height = 600;
        obj.referer = "http://www.zhanqi.tv/11523586";
        obj.play_callback = function():void{  };

        (videoPlsDS as Object).initializeByObject(obj);
}

Video++互动层加载完毕后,默认会监听stage.resize事件,之后Flash容器大小改变,互动层也会自动改变。同时,考虑到部分播放器会有自己的特殊宽度改变策略, 我们也提供了resize方法来供播放器自己调用处理。这里特别提醒下,播放器调用resize方法后,互动层将移除对stage的监听事件,也就不再自动根据画面来适配尺寸或者坐标。因此原则上我们不推荐使用resize方法,由于之后必须在每个改变尺寸的地方都需要调用一次我们的resize方法,这样对于播放器来说增加了部分无意义的代码。

/**
 * 调整容器大小
 * 所有元件会根据容器的大小改变,而动态改变位置
 * @param width   新宽度
 * @param height  新高度
 */
public function resize(width:Number, height:Number):void

用户每次主动暂停/播放视频操作需要通知下互动层,调用以下接口

playAction(act:String,data: Object):void
act 方法名play|pause   视频播放|暂停状态
data 附带数据 (目前暂时不需要 固定传入null即可)
2.3.0

Beta

Version 2.3.02017.05.18

1. 抽奖——可能是全世界第一个互动技术内的直播抽奖功能。结合手动/定时方式,完美应用于大部分直播场景。

2. 点赞——可能是全世界第一个互动技术内的直播点赞功能。赞/踩两种互动方式分别计数,用户一目了然,同时可任意切换选择。经过反复调试,三端动画高度统一;高并发下也没有任何延迟,实时返还互动数据,堪称强互动的典范。

3. 时间区间和显示次数功能开发

4. ios端主播控制条交互调整

5. ios端商品翻转完成

6. 第三方监控添加完成

7. 修改文字链和扁平风投票的监控逻辑和点击逻辑

8. 中插广告视频关闭按钮添加

9. 修改中插广告视频关闭按钮显示逻辑和样式

10. ios端主播打点拖拽式动画

11. 投票归票功能增加

12. 增加广告关闭按钮出现时间的字段

2.2.0

Release

Version 2.2.02017.01.01

修复多处BUG

提供直播平台抽奖功能

2.1.0

Release

Version 2.1.02016.11.24

1 虚拟红包

2 红包全面定制

3 科技风投票

4 中插视频以及画中画

5 多处bug修复

2.0.2

Release

Version 2.0.22016.10.09

1 灵动加入视频功能

2 提供曝光/点击的第三方监测功能

2.0.1

Release

Version 2.0.12016.09.26

1 Video++ 直播互动产品全线上线!

2 全球最专业的直播互动产品,斗鱼/熊猫/战旗/斗鱼/全民等国内领先直播平台的首选。

3 平均提升单个直播间观看时长37%,一经接入即可获得海量广告资源。

4 电商返让直播平台轻松实现流量变现,服务超过1.8亿用户。

5 简单易用,只需一行代码即可快速接入,支持直播实时互动,适用于直播平台方和主播两端同时使用。

6 直播平台方可轻松实现全平台投票/红包/通知/广告通投,支持多种互动样式。

7 主播只需登陆直播后台账号即可快速在自己的直播间自行配置互动投票/红包/广告,实现广告投放分成。

8 video++已经全面接入淘宝天猫电商系统,天猫双11红包投放官方视频平台广告合作合作。

2.3.0

Beta

Version 2.3.02017.05.12

1. 抽奖——可能是全世界第一个互动技术内的直播抽奖功能。结合手动/定时方式,完美应用于大部分直播场景。

2. 点赞——可能是全世界第一个互动技术内的直播点赞功能。赞/踩两种互动方式分别计数,用户一目了然,同时可任意切换选择。经过反复调试,三端动画高度统一;高并发下也没有任何延迟,实时返还互动数据,堪称强互动的典范。

3. 时间区间和显示次数功能开发

4. 第三方监控添加完成

5. 修改文字链和扁平风投票的监控逻辑和点击逻辑

6. 中插广告视频关闭按钮添加

7. 修改中插广告视频关闭按钮显示逻辑和样式

8. 投票归票功能增加

9. 增加广告关闭按钮出现时间的字段

10. 增加连续快速点赞限制逻辑

2.2.0

Release

Version 2.2.02017.01.01

修复多处BUG

提供直播平台抽奖功能

2.1.0

Release

Version 2.1.02016.11.24

1 虚拟红包

2 红包全面定制

3 科技风投票

4 中插视频以及画中画

5 多处bug修复

2.0.2

Release

Version 2.0.22016.10.09

1 灵动加入视频功能

2 提供曝光/点击的第三方监测功能

2.0.1

Release

Version 2.0.12016.09.26

1 Video++ 直播互动产品全线上线!

2 全球最专业的直播互动产品,斗鱼/熊猫/战旗/斗鱼/全民等国内领先直播平台的首选。

3 平均提升单个直播间观看时长37%,一经接入即可获得海量广告资源。

4 电商返让直播平台轻松实现流量变现,服务超过1.8亿用户。

5 简单易用,只需一行代码即可快速接入,支持直播实时互动,适用于直播平台方和主播两端同时使用。

6 直播平台方可轻松实现全平台投票/红包/通知/广告通投,支持多种互动样式。

7 主播只需登陆直播后台账号即可快速在自己的直播间自行配置互动投票/红包/广告,实现广告投放分成。

8 video++已经全面接入淘宝天猫电商系统,天猫双11红包投放官方视频平台广告合作合作。

定制开发-H5播放器

为了第三方的 H5 播放器和 video++ 互动层对接,需要客户对 H5 播放器做一些定制开发:


事件

video++ 的 JS SDK 会在 window 上注册函数 window.vjjCallback ,第三方的 H5 播放器需要在指定时间调用该函数

vjjCallback(eventType)
@param    {String}    eventType    事件类型
@return    {Void}

事件类型如下:

  “play_callback”:播放回调事件,当视频加载完成开始播放,和视频中暂停时点击播放键调用
  “pause_callback”:暂停回调事件,视频播放过程中,点击暂停键调用
  “stop_callback”:结束回调事件,视频播放完毕调用
  “start_seek_callback”:跳转回调事件,当拖拽进度条调用
  “loaded_callback”:视频资源开始加载回调事件,当广告结束播放器准备播放正片时调用

方法

第三方 H5 播放器需要在 window 上注册属性 window.vjjPlayer ,该属性的值为Object对象,该对象有以下属性:

  @attr    {Function}    do_play    播放
  @attr    {Function}    do_pause    暂停
  @attr    {Function}    get_time    获取播放器当前播放正片的时间,以秒为单位

互动层接入

1. 引入JS`<script type="text/javascript" src="http://7xjfim.com2.z0.glb.qiniucdn.com/h5_Iva.js"></script>`

2. 创建video++互动层

var ivaInstance = new Iva('父容器', {
    appkey: '应用标识',
    video: '视频地址',
    title: '视频标题'
})
说明:
  “父容器”为播放器的父容器id
  “视频地址”为“$videoId$flag”格式,移动端、web端和桌面端3端保持一致,例如“$123456$videojj”

定制开发-flash播放器

为了第三方的flash播放器和video++互动层对接,需要客户对flash播放器做一些定制开发:


事件

flash需要以回调的形式抛出一些事件,例如ExternalInterface.call("vjjFlash", "eventType")这里的指定vjjFlash为js的回调函数名,eventType为具体的事件类型

vjjCallback(eventType)
@param    {String}    eventType    事件类型
@return    {Void}

事件类型如下:

  “play_callback”:播放回调事件,当视频加载完成开始播放,和视频中暂停时点击播放键触发
  “pause_callback”:暂停回调事件,视频播放过程中,点击暂停键触发
  “stop_callback”:结束回调事件,视频播放完毕触发
  “start_seek_callback”:跳转回调事件,当拖拽进度条触发
  “loaded_callback”:视频资源开始加载回调事件,当广告结束播放器准备播放正片时触发


  如果播放器全屏也需要互动层,还需要以下两个事件:


  “fullscreen_callback”:全屏回调事件,当用户点击全屏按键触发,flash本身的全屏不触发(改由video++互动层调用H5全屏接口),播放器相关的UI改成全屏的状态
  “exitfullscreen_callback”:退出全屏回调事件,当用户点击退出全屏按键触发,flash本身的退出全屏不触发(改由video++互动层调用H5退出全屏接口),播放器相关的UI改成非全屏的状态

方法

flash需要暴露一些方法给js调用,例如ExternalInterface.addCallback("jsFunction", flashFunction),jsFunction如下:

  “do_play”:播放
  “do_pause”:暂停
  “get_time”:获取播放器当前播放正片的时间,以秒为单位

互动接入

1. 引入JS
`<script type="text/javascript" src="http://7xjfim.com2.z0.glb.qiniucdn.com/flash_Iva.js"></script>`

2. 创建video++互动层

var ivaInstance = new Iva('父容器', {
    appkey: '应用标识',
    video: '视频地址',
    title: '视频标题'
})
说明:
  “父容器”为播放器的父容器id
  “视频地址”为“$videoId$flag”格式,移动端、web端和桌面端3端保持一致,例如“$123456$videojj”

VideoOS iOS互动层对接

此文档针对于自己有播放器的客户完成互动层的对接。

1. 获取Appkey和Bundle ID (注:如何在我们的官网注册应用得到appkey和BundleID请点击链接查看我们的十分钟玩转控制台教程。)
2. 下载SDK并获取VideoPlsCytronSDK解压压缩包,结构如图所示:

    `VideoPlsCytronSDK.framework` 包含文件介绍:
    `VideoPlsCytronSDK.h` 是设置 appkey 的,里面只包含一个方法。
    `VPCytronNotificationNameSet.h` 包含所有通知和枚举。
    `VPCytronView.h` 提供给外部的方法(包括互动层)。
3. 快速集成(集成前请保证 appkey 和 bundle ID 设置正确)

1) 将下载的SDK解压后导入您的工程中 (注:请务必在此步骤中选择“Create groups”单选按钮组, 因该SDK体积过大,不要勾选“Copy items if needed”。用这种方式仅引用该SDK,避免引起项目体积过大的问题)

2) 设置项目的Framework Search Paths (注:由于我们采用了Reference的方式,所以此处必须在Framework Search Paths里面添加SDK在本机所在的路径,路径从Users开始),如图:

3) 添加依赖库(Xcode 7 下 *.dylib 库后缀名更改为 *.tbd ),请确保已添加以下 依赖库:

```js
MediaPlayer.framework,
WebKit.framework,
libsqlite3.dylib
```

4) 设置 Other Linker flags

在 Other Linker Flags 中添加 –ObjC,如图(注意:如果项目中加载多个静态库有冲突,并使用了-force_load 的,不能添加-ObjC,且相 应此库也需要加入 force_load,对应路径需要指定到 VideoPlsCytronSDK.framework/VideoPlsCytronSDK.h):

4. 引入头文件

1)打开*AppDelegate.m(*代表你的工程名字)导入头文件:

  #import <VideoPlsCytronSDK/VideoPlsCytronSDK.h>
  在didFinishLaunchingWithOptions方法中调用`VideoPlsCytronSDK.h`的 `setAppKey`方法来设置相应`appkey`,代码如下:

  - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
  // "Nktcz4C5-" 此处替换为自己的APPKEY
  [VideoPlsCytronSDK setAppKey:@"Nktcz4C5-"]; return YES;
  }

2)添加实现代码

  在需要用到互动层的地方添加头文件:
  #import < VideoPlsCytronSDK/VPCytronView.h>
  #import < VideoPlsCytronSDK/VPCytronNotificationNameSet.h>

  在播放器层上面添加 VPCytronView 代码如下:
  VPCytronView cytronView = [[VPCytronView alloc] initWithFrame:player.view.boun ds videoIdentifier:identifier videoType:videotype videoTitle:@”titleString” isLive:NO];
  [self.player.view addSubview: cytronView];

  接着,设置互动层显示区域,代码如下所示:
  (注:frame 与播放器实际位置一致,videoRect 与视频实际显示区域一致,isFullScreen 控制 全屏小、窗口,全屏显示互动。参数根据需要自行调整,可参考头文件)
  [self. cytronView updateFrame:self.view.bounds videoRect:self.view.bounds isFullScreen:YES];

  然后,播放点播视频时必须开启一个计时器持续传递给互动层当前的播放时间传 递时间单位为毫秒(若为秒请自行转换),直播时使用 MQTT 所以不需要设置, 代码如下:

  self.playtimer = [NSTimer scheduledTimerWithTimeInterval:0.03 target:self selector:@selector(updateCurrentTime) userInfo:nil repeats:YES];

  updateCurrentTime 方法里设置时间,代码如下:
  -(void)updateCurrentTime {
  NSTimeInterval time = self. player.currentPlaybackTime * 1000;
  [self. cytronView updateCurrentPlaybackTime:time];
  }

  最后,调用 startLoading 方法,如下: (注:所有参数必须放在 startLoading 之前设置)
  [cytronView startLoading];
  当接收到 VPCytronLoadCompleteNotification 的通知时表示互动层加载完 成,可以开始显示互动。当接收到 VPCytronViewLoadErrorNotification 通 知时,说明互动层加载失败,请根据错误信息,自行查找原因。 播放结束后,需调用 stop 方法来确保内存能够正确释放。
  [cytronView stop];
5.注意事项
  1. videoIdentifier参数为视频的标识(原url),可以用url作为参数 或 使用拼接 ID的方式来识别(前提为与pc对接并通过)。
  2.文档中的代码仅供参考,实际参数请根据项目自行配置。
  3.互动层会向下层 view 发放点击手势,不用担心控制器界面会被阻挡手势。
  4.请将互动层置于合适位置以防阻挡手势。
  5.最佳位置为加载控制栏的下方,并且于手势层的上方,请不要将 cytronView 放 入包含手势操作的 View 中。
  6.请使用 Xcode5 及以上版本,SDK 目前支持系统为 iOS7 以上。
  7.旧版本互动层 SDK 只可以用旧版本 video++后台打点,Cytron 是新版本互 动层,新版本 SDK 只可以用新版本 videoOS 后台打点,新版本与旧版本后台 热点数据不互通。

VideoOS 安卓互动层对接

此文档针对于自己有播放器的客户完成互动层的对接

VideoOS 互动层添加方法:

1) 登录videojj开发者帐号并添加APP,获得自己的AppKey

2) 将下载的SDK引入到自己的项目中(sdk里面包含了jar+res两个文件夹,其中jar文件加里面是sdk的jar包,res文件夹下是包含了sdk用到的资源文件。)

VideoOS 互动层接入:

1) 将下载好的SDK复制粘贴到AS项目/app/libs文件加下,并Add as a Library

2) 在AS项目/app/build.gradle文件的dependencies节点下添加Fresco的配置:

    dependencies{
    compile 'com.facebook.fresco:fresco:1.1.0'
    compile 'com.facebook.fresco:animated-gif:1.1.0'
   }

3) 添加相关权限:

    <uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

VideoOS 互动层使用方法(Video++互动层只有在横屏全屏的状态下才显示):

初始化VideoOsView组件:

在android xml布局文件中使用(注意需要引入正确的包名)

    <cn.com.videopls.venvy.entry.VideoOsView

    android:id="@+id/video"

    android:layout_width="match_parent"

    android:layout_height="match_parent" />

然后在相应的页面(如Activity中)初始化一个VideoOsView对象mVenvyView

    mVenvyView = (VideoOsView) findViewById(R.id.video);

VideoOsView组件初始化完毕后就可以对该组件进行配置了:

    // 初始化Fresco
    // 如果您的项目中已经对Fresco进行了初始化,请跳过此步骤
    Fresco.initialize(this);

    // 设置屏幕大小
    mVenvyView.setScreenSize(width,height);

    // 设置播放器大小,显示宽高
     mVenvyView.setVideoRenderView(width, height);

    // 设置AppKey和包名,可以在我们的官网进行注册
    mVenvyView.setKey("Hy8VOnRMx", "cn.com.videojj");

    // 设置视频地址
    mVenvyView
.setVideoPath("http://7xr5j6.com1.z0.glb.clouddn.com/hunantv0129.mp4?v=1021");// 视频地址

    // 设置监听函数
    mVenvyView.setCurrentListener(new onCurrentListener() {



        @Override

        public long getCurrentPosition() {

           try {

                if (mVideoView != null)

                    return mVideoView.getCurrentPosition();

                 else

                    return -1;

                 } catch (Exception e) {

                 // TODO: handle exception


               }

              return -1;

            }});

    // 启动Video++互动层
    mVenvyView.start();

    // 在退出播放器或者Activity销毁的方法中,可以调用如下方法
    mVenvyView.destroy();