IOS视频编辑SDK接入说明

一、名词解释

分辨率:用于计算机视频处理的图像,以水平和垂直方向上所能显示的像素数来表示分辨率。常见视频分辨率的有1080P即1920x1080,720P即1080x720,640x480等。

宽高比:视频分辨率的宽高比,常见的有16:9,4:3,1:1。锐动视频编辑SDK对各宽高比的视频都支持编辑,导出的默认分辨率是640x360,宽高比是16:9。

帧率:每秒的帧数(fps)或者说帧率表示图形处理器处理场时每秒钟能够更新的次数。

码率: 数据传输时单位时间传送的数据位数,一般我们用的单位是kbps即千位每秒。

素材:来自系统相机,其他app,电脑,网络的照片,音乐,视频等。

视频分割: 把视频分割为若干个片段,可用于从视频中截取一个或者多个精彩瞬间,或者删除不喜欢的片段,分割后的多个片段也可以用于重新调整顺序,视频合并等。

视频裁切: 从视频画面中裁切出来仅需要的部分,锐动视频编辑SDK针对手机竖屏拍摄的画面,支持动态调整裁切区域,帮助用户不同时间点选择自己需要的画面。

视频旋转:对视频进行90°,180°,270°旋转,一般用于矫正用户手机上录制的头像横置的视频。

视频镜像:对视频左右镜像。

视频变速:对视频播放速度调整,实现慢镜头或者快镜头效果。

视频配乐:选取本地或者网络音乐作为视频的背景音乐。

视频配音:通过micphone对视频配音。

视频字幕:使用文字标注视频。

视频滤镜:调整视频的画面颜色效果。

视频特效:在视频里面增加特效动画或声音

合并转场:两个视频片段之间的衔接效果。

主题(模版): 应用视频的整体效果方案。

二、XCode集成步骤

(一)、运行环境

sdk支持iOS7.0或更高版本,兼容iPhone、iPad、iPod touch

(二)、 下载并导入SDK

1、申请APPKey 和 APPSecretkey

(1)、 登录http://www.rdsdk.com 注册用户

(2)、 登录注册好的用户

(3)、 进入视频云管理 点击(新增)获取应用的 appkey 、appsecret

2、添加静态库文件和头文件,和资源文件

(1)、直接将 libxpkCoreSdk文件夹下的文件导入工程。

(2)、设置头文件路径:

(3)、设置工程的方向

3、工程设置

添加系统依赖框架

CoreTelephony.framework, MobileCoreServices.framework

CoreGraphics.framework, CoreFoundation.framework,

Foundation.framework,Photos.framework,AssetsLibrart.framework

AVFoundation.framework ,libxml2.2.tbd,libz.1.2.5.tbd,libstdc.tbd

设置photos.frames、CoreFoundation.framework、Foundation.framework的status为Optional; 设置Https协议和Enable Bitcode

升级到10.0以后的系统得在info.plist中添加如下key

(三)、初始化SDK

注意:初始化之前请确定是否添加了libxpkCoreSdk文件夹下的所有文件

1、引入头文件

#import "XpkUISDK.h"//引入头文件

2、初始化

/**

*  初始化对象

*  @param appkey          appkey description

*  @param appsecret       appsecret description

*  @param resultFailBlock 返回错误信息

*  @return

*/

- (id)initWithAPPKey:(NSString *)appkey

APPSecret:(NSString *)appsecret

resultFail:(XpkFailBlock)resultFailBlock;

(四)录制视频

(一)、使用SDK截取录制视频

/**

*  视频录制(制定大小录制)

*

*  @param source        源视图控制器

*  @param postion       前/后置摄像头

*  @param frameRate     帧率

*  @param bitRate       码率

*  @param size          录制视频尺寸

*  @param record_Type   录制还是拍照

*  @param outputPath    视频输出路径

*  @param callbackBlock 完成录制回调

*  @param cancelBlock   取消录制回调

*/

- (void)videoRecordWithSourceController: (UIViewController*)source

cameraPosition: (AVCaptureDevicePosition )postion

frameRate: (int32_t) frameRate

bitRate: (int32_t) bitRate

recordSize: (CGSize) size

Record_Type: (Record_Type)record_Type

outputPath: (NSString*)outputPath

videoPath: (XpkCallbackBlock)callbackBlock

cancel: (XpkCancelBlock)cancelBlock;

/**

*  自动选择录制合适尺寸

*

*  @param source        源视图控制器

*  @param postion       前/后置摄像头

*  @param frameRate     帧率

*  @param bitRate       码率

*  @param record_Type   录制还是拍照

*  @param outputPath    视频输出路径

*  @param callbackBlock 完成录制回调

*  @param cancelBlock   取消录制回调

*/

