video 视频收藏我的收藏
收藏
我的收藏
手势响应
指定相应手势属性后,video 支持以下行为表现。
亮度与音量
开启亮度与音量手势后,以视频组件横向中心点为分界线,行为见下表:
滑动区域 | 表现 | 行为 |
左侧 | 调节亮度 | 上滑增大,下滑减小 |
右侧 | 调节音量 | 上滑增大,下滑减小 |
指示控件消失时机:松手 1s 无操作消失。
播放进度
开启进度手势后,左右滑动屏幕,调节播放进度(右滑增大、左滑减小)。指示控件消失时机:松手后时间提示立即消失。
后台小窗播放
关键特征 | 描述 |
小窗时机 | 宿主退出后台(支持移动小窗到任意位置) |
退后台场景 | 跳转到其他 app、点击 home 键退到后台、打开最近任务列表 |
不包含场景 | 点击小程序关闭按钮 |
小窗优先级 | 多个 video 开启后台小窗播放时,后台小窗的 video 以播放次序优先,autoplay 情况播放次序不确定。 |
支持格式
抖音支持的视频封装格式和编码格式如下所示。其中封装格式建议使用mp4,编码格式建议优先使用h265并兜底使用h264,可通过tt.canIUseVideoFormat判断当前设备是否支持h265。使用建议格式可获得更好播放性能。
封装格式
格式 | iOS | Android |
mp4 | √ | √ |
mpd | √ | √ |
mov | √ | √ |
m4v | X | X |
3gp | X | X |
avi | √ | √ |
m3u8 | √ | √ |
flv | √ | √ |
webm | X | X |
mpegts | X | √ |
编码格式
格式 | iOS | Android |
h264(AVC) | √ | √ |
h265(HEVC) | √ | √ |
h263 | X | √ |
mpeg4 | X | √ |
mjpeg | √ | X |
常见问题(FAQ)
Q1:播放视频时,APP 为何明显卡顿或出现闪退?
A:请先检查是否在页面中同时渲染多个视频组件。由于视频播放会占用比较多的资源,建议不要同时渲染超过3个以上的视频,如有需要,可以先用图片或其他内容替代,等到需要播放时,再渲染视频组件。
Q2:video 是否支持配置 referer 请求头规则?
Q3:Android 上为什么会出现无法在视频上覆盖其他元素?
A:Android 上在内核环境没有准备好时(内核覆盖率约 99%),无法使用同层渲染的 video,会使用兜底方案的 video,此时可能出现视频错位,同时也无法在 video 上覆盖其他元素,可以用 tt.canIPutStuffOverComponent 检查是否是此场景。iOS 上不会出现这个问题。
Q4:为什么通过组件属性设置了显示控 件,但是控件没有显示出来?
A:video 组件过小时不会显示控件(
width < 250 || height < 140
时)。
Q5:video 支持设置 border-radius 吗?
A:真机上的 video 从基础库 2.87.0 开始支持 border-radius。
Q6:控制台 -> 反馈中心中反馈截图视频位置出现的水印是什么?
Q7:为什么播放m3u8格式视频时拖动播放进度条会一直处于加载状态?
A:请确保您的视频服务器支持视频分片HTTP Range分段下载。如短期内无法支持,请联系平台处理。