美摄SDK的使用(一)—— 产品介绍

版本记录

版本号 时间
V1.0 2017.08.10

前言

针对短视频的上传、编辑等功能有很多的SDK,比如腾讯的SDK、七牛的SDK等,这里我就说一下我用过的美摄的SDK - 1.8.0,希望对大家有所帮助。

服务对象

  美摄SDK可以帮助开发者快速的在APP中实现视频制作服务,包括视频、图片处理、视频基础编辑、快速包装渲染等等,开发者可以根据自己的创意创建APP,实现各种特色功能,美摄公司会随时根据手机系统、手机硬件、使用场景的变化,快速调整,完善,升级SDK工具包,保证SDK包的稳定性、高效率、高兼容性、给开发者带来良好的服务体验。有需要的可以参考美摄SDK的开发文档官网


能力与限制

  • 支持的系统:
    • ios 7.0以上系统
    • Android 4.1以上系统
  • 输入规范:
    • 视频格式:MP4、MOV、WMV、M2V、MPG
    • 音频格式:MP3、FLAC、AAC、M4A
    • 图片格式:JPG、PNG
    • 视频编码:H264、WMV、MPEG4
    • 音频编码:MP3、AAC、PCM、FLAC
  • 输出规范:
    • 视频格式:MP4
    • 视频编码:H264
    • 音频编码:AAC
  • 扩展包格式(扩展包是美摄用来承载扩展素材的内容包,包括主题、字幕、滤镜、贴纸等):
  • 主题:.theme
  • 字幕:.captionstyle
  • 滤镜:.videofx
  • 贴纸:.animatedsticker
  • 转场:.videotransition

产品特点

1. 实时特效、高清录制

SDK支持1080P高清视频录制,提供非常丰富的拍摄录制功能,在录制的同时可以叠加多种特效,并实时预览,最大程度满足不同场景的录制需求,具体特点如下:

  • 最大录制1080P视频,并可设定720P、480P等多种质量
  • 支持16:9、1:1等不同的画幅比例
  • 支持多段视频录制
  • 带有基础录制功能,例如对焦,镜头切换,曝光补偿、闪光灯等
  • 自带美肤功能
  • 自带滤镜功能,支持扩展

2. 支持多轨道、多段编辑

支持同时将不同格式的视频、图片、进行混合多段编辑。

  • 视频支持多轨道(视频、图片)
  • 支持多种画幅16:9、1:1

3. 制作特效实时预览

通过预览窗口(LiveWindow)可以在制作的过程中实时预览制作效果,而不需进行预处理和打包,大大提升了制作的体验、降低了制作成本和时间。

4. 高清视频输出

SDK支持多种格式内容的输入,并最高支持到4K输入,同时最高支持1080P视频输出,并且开发者可以根据需求设定不同的输出级别(1080P、720P、480P等)。

5. 全能的基础编辑功能

美摄SDK包含市面上最为丰富的基础编辑功能,非常简单的调用方式,开发者们可以根据自己的需求进行灵活组合使用。基础功能包括:

  • 视频裁剪、分割
  • 视频变速
  • 视频、图片插入
  • 视频、图片排序
  • 视频、图片删除
  • 图片时长设定
  • 图片画面裁剪
  • 图片运动设定
  • 画面参数调整(亮度、饱和度、对比度等)
  • 画面旋转等

6. 视频实时美肤处理

SDK中自带视频实时美肤特效,可以在拍摄、编辑的过程中直接加入美肤效果,并进行实时预览,同时可以调节美肤处理的等级,美白参数等处理。

美肤处理

7. 绚丽的视频主题

SDK拥有一套强大的主题系统,每个主题都包含:片头尾、音乐、画面运动、前景动画、转场、字幕等,只需一键,就可以对视频进行智能处理,实现电影效果,具体特征如下:

  • 拥有复杂的画面处理
  • 配套片头尾、音乐、转场等
  • 可嵌入配套字幕样式
  • 支持3D场景
  • 拥有150+已有主题可选
  • 提供快速制作服务

8. 顶级字幕功能

SDK的字幕系统达到广电包装水准,不仅是添加一行文字这么简单,字幕功能可以实现一套非常绚丽的字幕包装效果,同时具有良好的扩展性,具体特征如下:

  • 支持动画底图
  • 支持文字运动,逐字运动
  • 文字颜色、描边可调
  • 支持透明度
  • 支持多行字幕
  • 支持载入字体
字幕

9. 多轨道音频编辑

SDK支持不限数量的音频轨道编辑,单轨道音频同时支持多段音频导入与编辑,同时具有多种音频处理方式,具体如下:

  • 多轨道音频输入
  • 支持多段音频
  • 音频裁剪
  • 多种音频处理(电音、娃娃音效果等)
  • 音频转场(淡入淡出等)
  • 音量独立控制

