扫一扫咨询方案
首页
登录/注册

{user.username}

ID: {user.id}

模板 SDK 文档

  • 云渲染

    • Demo下载
    • SDK
    • 开发指南
    • AI API 文档
    • 开发者 API 文档
    • 控制台指南
    • 快速入门
    • 产品简介
  • 模板SDK

    • 用户常见问题
    • Demo 下载
    • 开发指南
    • 服务端 SDK
    • iOS SDK
    • 安卓端 SDK
    • 产品简介
  • 剪辑SDK

    • Demo下载
    • SDK
    • 开发指南
    • 产品简介
  • 模板制作教程

    • 模板制作进阶教程
    • 测试模板素材案例下载
    • 常见模板制作案例
    • 模板制作教程
    • 模板制作工具下载
    • 入门指南
  • 剪辑制作教程

    • 剪辑特效导出教程
    • 剪辑特效测试素材
    • 剪辑特效制作工具下载
    • 入门指南
产品简介
安卓端 SDK
iOS SDK
服务端 SDK
开发指南
Demo 下载
用户常见问题
首页 > 服务端 SDK > Go SDK > 快速入门

快速入门

更新时间 : 2021-12-28 13:38:06

应用场景

基于 Go SDK 开发并自建渲染服务. 需购买按授权期限 license 使用.

渲染流程

设置license, 模板路径  -->  替换素材路径  -->  提交渲染  --> 等待渲染结果

快速集成

配置依赖环境参考:

下载 sdk 包后, 解压后导入项目.

渲染示例代码

func testNormal() {

    basedir := "."
    license := ""
    tplPath := basedir + "/workspace/template/Calorie/"
    output := basedir + "/workspace/output/Calorie.mp4"

    // 渲染需要的随机数, 同一时刻保证唯一
    key := rand.Int()
    // 创建渲染进程
    renderId, success := vesdk.CreateRenderProcess(tplPath, output, key)

    fmt.Println("renderId : ", renderId, " success : ", success)

    if !success {
        return
    }

    // 注册 license
    vesdk.RegisterRenderProcessLicense(renderId, license)

    // 获取 profile
    profile := vesdk.RenderProcessLicenseProfile(renderId)
    fmt.Println("license profile : ", profile)

    // license valid
    valid := vesdk.RenderProcessLicenseIsValid(renderId)
    fmt.Println("license valid : ", valid)

    assetPaths := [5]string{
        basedir + "/workspace/assets/1.jpeg",
        basedir + "/workspace/assets/2.jpeg",
        basedir + "/workspace/assets/3.jpeg",
        basedir + "/workspace/assets/4.jpeg",
        basedir + "/workspace/assets/6.jpeg",
    }
    jsonArr, _ := json.Marshal(assetPaths)
    jsonStr := string(jsonArr)

    // 设置替换素材
    vesdk.RenderProcessSetReplaceableFiles(renderId, jsonStr)

    // 开始渲染
    ret, err := vesdk.RenderProcessStart(renderId)

    fmt.Println("start render ret : ", ret)
    fmt.Println(err)

    // 获取状态值
    status := vesdk.RenderProcessStatus(renderId)

    fmt.Println("render status : ", status)

    // 释放资源
    vesdk.RenderProcessRelease(renderId)
}

ConfigUtils 获取模板基本信息