- (void)videoRecordAutoSizeWithSourceController: (UIViewController*)source

cameraPosition: (AVCaptureDevicePosition )postion

frameRate: (int32_t)frameRate

bitRate: (int32_t)bitRate

Record_Type: (Record_Type)record_Type

outputPath: (NSString*)outputPath

videoPath: (XpkCallbackBlock)callbackBlock

cancel: (XpkCancelBlock)cancelBlock;

/**

*  录制正方形视频

*

*  @param source        源视图控制器

*  @param postion       前/后置摄像头

*  @param frameRate     帧率

*  @param bitRate       码率

*  @param record_Type   录制还是拍照

*  @param outputPath    视频输出路径

*  @param callbackBlock 完成录制回调

*  @param cancelBlock   取消录制回调

*/

- (void)videoRecordWidthEqualToHeightWithSourceController: (UIViewController*)source

cameraPosition: (AVCaptureDevicePosition )postion

frameRate: (int32_t)frameRate

bitRate: (int32_t)bitRate

Record_Type: (Record_Type)record_Type

outputPath: (NSString*)outputPath

videoPath: (XpkCallbackBlock)callbackBlock

cancel: (XpkCancelBlock)cancelBlock;

(五)、编辑视频

1、使用SDK进入开始编辑视频

(1)、实例化XpkUiSDK对象两种方式任选其一

(1.1)设置编辑界面的方向,是否锁定方向

(1.11)(选择视频不需要扫描缓存文件)

/**

*  编辑视频

*

*  @param viewController  源控制器

*  @param assets           数据源(NSMutableArray[AVURLAsset])传nil 进入选择视频界面

*  @param outputVideoPath 视频输出路径

*  @param callbackBlock    完成编辑回调

*  @param cancelBlock     取消编辑回调

*/

- (void)editVideoWithSuperController:(UIViewController *)viewController

assets:(NSMutableArray *)assets

outputPath:(NSString *)outputVideoPath

callback:(XpkCallbackBlock )callbackBlock

cancel:(XpkCancelBlock )cancelBlock;

(1.12)(选择视频需要扫描缓存文件)

/**

*  编辑视频(需扫描缓存文件夹)

*

*  @param viewController    源控制器

*  @param foldertype        缓存文件夹类型 (Documents、Library、Temp)

*  @param appAlbumCacheName 需扫描的缓存文件夹名称

*  @param assets            数据源(NSMutableArray[AVURLAsset])

*  @param outputVideoPath   视频输出路径

*  @param callbackBlock     完成编辑回调

*  @param cancelBlock       取消编辑回调

*/

- (void)editVideoWithSuperController:(UIViewController *)viewController

foldertype:(FolderType)foldertype

appAlbumCacheName:(NSString *)appAlbumCacheName

assets:(NSMutableArray *)assets

outputPath:(NSString *)outputVideoPath

callback:(XpkCallbackBlock )callbackBlock

cancel:(XpkCancelBlock )cancelBlock;

(2)设置视频输出码率;

(3)可以添加水印:(可以省略)

(4)设置片尾:(可以省略)

@property (nonatomic,assign)BOOL endWaterPicDisabled; //是否禁用片尾

@property (nonatomic,assign)NSString *endWaterPicUserName;//设置片尾显示的用户名

(六)自定义相册或是调用系统相册

1、实现代理方法

- (void)selectVideoAndImageResult:(UINavigationController *)nav callbackBlock:(void (^)(NSArray *lists))callbackBlock;//添加视频和图片

- (void)selectVideosResult:(UINavigationController *)nav callbackBlock:(void (^)(NSArray *lists))callbackBlock; //添加视频

- (void)selectImagesResult:(UINavigationController *)nav callbackBlock:(void (^)(NSArray *lists))callbackBlock; //添加图片

以系统相册为例:(需实现以下两个协议:UINavigationControllerDelegate, UIImagePickerControllerDelegate)

进入系统相册:

相册选择完成:

(七)、视频截取

1、调用截取方法之前设置编辑界面的方向,是否锁定方向

