更新记录

1.0.0(2026-07-29)

  1. 初版本发布,Android、iOS获取视频封面

平台兼容性

uni-app(5.12)

Vue2 Vue3 Chrome Safari app-vue app-nvue Android Android插件版本 iOS iOS插件版本 鸿蒙
- - × × - - 4.4 1.0.0 12 1.0.0 -
微信小程序 支付宝小程序 抖音小程序 百度小程序 快手小程序 京东小程序 鸿蒙元服务 QQ小程序 飞书小程序 小红书小程序 快应用-华为 快应用-联盟
- - - - - - - - - - - -

hy-videoPoster

视频封面抽取插件,支持从本地视频文件中截取指定时间点的一帧作为封面图片。

平台支持

平台 实现方式 状态
Android MediaMetadataRetriever (Kotlin)
iOS AVAssetImageGenerator (Swift)
鸿蒙 - 🚧 开发中

API

extractVideoFrame(options)

从本地视频文件中提取指定时间点的一帧图片。

参数 (ExtractVideoFrameOptions):

字段 类型 必填 说明
filePath string 本地视频文件路径
timeMs number 截取时间点,单位毫秒
quality number JPEG 压缩质量,0-100,默认 80
success function 成功回调
fail function 失败回调
complete function 完成回调

成功返回 (ExtractVideoFrameResult):

字段 类型 说明
imagePath string 封面图片的本地路径

错误码:

错误码 说明
9020001 视频文件不存在
9020002 视频帧提取失败
9020003 封面图片保存失败

使用示例

import {
  extractVideoFrame
} from '@/uni_modules/hy-videoPoster'

const VIDEO_POSTER_TIME_MS = 0
const VIDEO_POSTER_QUALITY = 50

function extractPosterWithPlugin(videoPath) {
  if (typeof extractVideoFrame !== 'function') {
    return Promise.resolve('')
  }
  return new Promise((resolve) => {
    extractVideoFrame({
      filePath: videoPath,
      timeMs: VIDEO_POSTER_TIME_MS,
      quality: VIDEO_POSTER_QUALITY,
      success: (res) => {
        resolve(String(res?.imagePath || '').trim())
      },
      fail: () => resolve('')
    })
  })
}

开发文档

隐私、权限声明

1. 本插件需要申请的系统权限列表:

2. 本插件采集的数据、发送的服务器地址、以及数据用途说明:

3. 本插件是否包含广告,如包含需详细说明广告表达方式、展示频率:

暂无用户评论。