func testConfigUtils() {
    basedir := "."
    tplPath := basedir + "/workspace/template/old/config.json"

    // 读取 config.json 文件到字符串
    content, err := ioutil.ReadFile(tplPath)
    if err != nil {
        fmt.Println("error")
    }

    // 创建 configUtils 句柄
    configJson := string(content)
    nativeUtils := vesdk.CreateConfigUtils(configJson, 0)

    // 获取模板的帧率
    fps := vesdk.ConfigUtilsGetFps(nativeUtils)
    fmt.Println("fps: ", fps)

    // 模板是否有效
    isValid := vesdk.ConfigUtilsIsValid(nativeUtils)
    fmt.Println("isValid: ", isValid)

    // 获取模板渲染出视频的时长
    duration := vesdk.ConfigUtilsGetDuration(nativeUtils)
    fmt.Println("duration: ", duration)

    // 获取模板总共的帧数量
    frameCount := vesdk.ConfigUtilsGetFrameCount(nativeUtils)
    fmt.Println("frameCount: ", frameCount)

    // 获取模板的宽度
    width := vesdk.ConfigUtilsGetWidth(nativeUtils)
    fmt.Println("width: ", width)

    // 获取模板的高度
    height := vesdk.ConfigUtilsGetHeight(nativeUtils)
    fmt.Println("height: ", height)

    // 获取模板的类型
    templateType := vesdk.ConfigUtilsGetTemplateType(nativeUtils)
    fmt.Println("templateType: ", templateType)

    // 获取模板使用引擎的版本
    version := vesdk.ConfigUtilsGetVersion(nativeUtils)
    fmt.Println("version: ", version)

    // 获取模板使用的 UI 版本
    uiVersion := vesdk.ConfigUtilsGetUIVersion(nativeUtils)
    fmt.Println("uiVersion: ", uiVersion)

    // 获取模板的基本描述
    des := vesdk.ConfigUtilsGetDescription(nativeUtils)
    fmt.Println("des: ", des)

    // 获取模板的 id
    uuid := vesdk.ConfigUtilsGetUUid(nativeUtils)
    fmt.Println("uuid: ", uuid)

    // 获取模板可替换素材的时间段
    vesdk.ConfigUtilsGetReplaceableAssetTimeRange(nativeUtils)

    // 释放 ConfigUtils 资源
    vesdk.ConfigUtilsRelease(nativeUtils)
首页 > 服务端 SDK > Go SDK > 快速入门
快速入门
更新时间 : 2021-12-28 13:38:06
  • 云渲染
    • Demo下载
    • SDK
    • 开发指南
    • AI API 文档
    • 开发者 API 文档
    • 控制台指南
    • 快速入门
    • 产品简介
  • 模板SDK
    • 用户常见问题
    • Demo 下载
    • 开发指南
    • 服务端 SDK
    • iOS SDK
    • 安卓端 SDK
    • 产品简介
  • 剪辑SDK
    • Demo下载
    • SDK
    • 开发指南
    • 产品简介
  • 模板制作教程
    • 模板制作进阶教程
    • 测试模板素材案例下载
    • 常见模板制作案例
    • 模板制作教程
    • 模板制作工具下载
    • 入门指南
  • 剪辑制作教程
    • 剪辑特效导出教程
    • 剪辑特效测试素材
    • 剪辑特效制作工具下载
    • 入门指南

应用场景

基于 Go SDK 开发并自建渲染服务. 需购买按授权期限 license 使用.

渲染流程

设置license, 模板路径  -->  替换素材路径  -->  提交渲染  --> 等待渲染结果

快速集成

配置依赖环境参考:

下载 sdk 包后, 解压后导入项目.

渲染示例代码

func testNormal() {

    basedir := "."
    license := ""
    tplPath := basedir + "/workspace/template/Calorie/"
    output := basedir + "/workspace/output/Calorie.mp4"

    // 渲染需要的随机数, 同一时刻保证唯一
    key := rand.Int()
    // 创建渲染进程
    renderId, success := vesdk.CreateRenderProcess(tplPath, output, key)

    fmt.Println("renderId : ", renderId, " success : ", success)

    if !success {
        return
    }

    // 注册 license
    vesdk.RegisterRenderProcessLicense(renderId, license)

    // 获取 profile
    profile := vesdk.RenderProcessLicenseProfile(renderId)
    fmt.Println("license profile : ", profile)

    // license valid
    valid := vesdk.RenderProcessLicenseIsValid(renderId)
    fmt.Println("license valid : ", valid)

    assetPaths := [5]string{
        basedir + "/workspace/assets/1.jpeg",
        basedir + "/workspace/assets/2.jpeg",
        basedir + "/workspace/assets/3.jpeg",
        basedir + "/workspace/assets/4.jpeg",
        basedir + "/workspace/assets/6.jpeg",
    }
    jsonArr, _ := json.Marshal(assetPaths)
    jsonStr := string(jsonArr)

    // 设置替换素材
    vesdk.RenderProcessSetReplaceableFiles(renderId, jsonStr)

    // 开始渲染
    ret, err := vesdk.RenderProcessStart(renderId)

    fmt.Println("start render ret : ", ret)
    fmt.Println(err)

    // 获取状态值
    status := vesdk.RenderProcessStatus(renderId)

    fmt.Println("render status : ", status)

    // 释放资源
    vesdk.RenderProcessRelease(renderId)
}

ConfigUtils 获取模板基本信息

func testConfigUtils() {
    basedir := "."
    tplPath := basedir + "/workspace/template/old/config.json"

    // 读取 config.json 文件到字符串
    content, err := ioutil.ReadFile(tplPath)
    if err != nil {
        fmt.Println("error")
    }

    // 创建 configUtils 句柄
    configJson := string(content)
    nativeUtils := vesdk.CreateConfigUtils(configJson, 0)

    // 获取模板的帧率
    fps := vesdk.ConfigUtilsGetFps(nativeUtils)
    fmt.Println("fps: ", fps)

    // 模板是否有效
    isValid := vesdk.ConfigUtilsIsValid(nativeUtils)
    fmt.Println("isValid: ", isValid)

    // 获取模板渲染出视频的时长
    duration := vesdk.ConfigUtilsGetDuration(nativeUtils)
    fmt.Println("duration: ", duration)

    // 获取模板总共的帧数量
    frameCount := vesdk.ConfigUtilsGetFrameCount(nativeUtils)
    fmt.Println("frameCount: ", frameCount)

    // 获取模板的宽度
    width := vesdk.ConfigUtilsGetWidth(nativeUtils)
    fmt.Println("width: ", width)

    // 获取模板的高度
    height := vesdk.ConfigUtilsGetHeight(nativeUtils)
    fmt.Println("height: ", height)

    // 获取模板的类型
    templateType := vesdk.ConfigUtilsGetTemplateType(nativeUtils)
    fmt.Println("templateType: ", templateType)

    // 获取模板使用引擎的版本
    version := vesdk.ConfigUtilsGetVersion(nativeUtils)
    fmt.Println("version: ", version)

    // 获取模板使用的 UI 版本
    uiVersion := vesdk.ConfigUtilsGetUIVersion(nativeUtils)
    fmt.Println("uiVersion: ", uiVersion)

    // 获取模板的基本描述
    des := vesdk.ConfigUtilsGetDescription(nativeUtils)
    fmt.Println("des: ", des)

    // 获取模板的 id
    uuid := vesdk.ConfigUtilsGetUUid(nativeUtils)
    fmt.Println("uuid: ", uuid)

    // 获取模板可替换素材的时间段
    vesdk.ConfigUtilsGetReplaceableAssetTimeRange(nativeUtils)

    // 释放 ConfigUtils 资源
    vesdk.ConfigUtilsRelease(nativeUtils)