/**

*  截取视频(真正的截取,回传截取过后的视频)

*

*  @param viewController  源控制器

*  @param controllerTitle 导航栏标题

*  @param backgroundColor 背景色

*  @param cancelButtonTitle 取消按钮文字

*  @param cancelButtonTitleColor 取消按钮标题颜色

*  @param cancelButtonBackgroundColor 取消按钮背景色

*  @param otherButtonTitle  完成按钮文字

*  @param otherButtonTitleColor  完成按钮标题颜色

*  @param otherButtonBackgroundColor 完成按钮背景色

*  @param assetPath       数据源

*  @param outputVideoPath 视频输出路径

*  @param callbackBlock   截取完成回调

*  @param failback        截取失败回调

*  @param cancelBlock     取消截取回调

*/

- (void)cutVideoWithSuperController:(UIViewController *)viewController

controllerTitle:(NSString *) title

backgroundColor:(UIColor  *) backgroundColor

cancelButtonTitle:(NSString *) cancelButtonTitle

cancelButtonTitleColor:(UIColor  *) cancelButtonTitleColor

cancelButtonBackgroundColor:(UIColor  *) cancelButtonBackgroundColor

otherButtonTitle:(NSString *) otherButtonTitle

otherButtonTitleColor:(UIColor  *) otherButtonTitleColor

otherButtonBackgroundColor:(UIColor  *) otherButtonBackgroundColor

assetPath:(NSString *) assetPath

outputPath:(NSString *) outputVideoPath

callbackBlock:(Xpk_CallbackBlock  ) callbackBlock

failback:(XpkFailBlock       ) failback

cancel:(XpkCancelBlock     ) cancelBlock;

/*

此参数点击自定义弹框的按钮时才会被调用

*/

- (void)cutVideo_withCutType:(RDCutVideoReturnType )type;

如果有自定义的提示框:

设置截取界面的两个截取时间值

(八)、分享视频

开发中

(九)、wifi分享视频

开发中

具体情况

iOS视频编辑SDK集视频拍摄和视频剪辑功能于一体,同时包含视频配音配乐、字幕特效、滤镜、转场等各种功能,全方位满足开发者的需求,并可以快速植入到APP中。编辑预览时支持智能硬件解码,选择视频时不需要转码,减少用户等待时间

SDK功能介绍:

1.拍摄

  • 实时美颜
  • 多段拍摄 一个视频可以分多段次拍摄,并支持回删
  • 多种拍摄模式 支持长按拍摄、快速点击持续拍摄
  • 定时拍 支持5秒内定时拍摄
  • 摄像头切换 前、后摄像头自由切换,中间无卡顿
  • 多比例支持 支持1:1 、9:16、16:9多个比例录制
  • 变焦、对焦 通过相应手势可以缩放摄像头采集画面及清晰度(依赖硬件支持)
  • 滤镜 内置主流滤镜,与编辑滤镜同步,支持扩展更多滤镜
  • 照片 当前摄像头画面保存到图片

 截图

  

2.视频编辑

  • 滤镜 内置主流滤镜,支持扩展更多滤镜
  • 字幕、特效 字幕特效在指定位置,指定时间段显示; 字幕支持设置字体大小和颜色及背景图; 实时预览效果
  • 配音、配乐 支持指定时间段添加配音; 支持配音、配乐与视频原音比例调节; 支持本地添加更多配乐
  • 截取、分割 支持毫秒级截取、分割视频; 支持快速预览截取、分割后视频
  • 调速 调整视频的播放速度,快放或者慢放
  • 转场 支持多种转场; 支持随机转场、指定转场时长等扩展设置
  • 其它编辑功能 支持多种比例裁剪; 支持90、180、270度旋转视频画面; 支持左右镜像、上下镜像; 支持输出比例调整; 支持横屏编辑; 支持文字版; 支持图片时长设置; 支持视频调序等

 截图

   

   

最新SDK下载(以下链接是最新的,github代码会稍有延迟):

SDK下载请单击

功能试用:

您可以在Appstore搜索“秀拍客”,我们使用本SDK整合的app。目前很多国内外软件企业已经整合到他们的产品中,我们这里不方便进行罗列。

关于授权:

www.rdsdk.com 致力于专业的人做专业的事,降低客户的开发时间和开发成本,你只需要支付很少的费用,花上几个小时就能增加视频编辑功能。

单击申请试用

开发文档:

点击查看

洽谈咨询:

QQ群: 305128688

咨询电话: 4008989105

客服电话: 15313066905 (周一至周五 9:00-18:00)

客服邮箱:2637433751@qq.com