10. 画面前景滤镜

拥有独有的前景滤镜处理方式,整个滤镜由图像处理,边框处理,前景动画效果叠加组成,不仅可以完成简单的调色,还可以实现更多丰富的画面效果,同时还提供前景滤镜的定制服务,满足个性化需求。

滤镜

11. 动画贴纸效果

SDK支持在制作过程中,向视频中加入动画贴纸进行修饰,同时可以对贴纸进行属性设置,达到美化视频画面的作品,具体如下:

  • 支持复杂运动效果
  • 支持有声贴纸
  • 支持镜像
  • 支持旋转
  • 支持大小修改
  • 支持贴纸扩展
动画贴纸

12. 转场过渡效果

SDK支持在片段间添加转场,保证衔接的过程中达到平滑、出色的过渡效果,让视频间更加流畅,同时美摄提供非常多的预置转场效果,供开发者们进行选择,同时可以根据开发者的需求,提供定制化转场服务。

转场过渡效果

13. 丰富的素材库和定制化服务

SDK同时会提供丰富的素材库供开发者们选择使用,并且会定期更新一些新的内容进入素材库中,并会有一定比例的免费内容让开发者们无偿使用,同时提供个性化定制内容,只需少量花费,专业团队为开发者们定制个性化素材,当前素材库包含:

  • 主题样式:150个
  • 字幕样式:60个
  • 贴纸:360个
  • 滤镜:50个
  • 转场:30个

具体素材库可以参考美摄官网


名词解释

  • 流媒体上下文(Streaming Context)
    包含时间线、预览窗口、采集、资源包管理等相关信息集合的对象,Context被销毁之后,SDk视频制作框架也随之不复存在。

  • 定位(Seek)
    渲染出指定位置的画面,并更新时间线的时间戳。

  • 生成(Compile)
    以指定码率、帧速率和压缩格式输出文件。

  • 采集(Capture)
    捕获摄像头设备画面。

  • 录制(Record)
    输出采集画面到指定格式文件中。

  • 时间线(Timeline)
    编辑场景的时间轴实体,由轨道组成,可以有多个视频轨道和音频轨道,由视频轨道决定长度。

  • 轨道(Track)
    容纳片段的实体,分为视频轨道(Video Track)和音频轨道(Audio Track),可随片段的增加不断延展。

  • 片段(Clip)
    容纳音视频内容的实体,分为视频片段(Video Clip)和音频片段(Audio Clip),视频片段可以是图片或者视频。

  • 采集视频特效(Capture Video Fx)
    一种应用在采集中的视频特效。

  • 视频特效(Video Fx)
    一种视频图像的特殊效果,可能改变视频图像的整体或局部的颜色、亮度、透明度等信息,使视频显示特殊的效果。

  • 音频特效(Audio Fx)
    一种音频的特殊效果,可能改变音频的声调、速率等信息。

  • 视频转场(Video Transition)
    片段间切换的特效,从一个视频到另一个视频的播放衔接过渡效果。添加转场后,片段在转场时间内可能有重叠效果。

  • 主题(Theme)
    一系列特效应用的集合,包括片头、片尾、视频特效、视频转场、音乐、字幕样式等。

  • 字幕(Caption)
    视频上叠加的自定义文字,可以设置字号和颜色等样式。

  • 字幕样式(Caption Style)
    预定义字幕属性集合,包括字号和颜色等。

  • 动画贴纸(Animated Sticker)
    带有动画效果的贴纸,叠加在视频上产生一些特殊效果。

  • 预览窗口(Live Window)
    实时显示时间线或者采集图像的窗口。

  • 视频解析度(Video Resolution)
    视频的基本信息,包括图像宽高和像素横纵比等。

  • 音频解析度(Audio Resolution)
    音频的基本信息,包括采样率和声道数等。

  • 摇摄和扫描(Pan and Scan)
    一种调整图像适配的方法,可以横向剪切和纵向平移。

  • 资源包(Asset Package)
    一种需要安装的特效资源,安装后可以作为特效使用,包括视频特效、视频转场、主题、字幕样式、动画贴纸。

  • 资源包ID(Asset Package ID)
    资源包的唯一标识,安装资源包成功后获得,添加特效时使用。

  • 裁剪入点(Trim In)
    裁剪片段的起始点。对于裁剪入点,裁剪出点,入点,出点的详细解释,请参见裁剪入点与出点(trimIn and trimOut)专题

  • 裁剪出点(Trim Out)
    裁剪片段的终止点。

  • 入点(In Point)
    片段在时间线的起始点。

  • 出点(Out Point)
    片段在时间线上的终止点。

  • 播放速度(Speed)
    片段播放的速度,速度没有改变的情况下,(出点-入点)=(裁剪出点-裁剪入点),如果播放速度为2倍速,(出点-入点)*2=(裁剪出点-裁剪入点)。

  • 码率(Bitrate)
    每秒传送的比特数,码率越高,视频质量越好。

  • 采样率(Sample Rate)
    每秒从连续信号中采集的离散信号个数。

  • 帧速率(Frame Rate)
    每秒刷新图像的帧数,帧速率越高,视频的连续性越好。

  • 横纵比(Aspect Ratio)
    图像的横向尺寸与纵向尺寸的比例。

  • 像素横纵比(Pixel Aspect Ratio)
    一个像素点的宽与高的比例。SDK中仅支持1:1。


