简介

项目需要在app内添加很火的小视频,比如抖音,微视,快手等吸引用户,提高留存,做的效果也是跟上面的精品一样,可以上下切换小视频,可以点赞,关注,小红心特效等等

遇到的问题

1.上下滑动控件遇到的坑
2.上下切换使用的框架调研
3.切换小视频无法秒播,延迟高,体验差
4.ijk无法实现真正预加载,尝试了多种方案

实现的方式

1.上下滑动控件遇到的坑
最开始使用了阿里自定义控件,但是具有严重的适配问题,强烈建议不要使用,已经有好几年不维护了,我这里推荐使用VerticalViewPager,查看源码对比ViewPager可以发现是在ViewPager的源码上做了改动,经测试适配性很好

2.上下切换使用的框架调研
网上有很多例子,使用RecycleView+Fragment实现上下切换进行播放,但是这个方案感觉还不太成熟,真正在你使用该方案实现的过程中会有很多人,并且抖音也没有使用该方案,精品使用的是ViewPager+fragment,所以使用了ViewPager+fragment

3.切换小视频无法秒播,延迟高,体验差
小视频播放必须要做到秒播,要不在体验上就会很差,切换一个视频,卡一秒或者好几秒这个无法接受的,所以必须要做到秒播,要实现秒播,最优的方案就是预加载,这里的预加载不是指对同一个视频边对播放边下载,类似于缓冲条,这里的预加载是指预加载另外一个视频。其实只要注意观察,抖音,快手,微视等app,在他们播放一个视频的时候,从手机顶部的网速可以看到,下载流量瞬间到达几M每秒,这其实就是预加载下一个短视频,加载完了,做暂停处理而已。等到用户滑动到当前视频的时候,直接进行播放,避免网络请求的延迟等各种问题,从而实现秒播。

4.ijk无法实现真正预加载,尝试了多种方案
这里说一下我的解决方案:
最开始尝试的方案是
第一种方案:使用ijk进行播放,通过各种个样的参数调优,比如减少网络探测时间等等
能设置的参数都设置了,但是无法做到秒播,ijk无法做到预加载另外一个视频,即ijk无法同时播放两个不同的视频,在开发时间不允许的情况下直接放弃该方案(好想有个时间去改一下C源码,呜呜)

第二方案:
使用七牛的播放sdk,该方案跟ijk效果一样,没有太多的改变,无法实现秒播,也无法预加载另外一个视频(备注这个接触不多,也有可能是误判)

第三方案:
使用了阿里播放sdk,并且使用视频预加载,短视频本身也存放在阿里云上面,并且阿里播放sdk也支持了预加载的功能,所以最终使用了该方案

总结

关于增加小视频(类抖音,快手,微视)模块的总结相关推荐

  1. 快手上热门的小技巧,抖音快手直播5个上热门技巧

    2020下半年,随着直播带货行业发展势头越来越猛,各大电商平台纷纷涉足直播电商,普通人也跃跃欲试想要加入直播带货,那么普通人该如何选择直播平台呢,这要根据每个人的自身条件,不管做抖音还是快手,初始最重 ...

  2. 手机端小视频(抖音、快手、火山小视频)的视频下载分析

    抖音 1. 获取播放url的json数据 请求的url https://aweme-hl.snssdk.com/aweme/v1/feed/ 请求的方式 get headers headers = { ...

  3. 短视频免费去水印教程,支持抖音快手微视多个短视频平台!

    短视频去水印就选牛逼去水印,一键去除各大短视频平台视频水印,让视频更干净!当我们在短视频平台里面刷到一些好看的有意思的视频,好想保存,偏偏又有难看的水印.有没有办法能够直接把水印干掉呢?当然有!!!快 ...

  4. 对当下很火的两大短视频平台 抖音 和 微视进行竞品分析

    01 分析目的 本文期望通过对比抖音微视的核心功能,体会功能设计和产品定位以及商业模式之间的关系,并结合个人体验提出若干改进建议. 体验版本:抖音11.3.0:微视 6.9.0.588 02 竞品背景 ...

  5. 微信公众号开发 短视频 去水印 抖音 快手

    学习QQ:870422471 实现内容: 1.用户模块 2.短视频解析去水印 3.回复模板消息/被动回复消息 4.小程序视频下载 5.自定义回复 需要材料: 1.微信服务号 2.相同主体小程序 3.商 ...

  6. 微信小程序仿抖音,微视上下滑动整屏切换视频带关注,收藏

    废话不多说直接附代码 wxml <!--index.wxml--> <view class="videoBox"><view class=" ...

  7. 小程序仿微视_微信小程序仿抖音,微视上下滑动整屏切换视频带关注,收藏

    废话不多说直接附代码 wxml 收藏 分享 电话 关闭 @{{item.reallyName}} {{item.workProvince}}{{item.workCity}}{{item.workCo ...

  8. 抖音快手如何快速涨粉技巧整理

    现在的短视频,特别是抖音快手,说白了就是当年微博的内容升级版, 从图文到视频.短视频行业内的大咖都知道,当前做短视频运营,使用王者剪辑这样的自动剪辑工具,自动剪辑原创作品,可以只需要一个人就可以运营同 ...

  9. php征婚段子,婚姻婚礼类阿金短视频脚本段子剧本台词范例抖音快手素材

    原标题:婚姻婚礼类阿金短视频脚本段子剧本台词范例抖音快手素材 征婚 1.发生时间(背景):白天 2.地点:征婚所 3.人物(造型.性格.穿着):我,工作人员 4.起因:我去征婚 5.经过与对话: 我去 ...

最新文章

  1. VTK:Filtering之ProgrammableSource
  2. 【数据结构总结】第八章 排序
  3. 关于JDBC的一些笔记
  4. 阿里巴巴指东打西,PC之后卖盒饭?
  5. 【ES6(2015)】新的声明方式 let、const
  6. Jeecg-Boot 2.1.4 版本发布,基于SpringBoot低代码平台
  7. Python:Python3错误提示TypeError: slice indices must be integers or None or have an __index__ method解决办法
  8. CTF中各种好用的软件以及解密网址合集
  9. JavaScript中的onmouseover事件和onmouseout事件实例
  10. 用Maxima画出一些有趣的图
  11. 考PMP真的有用吗?
  12. 上海电气集团数科总经理程艳:工业互联网赋能集团型企业转型发展
  13. 解决微软Edge浏览器和IE浏览器下载无反应的问题
  14. MAC下 Android签名生成keystore
  15. android的word默认字体大小设置,更改Microsoft Word文档的默认字体大小和样式 | MOS86...
  16. Xilinx ZynqMP Mali-400 MP2
  17. 让Android屏幕不响应任何点击
  18. 大物下学期期末复习笔记
  19. 数据分析--DataFrame(4)
  20. Web前端学习笔记20:Vue_路由_Vue Router_模块化的分类_babel_webpack_Element-UI

热门文章

  1. 牛客练习赛23 B-托米的划分 C++
  2. 低代码开源, 一键设计稿生成代码,帮您解决生产痛点
  3. 服务注册与发现框架discovery源码解析
  4. ca证书 csr_SSL证书CSR文件生成方式及注意事项
  5. c语言button用法,C# Button:按钮控件
  6. 视频监控系统中的流媒体服务器,视频监控系统中的流媒体服务器、直写和全切换三种取流架构方案...
  7. 苹果iOS手机用户有权向苹果公司索赔
  8. Linux上JMeter使用IP欺骗
  9. Threat Intellgence
  10. ubuntu安装vnc,远程链接时出现灰屏,配置文档不对吗