1 产品简介
七牛短视频 SDK,方便开发者快速实现短视频拍摄、剪辑、编辑、合成、分发功能。我们提供 80+ 功能供开发使用,申请 0 元体验可联系销售或填写表单获得产品试用权限。
2 多版本功能分布
短视频 SDK 主要区分基础版、进阶版、专业版 3 个版本,不同版本的功能区别见如下表格
功能 | 子功能 | 基础版 | 进阶版 | 专业版 |
---|---|---|---|---|
用户交互界面 | 提供了一套完整的UI交互源码,可复用或自定义 | ✓ | ✓ | ✓ |
视频拍摄录制 | 摄像头采集 | ✓ | ✓ | ✓ |
麦克风采集 | ✓ | ✓ | ✓ | |
视频采集参数定义 支持最高 1080P 拍摄,支持自定义视频采集源、采集画面的分辨率、采集画面的长宽比等参数 |
✓ | ✓ | ✓ | |
音频采集参数定义 支持自定义音频采集源、音频格式、音频声道、音频采样率等参数 |
✓ | ✓ | ✓ | |
视频编码参数定义 支持自定义编码视频的码率、帧率、分辨率、H.264 编码方式等参数 |
✓ | ✓ | ✓ | |
音频编码参数定义 支持自定义编码音频的码率、采样率、声道数、AAC 编码方式等参数 |
✓ | ✓ | ✓ | |
拍摄时长设置 支持设置实际拍摄过程中的最大、最小拍摄时长 |
✓ | ✓ | ✓ | |
摄像头切换 支持切换前后摄像头进行拍摄 |
✓ | ✓ | ✓ | |
闪光灯设置 支持开关闪光灯用于拍摄时的补光 |
✓ | ✓ | ✓ | |
曝光调节 支持调整曝光度参数 |
✓ | ✓ | ✓ | |
画面对焦 支持手动对焦和自动对焦 |
✓ | ✓ | ✓ | |
焦距调节 支持手动调节画面焦距进行放大、缩小 |
✓ | ✓ | ✓ | |
画面镜像 支持设置是否镜像预览画面和编码画面 |
✓ | ✓ | ✓ | |
横屏拍摄 支持根据设备的方向自动确定竖屏、横屏拍摄 |
✓ | ✓ | ✓ | |
分段拍摄 支持拍摄过程中实现连续多次拍摄、断点续拍、回删 |
✓ | ✓ | ✓ | |
变速拍摄 支持设置拍摄时的快/慢速率,目前支持 5 种拍摄速率 |
✗ | ✓ | ✓ | |
音频录制 支持纯音频录制 |
✓ | ✓ | ✓ | |
音频录制(图片特效) 支持音频录制的过程中,增加图片旋转效果,输出为 mp4 文件 |
✗ | ✓ | ✓ | |
背景音乐 支持拍摄前选择本地文件作为背景音乐 |
✗ | ✓ | ✓ | |
实时截图 支持拍摄时实时截图拍照保存到本地 |
✓ | ✓ | ✓ | |
静音功能 支持静音拍摄 |
✓ | ✓ | ✓ | |
分屏拍摄(合拍) 可以根据素材视频(或图片)进行合拍,生成双画面视频 |
✗ | ✗ | ✓ | |
屏幕录制(全屏) / View 录制(局部) 支持对整个屏幕或部分区域进行录制,实现整体或局部的录制效果 |
✗ | ✓ 全屏 |
✓ 全屏+局部 |
|
外部导入 支持外部音视频裸数据导入,生成 mp4 文件 |
✗ | ✗ | ✓ | |
前后台切换 根据监听到 Application 的前后台状态自动停止和开始录制视频,默认从后台进入前台自动开始录制 |
✓ | ✓ | ✓ | |
实时水印 支持拍摄时添加静态水印,支持设置水印位置、大小、透明度,设置作用时间范围 |
✗ | ✓ | ✓ | |
实时美颜 支持拍摄时启用美颜功能,支持设置美颜、美白、红润 3 种效果并调节强度 |
✓ | ✓ | ✓ | |
实时滤镜 支持拍摄时启用滤镜功能,支持自由调节多种滤镜效果(33 种) |
✓ 提供 10 种滤镜效果 |
✓ 提供 10 种滤镜效果 |
✓ 提供 33 种滤镜效果 |
|
实时预览 支持实时本地预览 |
✓ | ✓ | ✓ | |
草稿箱 支持将当前录制的片段与设置项存入草稿箱 |
✓ | ✓ | ✓ | |
视频剪辑合成 | 视频导入 支持本地视频快速导入后编辑 |
✓ | ✓ | ✓ |
编辑预览 支持编辑时实时预览本地效果 |
✓ | ✓ | ✓ | |
视频剪辑 支持按照给定的时间范围生成一个 mp4 文件 |
✓ | ✓ | ✓ | |
视频剪裁 支持按照视频画面大小(原比例、指定区域)精确裁剪视频生成一个 mp4 文件 |
✗ | ✗ | ✓ | |
视频转码 支持按照给定的目标旋转角度、码率、帧率等参数,生成一个 mp4 文件 |
✓ | ✓ | ✓ | |
视频拼接 基础功能:支持设置多个视频按照前后顺序导入拼接生成一个 mp4 文件 高级功能:支持设置多个视频的时间范围按照前后顺序导入拼接生成一个 mp4 文件(先分割后拼接) |
✗ | ✓ 基础功能 |
✓ 基础功能 + 高级功能 |
|
视频合成 支持设置多个视频合并为一个视频,支持设置每一个视频的位置、大小、开始播放时间等 |
✗ | ✗ | ✓ | |
GIF动画 支持基于多个图片或视频直接导出GIF动图 |
✗ | ✓ | ✓ | |
图片拼接 支持设置多个图片按照前后顺序导入拼接生成一个 mp4 文件 |
✗ | ✓ | ✓ | |
图片 & GIF 图 & 视频混拼 支持设置多个视频和图片按照前后顺序导入拼接生成一个 mp4 文件 |
✗ | ✗ | ✓ | |
视频编辑处理 | 滤镜特效 支持给视频文件添加滤镜效果,默认支持33种滤镜效果 |
✗ | ✓ 提供 10 种滤镜效果 |
✓ 提供 33 种滤镜效果 |
贴纸特效 支持给视频文件添加静态贴纸,并且能够自由设置贴纸大小、位置、旋转角度,支持设置特效显示的时间范围,可以自定义素材或使用供应商提供的收费素材 |
✗ | ✓ | ✓ | |
水印特效 支持给视频文件添加静态、动态水印,并且能够自由设置水印的大小、位置、透明度、旋转角度,支持设置特效显示的时间范围,可以自定义素材或使用供应商提供的收费素材 |
✗ | ✓ | ✓ | |
时间特效 支持对视频文件进行整体变速、分段变速,支持5种变速效果(极慢、慢、正常、快、极快) 支持1种倒放操作(即时光倒流特效) |
✗ | ✓ 变速 |
✓ 变速+倒序 |
|
字幕特效 支持给视频文件添加文字特效,支持设置文字内容,字体大小,字体颜色,透明度,旋转,位置等,支持设置特效显示的时间范围 |
✗ | ✓ | ✓ | |
MV特效 支持给视频文件添加 MV 效果,默认提供 4 种 MV 特效,MV 特效素材需要客户自行按要求制作 |
✗ | ✗ | ✓ | |
涂鸦特效 支持画笔尺寸和颜色调整,支持设置特效显示的时间范围 |
✗ | ✓ | ✓ | |
基础转场 支持在视频图片片段之间,增加淡入淡出效果 |
✗ | ✓ | ✓ | |
过场字幕 支持在视频之间增加转场字幕,支持定义转场字幕的背景色、持续时间、支持文字和图片特效,支持旋转、放大、位置移动、淡入淡出 4 种效果 |
✗ | ✗ | ✓ | |
混音特效 支持给视频文件添加多个背景音乐,支持调整视频原声、背景音乐音量,支持设置多个背景音乐有效时间区域 |
✗ | ✓ 支持单音频混音 |
✓ 支持多音频混音 |
|
旋转特效 支持设置视频左右上下旋转,实时预览旋转效果 |
✗ | ✓ | ✓ | |
视频播放 | 播放器SDK | ✓ | ✓ | ✓ |
上传分发 | 视频上传 | ✓ | ✓ | ✓ |
断点续传 | ✓ | ✓ | ✓ | |
上传加速 | ✓ | ✓ | ✓ | |
接口扩展 | 扩展接口支持对接第三方美颜特效等增值能力 | ✓ | ✓ | ✓ |
增值能力 (需要客户单独选购,在视频拍摄或视频编辑阶段增加) |
高级美颜 拍摄设置大眼、瘦脸、V脸、下巴调整、短脸、小鼻效果,并支持调节强度 |
✓ | ✓ | ✓ |
人脸贴纸 支持人脸识别,进行人脸 2D、3D 贴纸操作 |
✓ | ✓ | ✓ | |
手势识别 可以对拍摄的人物的特定手势进行识别,配合其他特效 |
✓ | ✓ | ✓ | |
AR 特效 支持拍摄时设置AR特效 |
✓ | ✓ | ✓ | |
变声混响 拍摄时对录制的人音进行变声(如萝莉、大叔)和混响效果等操作(如KTV、会堂) |
✓ | ✓ | ✓ | |
类抖音特效 滤镜效果,支持抖动、幻觉、灵魂出窍等数种抖音特效 |
✓ | ✓ | ✓ | |
背景抠图 将画面中的绿色元素(比如纯绿背景)抠除,替换成其他的元素,比如动态背景/PPT 等 |
✓ | ✓ | ✓ |
3 设备以及系统要求
- 设备要求:搭载 iOS 系统的设备
- 系统要求:iOS 8.0 及其以上
4 安装方法
CocoaPods 是针对 Objective-C 的依赖管理工具,它能够将使用类似 PLShortVideoKit 的第三方库的安装过程变得非常简单和自动化,你能够用下面的命令来安装它:
$ sudo gem install cocoapods
4.1 Podfile
为了使用 CoacoaPods 集成 PLShortVideoKit 到你的 Xcode 工程当中,你需要编写你的 Podfile
4.2 专业版安装
如果你购买的是七牛专业版本的短视频 SDK,请使用下面的安装方式:
4.2.1 Podfile 添加专业版
target 'TargetName' do
pod 'PLShortVideoKit'
end
4.2.2 Warnings
在使用了七牛的推流或连麦 SDK 的工程中,集成该短视频 SDK 会出现美颜库导致的符号冲突问题 duplicate symbol OBJC_CLASS MuseProcessor,解决方法如下
target 'TargetName' do
pod 'PLShortVideoKit/ex-libMuseProcessor'
end
4.2.3 运行 pod
然后,运行如下的命令:
$ pod install
4.3 进阶版安装
如果你购买的是七牛进阶版本的短视频 SDK,请使用下面的安装方式:
4.3.1 Podfile 添加进阶版
target 'TargetName' do
pod 'PLShortVideoKit', :podspec => 'https://raw.githubusercontent.com/pili-engineering/PLShortVideoKit/master/PLShortVideoKit-Advanced.podspec'
end
4.3.2 Warnings
在使用了七牛的推流或连麦 SDK 的工程中,集成该短视频 SDK 会出现美颜库导致的符号冲突问题 duplicate symbol OBJC_CLASS MuseProcessor,解决方法如下
target 'TargetName' do
pod 'PLShortVideoKit/ex-libMuseProcessor', :podspec => 'https://raw.githubusercontent.com/pili-engineering/PLShortVideoKit/master/PLShortVideoKit-Advanced.podspec'
end
4.3.3 运行 pod
然后,运行如下的命令:
$ pod install
4.4 基础版安装
如果你购买的是七牛基础版本的短视频 SDK,请使用下面的安装方式:
4.4.1 Podfile 添加基础版
target 'TargetName' do
pod 'PLShortVideoKit', :podspec => 'https://raw.githubusercontent.com/pili-engineering/PLShortVideoKit/master/PLShortVideoKit-Basic.podspec'
end
4.4.2 Warnings
在使用了七牛的推流或连麦 SDK 的工程中,集成该短视频 SDK 会出现美颜库导致的符号冲突问题 duplicate symbol OBJC_CLASS MuseProcessor,解决方法如下
target 'TargetName' do
pod 'PLShortVideoKit/ex-libMuseProcessor', :podspec => 'https://raw.githubusercontent.com/pili-engineering/PLShortVideoKit/master/PLShortVideoKit-Basic.podspec'
end
4.4.3 运行 pod
然后,运行如下的命令:
$ pod install
4.5 Warning
- Podfile 中添加 PLShortVideoKit 时如果不指定 podspec,默认安装的是 专业版 的短视频 SDK
- 如果你安装的七牛短视频 SDK 版本和你购买的七牛短视频 SDK 版本不一致,比如购买的基础版,但是使用的是进阶版或者专业版的短视频 SDK,会引起你的 App 产生 crash 。请一定安装和你购买匹配的短视频 SDK 版本
5 PLShortVideoKit 文档
请参考开发者中心文档:PLShortVideoKit 文档
6 声明
本短视频 SDK 需授权方可使用,可通过 400-808-9176 转 2 号线联系七牛商务咨询,或者 通过工单 联系七牛的技术支持。
7 反馈及意见
当你遇到任何问题时,可以通过在 GitHub 的 repo 提交 issues 来反馈问题,请尽可能的描述清楚遇到的问题,如果有错误信息也一同附带,并且在 Labels 中指明类型为 bug 或者其他。