项目搭建指南

1. 新建工程

(a)选择File->New->Project来新建工程。
(b)在工程类型界面选择适合的工程类型,点击“Next”。
(c)输入工程名,点击“Next”。
(d)输入工程路径,点击”Create“。

新建工程

2. 禁用Bitcode

(a)在工程设置界面,选择“Build Settings”。
(b)在搜索框输入“bit code”。
(c)在“Enable Bitcode”选项卡中选择“No”。

禁用Bitcode

3. 添加SDK头文件和库文件的引用

(a)在工程设置界面,选择“Build Settings”。
(b)在搜索框输入“search Paths”。
(c)在“search paths”中输入SDK的头文件和库文件地址。

添加文件引用

4. 添加库文件

(a)在工程设置界面,选择”General“。
(b)找到“Linked Frameworks and Libraries”。
(c)添加SDK库文件。
(d)添加framework库文件。

添加库文件

基础结构与概念

1. 模块结构

美摄SDK核心模块包括流媒体上下文、时间线、字幕、动画贴纸、轨道、音/视频片段等。流媒体上下文是SDK中最基础的模块,它负责生成、保存并维护SDK引擎运行时的上下文环境。时间线由流媒体上下文生成,包含字幕,动画贴纸以及多个音视频轨道,各模块协同工作以生成最终的视频效果。其中每条音/视频轨道上可以添加若干个音/视频片段,片段上可以添加各种特效,片段之间可以设置不同的转场效果。

模块结构

2. 数据流

美摄SDK支持两种媒体输入方式,标准媒体文件与摄像头采集。

当输入为一个或多个媒体文件时,SDK会首先从文件中提取出对应的音频与视频片段,这些片段可以理解为对原音频流与视频流的裁剪与封装。以视频为例,在编辑过程中,用户可以对这些视频片段进行任意拼接,放到对应轨道上,轨道再放到时间线上。每一个轨道可以类比成一个图层,SDK引擎对轨道渲染的顺序是自下到上的,各层轨道之间可以通过设置透明度等参数来实现一些特殊的效果。SDK引擎支持对时间线、轨道与音/视频片段添加特效,包括音/视频特效、转场、字幕、动画贴纸以及主题等,其中主题可以当成是上述特效的一个闭包。SDK默认提供若干内置的编辑特效,更多的特效资源包可以在美摄官网下载。编辑后的视频可以通过SDK提供的预览窗口进行预览,或者直接打包生成媒体文件。

当使用摄像头设备作为输入时,SDK引擎只能对其添加采集特效与包特效,不能使用转场、字幕、动画贴纸等其他特效。生成的视频同样可以通过SDK提供的预览窗口进行预览,或者直接打包生成媒体文件。

数据流
数据流

后记

未完,待续~~

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,921评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 87,635评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 151,393评论 0 338
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,836评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,833评论 5 368
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,685评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,043评论 3 399
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,694评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 42,671评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,670评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,779评论 1 332
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,424评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,027评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,984评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,214评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,108评论 2 351
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,517评论 2 343

推荐阅读更多精彩内容

  • 我从没怀疑过承诺那一刻的真诚,可心是如此的幽深复杂,千帆过尽,我变得什么都能理解,同时什么也无法再相信……!
    风中的颜色阅读 83评论 0 1
  • 我想和黄嘻一起去爬龙山,要背个帐篷,顶部要是透明的。晚上风吹过树林,我们躺在帐篷里,看着漫天繁星,看着十万光年的...
    林沐寰阅读 259评论 0 0
  • 唐风诗话:风景如画与出神入化 ——读王勇来五绝《一月六日悉尼见诸友》 李唐风 《倾杯倾泪复清寒——古风诗书小集》(...
    李唐风阅读 867评论 2 7
  • 我想我可能有点累 每天都在还账 所幸,今天欠账基本还清 明天也只是一个或者两个会议而已。开会,如果在不忙的时候其实...
    喵小妖mm阅读 364评论 2 2