更新记录

1.0.0(2025-11-05) 下载此版本

完成视频播放器的第一个版本


平台兼容性

uni-app x(4.75)

Chrome Safari Android iOS 鸿蒙 微信小程序
- - - - -

iv-video

基于系统原生播放器组件二次封装的轻量级视频播放器,专为 uni-app X 项目打造。
核心亮点:支持 m3u8 直播拉流

⚠️ 当前仅支持 iOS 端。Android 与 HarmonyOS 版本正在开发中,预计一个月后上线(为了适配 iOS 的 AVPlayer,我可是翻遍了 Apple 文档 😅)。


📦 安装方法

  1. 打开 uni-app 插件市场,搜索并导入插件 iv-video
  2. 导入完成后,建议重新编译项目,以确保组件正确生效。
  3. 本组件遵循 easycom 规范,导入后可直接在页面模板中使用,无需手动 import 或注册 components

🎬 功能特性

  • ✅ 基础视频播放(支持本地/网络视频)
  • m3u8 直播流拉取与播放(iOS 原生 AVPlayer 支持)
  • ✅ 单击:播放 / 暂停
  • ✅ 双击:切换全屏 / 退出全屏
  • ✅ 多种画面填充模式(videoFit
  • ✅ 自动播放模式(autoplay
  • ✅ 循环播放模式(loop

🧩 使用示例

<template>
  <iv-video 
    :videoFit="videoFit" 
    :src="url" 
    width="750rpx" 
    height="421rpx"
  />
</template>

<script setup lang="uts">
import { ref } from 'uts'

const videoFit = ref<string>('contain')
const url = ref<string>('https://test.com/test/test.m3u8')
</script>

📐 videoFit 属性说明

控制视频画面在容器中的显示方式,可选值如下:

说明
contain(默认) 保持宽高比,完整显示视频内容(可能有黑边)
fill 保持宽高比,填满容器
resize 填满容器不保持宽高比

💡 建议根据实际 UI 需求选择合适的填充模式。

📐 autoplay 属性说明

控制视频是否自动播放,可选值如下:

说明
true(默认) 自动播放
false 手动播放

📐 loop 属性说明

控制视频是否循环播放,可选值如下:

说明
true(默认) 循环播放
false

📝 注意事项

  • 仅支持 iOS 真机或模拟器 运行,H5、HarmonyOS 与 Android 暂不可用。
  • src 必须为有效的 m3u8 地址 或标准视频 URL(如 .mp4)。
  • 若播放失败,请检查:
    • 网络权限是否开启
    • m3u8 地址是否可公开访问(无 CORS 或鉴权限制)
    • 是否在 iOS 真机环境下测试(部分功能模拟器表现异常)

🚀 后续计划

  • ✅ Android 端支持(基于 ExoPlayer / MediaPlayer)
  • ✅ HarmonyOS 适配
  • 🎯 增加播放控制栏、加载状态提示、错误回调等增强功能

如有问题或建议,欢迎提交 issue 或联系作者!
祝你开发顺利,直播不卡顿 📡✨

隐私、权限声明

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

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

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

无️⃣

许可协议

MIT协议

暂无用户评论。