src | string | 无 | 否 | - 要播放的视频资源地址。需要保证 src 和 definition 中有一个为必填,若同时设置了 src 和 definition,definition 优先级高于 src;
- 更新 src 时,会对 src 做校验,需要保证设置的 src 以 'https://'、'ttfile://' 或 'file://' 开头,否则更新 src 会失败;
- 不同的 APP 宿主以及不同的系统对视频格式的支持程度是不一样,请参考文档中支持格式;
- m3u8 格式视频不支持 EXT-X-DISCONTINUITY 标签。
| 1.0.0 |
autoplay | boolean | false | 否 | | 1.0.0 |
poster | string | 无 | 否 | | 1.0.0 |
loop | boolean | false | 否 | | 1.47.0 |
show-fullscreen-btn | boolean | true | 否 | | 1.47.0 |
show-play-btn | boolean | true | 否 | 是否显示播放、暂停、重播按钮,不包括视频封面的播放按钮。 | 1.47.0 |
controls | boolean | true | 否 | | 1.47.0 |
object-fit | enum | contain | 否 | 当视频大小与 video 容器大小不一致时,视频的表现形式。 - contain(包含)
- fill(填充)
- cover(覆盖)
| 1.47.0 |
play-btn-position | enum | center | 否 | | 1.47.0 |
vslide-gesture | boolean | false | 否 | | 2.3.0 |
vslide-gesture-in-fullscreen | boolean | true | 否 | | 2.3.0 |
enable-progress-gesture | boolean | false | 否 | | 2.3.0 |
enable-play-gesture | boolean | false | 否 | | 2.3.0 |
muted | boolean | false | 否 | | 2.4.0 |
show-mute-btn | boolean | false | 否 | | 2.4.0 |
show-playback-rate-btn | boolean | false | 否 | 是否显示倍速控件,仅在全屏时显示。点击倍速控件后可选择倍速,可选值: 0.75/1.0/1.25/1.5/2。 | 2.5.0 |
direction | enum | -90 | 否 | | 2.13.0 |
enable-play-in-background | boolean | false | 否 | video 播放时宿主退出后台后开启小窗播放,iOS 14 及以上版本支持。开启时首次退出后台后给予弹窗提示用户授权,授权完成后可以到小程序「设置」中重设。支持场景见 后台小窗播放。 | 2.16.0 |
signature | Signature | 无 | 否 | | 2.48.0 |
initial-time | number | 0 | 否 | | 2.80.0 |
show-screen-lock-button | boolean | false | 否 | 是否展示锁屏按钮,仅在全屏时展示,锁屏后会锁定播控/手势的操作。 | 2.80.0 |
definition | Definition | 无 | 否 | 清晰度,设置清晰度列表和默认播放的清晰度。切换清晰度按钮仅在全屏时展示,属性说明详见 文档下面的 Definition 类型说明。需要保证 src 和 definition 中有一个为必填,若同时设置了 src 和 definition,definition 优先级高于 src。 | 2.80.0 |
show-progress | boolean | true | 否 | | 2.90.0 |
show-bottom-progress | boolean | true | 否 | | 2.90.0 |
poster-size | string | contain | 否 | 视频的封面图片大小与 video 容器大小不一致时,封面图片的表现形式。 - contain(包含)
- fill(填充)
- cover(覆盖)
| 2.90.0 |
duration-limit | number | | 否 | | 2.90.0 |
bindplay | function | 无 | 否 | | 1.0.0 |
bindpause | function | 无 | 否 | | 1.0.0 |
bindended | function | 无 | 否 | | 1.0.0 |
binderror | function | 无 | 否 | | 1.0.0 |
bindtimeupdate | function | 无 | 否 | 播放进度变化时触发,返回当前播放时间点及视频总时长,单位:秒(s)。`event.detail = { currentTime, duration }`。 | 1.18.0 |
bindprogress | function | 无 | 否 | 视频缓冲进度更新时触发,`event.detail = { buffered }`。其中 buffered 是百分比,取值是 [0, 100] 中的整数,如 buffered 为 50 表示当前视频缓冲了 50%。 | 2.65.0 |
bindfullscreenchange | function | 无 | 否 | 视频进入和退出全屏时触发,`event.detail = { fullScreen, direction}`,其中 direction 仅在 fullScreen 字段为 true 时存在,有效值为 vertical 或 horizontal。 | 1.18.0 |
bindcontrolstoggle | function | 无 | 否 | 切换播放控件显示/隐藏时触发。`event.detail = { show }`。 | 2.90.0 |
bindwaiting | function | 无 | 否 | | 1.47.0 |
bindloadedmetadata | function | 无 | 否 | 视频元数据加载完成时触发。`event.detail = {width, height, duration}`。 | 1.90.0 |
bindseekcomplete | function | 无 | 否 | seek 完成时触发。返回 seek 完成后的播放时间点,单位:秒(s)。`event.detail={position}`。 | 2.11.0 |
bindplaybackratechange | function | 无 | 否 | 视频倍速改变完成时触发。返回改变后的倍速值。`event.detail={playbackRate}`。 | 2.11.0 |
bindmutechange | function | 无 | 否 | 静音状态改变完成时触发。返回当前是否静音。`event.detail={isMuted}`。 | 2.11.0 |
bindcontroltap | function | 无 | 否 | | 2.11.0 |
bindenterbackground | function | 无 | 否 | | 2.16.0 |
bindclosebackground | function | 无 | 否 | | 2.16.0 |
bindleavebackground | function | 无 | 否 | | 2.16.0 |
enable-dark-water-mark | boolean | false | 否 | 是否开启界面暗水印功能,用于视频防盗录场景。暗水印解码效果需要根据实际情况而定。小程序使用了暗水印能力后出现的盗录场景,可以拉客服咨询。 | 2.98.0 |
encrypted-token | string | 无 | 否 | 对视频内容的传输过程进行加密,通过 encrypted-token 设置通用加密(CENC)的解密 key,加密流程见 FFmpeg通用加密,IDE 暂不支持。 | 2.98.0 |
show-casting-button | boolean | false | 否 | 是否显示投屏按钮/菜单,仅在全屏时展示(当前仅支持 Android,iOS 敬请期待)。 | 3.2.0 |
playback-rate-list | Array<number> | [0.75,1.0,1.25,1.5,2.0] | 否 | 配置5个需要展示和可通过API切换的倍速选项。选项数量必须为5个,必选倍速1.0, 2.0,无重复取值,且取值都在合法值之列:0.25, 0.5, 0.75, 1.0, 1.25, 1.5, 1.75, 2, 2.5, 2.75, 3.0。 | 1.0.0 |
bindplaybackratelistchange | function | | 否 | 当传入的 playback-rate-list 属性被修改时触发。 不管设置成功还是失败,都预期返回一个最终被设置到界面上的 playbackRateList。 | 1.0.0 |