@lazycatcloud/vue-media-preview 0.1.4 → 0.1.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -106,7 +106,17 @@ function resolveAnchor(media: PreviewMedia): PreviewAnchor {
106
106
 
107
107
  ### 视频播放
108
108
 
109
- `videoLoader(video, media, reportError, reportDuration)` 可由宿主绑定 HLS 等传输,返回释放函数。宿主可通过 `reportDuration(seconds)` 回传点播清单总时长;有效的正数优先于浏览器时长,传入 0 或无效值恢复使用浏览器时长。时间、拖动定位及缓冲比例共用这一时长,播放时间限制在 0 到总时长之间。切源和重试清除旧时长,已释放源的延迟回调不生效。仅当前可加载视频绑定,离开或卸载立即释放;重试重新绑定。默认使用原生视频地址。组件库不依赖 HLS 播放库。现有三参数 loader 可继续使用。
109
+ `videoLoader(video, media, reportError, reportDuration, reportQuality)` 可由宿主绑定 HLS 等传输,返回释放函数。宿主可通过 `reportDuration(seconds)` 回传点播清单总时长;有效的正数优先于浏览器时长,传入 0 或无效值恢复使用浏览器时长。时间、拖动定位及缓冲比例共用这一时长,播放时间限制在 0 到总时长之间。切源和重试清除旧时长,已释放源的延迟回调不生效。仅当前可加载视频绑定,离开或卸载立即释放;重试重新绑定。默认使用原生视频地址。组件库不依赖 HLS 播放库。现有三参数 / 四参数 loader 可继续使用。
110
+
111
+ `reportQuality(state)` 接入通用清晰度菜单。无需画质展示时上报 `{ kind: "unavailable" }`;需要展示但不可切换时上报 `{ kind: "fixed", label }`(相册无分辨率信息时使用「原画质」);可用时上报 `{ kind: "available", options: [{ id, label }], selectedId, activeId, select(id) }`。
112
+
113
+ 选项、文案、默认档位及传输操作由宿主决定,`selectedId` 必须对应一个选项;`activeId` 为当前生效的选项,所选项尚未生效时用空字符串。固定画质和单个选项也使用可点击展开的菜单,展开后显示唯一的当前选项;点击当前项只收起菜单,不调用切换。多个选项可切换档位;可切换时已选与实际档位不同则显示切换中。宿主在用户选择和实际切流后分别上报新状态;组件不推测切流成功。切页、关闭及重试清空菜单,旧会话的上报和选择操作均失效。
114
+
115
+ 画质选择同步替换视频源时,组件在释放旧源前复制当前可见帧(不暂停视频),覆盖到新源完成解码和定位并可呈现画面后再移除;暂停视频同样适用。相同源内切档继续播放,不叠加静态帧。连续切源沿用已保留帧,错误、切页及卸载会释放快照和待执行回调。
116
+
117
+ 菜单属于原有控制栏,随工具栏隐藏,支持点击外部及 Escape 收起;原生系统视频全屏仍由浏览器控制。
118
+
119
+ `appearance="album"` 沿用相册旧版样式:PC 菜单在按钮上方居中,当前项以 60% 不透明度标识;手机按钮浮在进度条右上方 8px,使用半透明黑色背景、4px 圆角及紧凑选项,不占进度条宽度。手机菜单跟随控制栏和业务底栏的位置,标准全屏时按钮位于底部 60px(另加宿主安全区)。相册专用样式集中在 `styles/album/video-quality.css`。
110
120
 
111
121
  时间显示向下取整到秒,使用补零的“分:秒”,例如 2.99 秒显示 `00:02`,3600 秒显示 `60:00`;小数时长仍保留用于进度计算。
112
122
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lazycatcloud/vue-media-preview",
3
- "version": "0.1.4",
3
+ "version": "0.1.5",
4
4
  "description": "Vue 3 canvas media preview with shared element transitions, gestures, and virtual paging.",
5
5
  "private": false,
6
6
  "type": "module",