iOS视频编辑SDK的更多相关文章

  1. iOS/Android 视频编辑SDK

    锐动天地为开发者提供短视频编辑.特效.直播.录屏.编解码.视频转换,等多种解决方案,涵盖PC.iOS.Android多平台.以市场为导向,不断打磨并创新技术,在稳定性,兼容性,硬件设备效率优化上千捶百 ...

  2. RDVECore来自锐动的无UI,高度抽象化API的视频编辑SDK

    1 编写目的 预期读者: 有视频编辑开发经验或者无经验的,打算或者正在使用"锐动IOS版RDVECore"的相关工程师. iOS软件工程师. 产品经理. QA 2 名词解释 分辨率 ...

  3. Android 视频编辑 SDK

    Android 视频编辑 SDK接入说明 一.名词解释 分辨率:用于计算机视频处理的图像,以水平和垂直方向上所能显示的像素数来表示分辨率.常见视频分辨率的有1080P即1920x1080,720P即1 ...

  4. LanSoEditor_common ---android平台的视频编辑SDK

    当前版本是LanSoEditor-v1.4 主要使用在音视频的: 裁剪,剪切,分离,合并,转换,拼接,水印,叠加,混合,转码等场合; 我们是针对android平台对ffmpeg做了硬件加速优化,经过多 ...

  5. 关于视频编辑SDK的接入说明

    一.运行环境 Android 4.1(api 16)以上: 处理器:双核 1GHz以上CPU(目前只支持ARM CPU, X86.MIPS暂不支持):推荐四核1.2GHz以上CPU 内存:1 GB以上 ...

  6. LanSoEditor_advance1.8.0 视频编辑的高级版本

    ------------------------------------------2017年1月11日11:18:33------------------------------------- 我们 ...

  7. 视频编辑SDK---我们只提供API,任你自由设计炫酷的功能

    面对相对复杂的视频编辑处理技术,你是否束手无策? 在短视频应用中,有一定技术难度的视频编辑技术中,我们提出了一种全新的解决方法:画板和画笔.短视频处理,用画板和画笔,就够了! 我们设计了极其简单易懂的 ...

  8. Android视频编辑SDK--RDVECore来自锐动的无UI,高度抽象化API

    1 RDVECore功能概述 RDVECore是锐动推出的无UI,高度抽象化API的视频编辑SDK,支持以下功能: 1.1 丰富的编辑功能 RDVECore包含了丰富的基础功能,对于编辑中的视频.图片 ...

  9. 视频直播SDK-ios版

    IOS视频直播接入说明 一.名词解释 分辨率:用于计算机视频处理的图像,以水平和垂直方向上所能显示的像素数来表示分辨率.常见视频分辨率的有1080P即1920x1080,720P即1080x720,6 ...

随机推荐

  1. jquery 编写插件入门

    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <sc ...

  2. magento1.x 运行在 php7 优惠券的问题

    diff --git app/code/core/Mage/Sales/etc/config.xml index 5bb43d7..7db62ca 100644 --- app/code/core/M ...

  3. IIS 启用w3wp.exe调试 没有找到w3wp进程

    必须条件: 在进程列表的下面,有个show processes in all sessions,把它勾上就能看到了 . VS中附加进程的方式调试IIS页面,以及设置断点无效问题解决 以前调试网站的时候 ...

  4. loadrunner controller:实时查看VUser的运行情况

    1)         如下图,在Run标签页,点击"Vusers..."打开Vuser窗口: 2)         如下图选中一个Vuser点击按钮可以打开Run-Time Vie ...

  5. HDU2602(背包)

    Bone Collector Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)To ...

  6. (二)Hololens Unity 开发之 语音识别

    学习源于官方文档 Voice input in Unity 笔记一部分是直接翻译官方文档,部分各人理解不一致的和一些比较浅显的保留英文原文 (二)Hololens Unity 开发之 语音识别 Hol ...

  7. Awesome Chrome 插件集锦

    子曾曰:"工欲善其事,必先利其器.居是邦也."--语出<论语·卫灵公>:其后一百多年,荀子也在其<劝学>中倡言道:"吾尝终日而思矣,不如须臾之所学 ...

  8. Swift资料大全

    简单看了一下swift的语法,个人感觉相对于object-c很是简单明了.Swift的出现并不能说明iOS开发简单了很多,有可能会变得复杂,你需要学习两门编程语言,因为在程序员的世界里,务实并不是最重 ...

  9. ubuntu 14.04 中找不到 libgtk-x11-2.0.so

    如果ubuntu安装的64位的,在其中安装32位软件时就会碰到缺失libgtk-x11-2.0.so的情况 比如用wine安装qq时 启动qq时就会报这样的错误 error : cannot open ...

  10. 正则匹配所有的a标签

    <a\b[^>]+\bhref="([^"]*)"[^>]*>([\s\S]*?)</a>分组1和分组2即为href和value解释: ...