美摄SDK素材使用介绍
效果出众的美摄SDK素材库,是一项极具特色的SDK功能服务,通过素材中心的数千种特效样式,可以让开发者无需付出更多设计成本,即可使用到一流的视频处理效果。下面会对素材使用行逐步介绍。
一、素材特效的分类
美摄SDK的素材根据功能类型和场景的不同,一级分类有14类
可以直接在网站的素材中心浏览样例效果,也可以通过【美摄】sdkdemoApp,进行个人素材的素材效果体验。
美摄demo可以在各大应用市场进行下载,也可以在官网下载体验demo
二、素材特效在程序中使用
概述:美摄SDK无需开发者付出任何费用即可进行SDK以及素材的免费试用,试用过程中的开发代码同样可以在正式授权后使用,而无需更改,最大程度优化了开发周期。
2.1获取美摄sdk
使用美摄素材包前,需要先下载美摄sdk。因为需要基于美摄sdk进行美摄素材包的使用。
首先登陆美摄SDK网站:www.meishesdk.com
根据要求在网站进行注册
注册成功后,【开发者中心】-【SDK下载及开发文档】,下载最新的SDK,并参照开发文档进行开发
2.2素材及sdk的使用关系
StreamingSDK | |||||
---|---|---|---|---|---|
水印状态 | Sdk授权 | 素材授权 | 包名 | 流程效率 | |
方式一 | 无水印 | 使用sdkdemo授权 | 不需要 | 使用sdkdemo包名 | 最快 |
方式二 | 有水印 | 不申请 | 不需要 | 使用用户包名 | 快 |
方式三 | 无水印 | 申请 | 需要 | 使用用户包名 | 较快 |
注:effectsdk接入时必须要有sdk授权和素材授权
2.3获取素材授权流程
如果要获取素材授权,首先请确认您已经添加应用,获取了sdk授权。
素材授权获取流程如下:
【素材中心】-【全部素材】-【选择分类】-【浏览素材】-【购买0积分素材】
然后进入【我的首页】-【我的素材】-【已购素材】-【下载】
在已购和自制里下载的素材,才是带有素材授权的素材
素材中心直接下载的素材,没有素材授权,只有素材包
已购和自制里下载的素材包含以下两个文件:
素材文件本身
素材对应的授权
此时您就已经获取到了该素材的正式授权文件了,接下来您就需要在开发中进行正式使用
2.4授权素材在各端的使用方法
当您已经获得素材文件和对应的授权后,您就可以将他们在带有授权的SDK中进行使用,您需要在安装使用某个素材时,传入对应的授权文件即可,这样就可以正常的进行使用了。具体的方法如下:
初始化StreamingContext后,通过资源包管理器安装,安装代码如下:
A. Android下的使用方法
assetPackageFilePath | 待安装资源包的文件路径 |
---|---|
licenseFilePath | 待安装资源包的授权文件路径 |
type | 待安装资源包的类型。注:待输入参数是以ASSET_PACKAGE_TYPE打头的静态int属性值。请参见资源包类型 |
synchronous | 是否同步安装。值为true则安装过程会阻塞当前线程直到安装成功或者失败,false则安装过程的结果通过delegate异步通知(但也在当前线程通知)。 注意:如果type是模板类型,那么只能使用异步安装。 |
assetPackageId | 输出参数,返回该资源包ID |
以字幕安装为例。captionStyleFilePath表示字幕样式包路径,
licenseFilePath表示字幕样式对应的授权文件,captionStylePackageId表示存储字幕样式包ID
//模板安装监听:
NvsAssetPackageManager packageManager = streamingContext.getAssetPackageManager();
packageManager.setCallbackInterface(new NvsAssetPackageManager.AssetPackageManagerCallback() {
@Override
public void onFinishAssetPackageInstallation(String s, String s1, int i, int i1) {
}
@Override
public void onFinishAssetPackageUpgrading(String s, String s1, int i, int i1) {
}
});
//同步安装
packageManager.installAssetPackage(captionStyleFilePath,
licenseFilePath, NvsAssetPackageManager.ASSET_PACKAGE_TYPE_CAPTIONSTYLE,
true, captionStylePackageId);
素材更新:素材有版本号,每次更新效果就会增加版本号,如要在素材已安装的情况下使用更高版本需要调用更新接口,以更新效果,否则不会生效高版本效果。
assetPackageFilePath | 待升级资源包的文件路径 |
---|---|
licenseFilePath | 待升级资源包的授权文件路径 |
type | 待升级资源包的类型。注:待输入参数是以ASSET_PACKAGE_TYPE打头的静态int属性值。请参见资源包类型 |
synchronous | 是否同步升级。值为true则升级过程会阻塞当前线程直到升级成功或者失败,false则升级过程的结果通过delegate异步通知(但也在当前线程通知)。 注意:如果type是模板类型,那么只能使用异步升级。 |
assetPackageId | 输出参数,返回该资源包ID |
packageManager.upgradeAssetPackage(assetPackageFilePath, licenseFilePath, packageType, true, packageId);
您也可以参考以下链接,获取到详细信息
https://www.meishesdk.com/android/doc_ch/html/content/assetsPackageInstall_8md.html
B. iOS下的使用方法
/*
安装字幕样式。captionStyleFilePath表示字幕样式包路径,
licenseFilePath表示字幕样式对应的授权文件,captionStylePackageId表示字幕样式包ID
*/
[m_streamingContext.assetPackageManager installAssetPackage:captionStyleFilePath license:licenseFilePath
type:NvsAssetPackageType_CaptionStyle sync:YES assetPackageId:captionStylePackageId];
NSMutableString *fxPackageId = [[NSMutableString string];
// 这个素材包不一定要内置到app中,也可以在线下载到沙盒里,只要能获取到路径即可
NSString *appPath =[[NSBundle mainBundle] bundlePath];
NSString *packagePath = [appPath stringByAppendingPathComponent:@“7FFCF99A-5336-4464-BACD-9D32D5D2DC5E.videofx"];
NSString *licensePath = [appPath stringByAppendingPathComponent:@"7FFCF99A-5336-4464-BACD-9D32D5D2DC5E.lic"];
NvsAssetPackageManagerError error = [streamingcontext.assetPackageManager installAssetPackage:packagePath license:licensePath type:NvsAssetPackageType_VideoFx sync:YES assetPackageId:_fxPackageId];
if (error != NvsAssetPackageManagerError_NoError && error != NvsAssetPackageManagerError_AlreadyInstalled) {
NSLog(@"Failed to install");
}
您也可以参考以下链接,获取到详细信息
https://www.meishesdk.com/ios/doc_ch/html/content/Tutorial_8md.html#
https://www.meishesdk.com/ios/doc_ch/html/content/Tutorial_8md.html#
三、素材下载服务
美摄素材平台目前只提供素材的售卖,暂时不提供素材下载接口。如有素材后台私有化部署服务的需求,请联系您的商务。