外观
视频转码
本文介绍如何使用米卡云转码系统进行视频转码。
功能概述
视频转码是系统的核心功能,支持将各种格式的视频文件转换为 M3U8/HLS 流媒体格式,适合在线播放和分发。
支持的输入格式
根据 config.yaml 配置,支持以下视频格式:
| 格式 | 扩展名 | 说明 |
|---|---|---|
| MP4 | .mp4 | 最常用的视频格式 |
| AVI | .avi | Windows 常用格式 |
| MKV | .mkv | 高清视频常用格式 |
| MOV | .mov | Apple 视频格式 |
| WMV | .wmv | Windows Media 格式 |
| FLV | .flv | Flash 视频格式 |
| WebM | .webm | 网页视频格式 |
| M4V | .m4v | iTunes 视频格式 |
| 3GP | .3gp | 移动设备格式 |
输出格式
- M3U8/HLS:HTTP Live Streaming 格式,支持自适应码率
- TS 分片:视频被切割为多个 TS 文件,便于流式传输
上传视频
Web 界面上传
- 登录管理后台
- 进入 视频管理
- 点击 上传视频 按钮
- 点击或拖拽文件到上传区域
- 填写视频标题和分类
- 等待上传完成
上传限制
根据 config.yaml 中的 upload 配置:
| 配置项 | 默认值 | 说明 |
|---|---|---|
| 最大文件大小 | 500 MB | max_size: 524288000 |
| 分片大小 | 5 MB | chunk_size: 5242880 |
| 临时目录 | ../app/public/temp | 上传临时文件存放位置 |
| 存储目录 | ../app/public/videos | 视频最终存储位置 |
转码设置
在 系统设置 → 转码设置 中配置转码参数。
分辨率设置
| 选项 | 说明 |
|---|---|
| 原画 | 保持原始分辨率 |
| 1080P | 1920×1080 全高清 |
| 720P | 1280×720 高清(默认) |
| 480P | 854×480 标清 |
| 360P | 640×360 流畅 |
码率设置
| 模式 | 说明 |
|---|---|
| 自动 | 根据分辨率自动计算 |
| 手动 | 自定义码率值(如 2000k) |
HLS 切片设置
| 配置项 | 默认值 | 说明 |
|---|---|---|
| 切片时长 | 10 秒 | ts_duration: 10 |
| 截图数量 | 5 张 | 自动生成的视频截图数量 |
其他选项
| 选项 | 说明 |
|---|---|
| 保留原文件 | 转码后是否保留上传的原始视频文件 |
| 强制切片 | 对已有MP4直接进行HLS切片 |
| 自动转码 | 上传后自动加入转码队列 |
转码队列
队列操作
在视频管理页面,可以进行以下队列操作:
- 启动队列:开始处理等待中的转码任务
- 停止队列:暂停转码队列处理
- 批量转码:选择多个视频一键加入转码队列
任务状态
| 状态 | 说明 |
|---|---|
| 待转码 | 视频已上传,等待转码 |
| 转码中 | 正在进行转码处理 |
| 已完成 | 转码成功,可以播放 |
| 失败 | 转码失败,请查看日志 |
并发控制
在 config.yaml 中配置:
yaml
ffmpeg:
threads: 4 # FFmpeg 线程数
preset: medium # 编码预设
crf: 23 # 质量参数 (0-51, 越小质量越好)视频管理
视频列表
管理后台提供完整的视频管理功能:
- 搜索:按关键词搜索视频标题
- 分类筛选:按视频分类筛选
- 状态筛选:按转码状态筛选
- 批量操作:批量删除、批量转码、批量修改分类
视频操作
| 操作 | 说明 |
|---|---|
| 编辑 | 修改视频标题、分类、封面等信息 |
| 转码 | 将视频加入转码队列 |
| 切片 | 对已转码的MP4进行HLS切片 |
| 删除 | 移入回收站(可恢复) |
| 导出 | 导出 M3U8 播放地址 |
回收站
删除的视频会先移入回收站:
- 恢复:从回收站恢复视频
- 永久删除:彻底删除视频文件
- 清空回收站:删除回收站中的所有视频
视频分类
分类管理
在 视频管理 → 分类管理 中管理分类:
- 点击 新增分类
- 填写分类名称
- 设置排序权重
- 保存
批量修改分类
- 在视频列表中勾选视频
- 点击 批量操作 → 修改分类
- 选择目标分类
- 确认修改
播放地址
获取 M3U8 地址
转码完成后,可通过以下方式获取播放地址:
- 在视频列表中点击 复制链接
- 使用 导出 M3U8 功能批量导出
播放地址格式
http://你的域名/public/videos/{video_id}/index.m3u8高级功能
去片头片尾
支持批量去除视频片头片尾:
- 选择要处理的视频
- 设置裁剪片头时长(秒)
- 设置裁剪片尾时长(秒)
- 开始处理
去 Logo
支持去除视频中的水印/Logo:
- 选择要处理的视频
- 设置 Logo 位置(x, y, 宽度, 高度)
- 预览效果
- 应用去 Logo
切片伪装
将 TS 切片伪装成图片格式,防止被识别:
| 格式 | 说明 |
|---|---|
| JPG | 伪装为 JPEG 图片 |
| PNG | 伪装为 PNG 图片 |
| GIF | 伪装为 GIF 图片 |
常见问题
Q: 转码速度很慢?
- 检查服务器 CPU 性能
- 调整 FFmpeg 线程数
- 使用更快的预设(如
fast或veryfast) - 降低输出分辨率
Q: 转码后画质差?
- 降低 CRF 值(如从 23 改为 18-20)
- 提高输出码率
- 选择更高的分辨率
- 检查源视频质量
Q: 转码失败?
- 检查 FFmpeg 是否正确安装
- 查看转码日志获取错误信息
- 检查磁盘空间是否充足
- 确认视频文件格式是否支持