Class VideoEngine


  • public class VideoEngine
    extends java.lang.Object
    渲染核心库
    • Constructor Detail

      • VideoEngine

        public VideoEngine()
    • Method Detail

      • createRenderProcess

        public java.lang.String createRenderProcess​(java.lang.String tplFolder,
                                                    java.lang.String outputFile,
                                                    int key)
        创建进程模式渲染对象
        Parameters:
        tplFolder - , 模板目录
        outputFile - , 输出路径
        key - 随机数,同一时间保持唯一
        Returns:
        string render id
      • registerRenderProcessLicense

        public boolean registerRenderProcessLicense​(java.lang.String id,
                                                    java.lang.String licenseStr)
        注册 license
        Parameters:
        id - , render id
        licenseStr - , 证书字符串
        Returns:
        boolean
      • getRenderProcessLicenseProfile

        public java.lang.String getRenderProcessLicenseProfile​(java.lang.String id)
        获取 License profile
        Parameters:
        id - render id
        Returns:
        String
      • isRenderProcessLicenseValid

        public boolean isRenderProcessLicenseValid​(java.lang.String id)
        检测注册的 License 是否有效
        Parameters:
        id - , render id
        Returns:
        boolean
      • setRenderProcessReplaceableFiles

        public boolean setRenderProcessReplaceableFiles​(java.lang.String id,
                                                        java.lang.String[] paths)
        设置主替换素材
        Parameters:
        id - , render id
        paths - , 素材数组
        Returns:
        boolean
      • setRenderProcessReplaceableJson

        public boolean setRenderProcessReplaceableJson​(java.lang.String id,
                                                       java.lang.String json)
        设置替换素材信息 参考 http://www.seeshiontech.com/docs/page_103.html
        Parameters:
        id - , render id
        json - , 素材信息
        Returns:
        boolean
      • setRenderProcessDynamicSubFiles

        public boolean setRenderProcessDynamicSubFiles​(java.lang.String id,
                                                       java.lang.String json)
        为动态模板设置关联的附加素材

        非动态模板设置无效

        Parameters:
        id - , render id
        json - , 素材数组
        Returns:
        boolean
      • setRenderProcessDynamicSubTexts

        public boolean setRenderProcessDynamicSubTexts​(java.lang.String id,
                                                       java.lang.String json)
        为动态模板设置关联的附加文字

        1. 当前文字是由 TextPainter 绘制,使用这个接口, 必须先设置好 assetPath 和 textpainter path
        2. 非动态模板设置无效

        Parameters:
        id - , render id
        json - , 文字素材数组
        Returns:
        boolean
      • setRenderProcessAssetPath

        public boolean setRenderProcessAssetPath​(java.lang.String id,
                                                 java.lang.String path)
        设置引擎生成的素材存放目录

        1. TextPainter 绘制的文字图片会被放到设置 AssetPath目录, 引擎不会对该目录执行清理动作, 需要调用方在渲染完成后,删除该目录进行清理
        2. 由于生成的素材可能与其他任务的图片重名, 所以建议每个任务使用单独的素材目录

        Parameters:
        id - , render id
        path - , 素材存放目录
        Returns:
        boolean
      • setRenderProcessTextPainterPath

        public boolean setRenderProcessTextPainterPath​(java.lang.String id,
                                                       java.lang.String path)
        设置文字绘制工具目录

        引擎会使用该目录的 TextPainter 和 font_list.json 进行文字绘制

        Parameters:
        id - , render id
        path - , 文字绘制工具目录
        Returns:
        boolean
      • setRenderProcessSnapShotPath

        public boolean setRenderProcessSnapShotPath​(java.lang.String id,
                                                    java.lang.String path)
        设置快照存储目录

        引擎将使用该目录保存快照

        Parameters:
        id - , render id
        path - , 快照目录
        Returns:
        boolean
      • setRenderProcessSnapShotFrames

        public boolean setRenderProcessSnapShotFrames​(java.lang.String id,
                                                      int[] frames)
        设置快照帧索引

        [1, 100] 表示第1, 100 帧会被生成 1.png , 100.png 到 snapshot path 目录中

        Parameters:
        id - , render id
        frames -
        Returns:
        boolean
      • setRenderProcessMusicFile

        public boolean setRenderProcessMusicFile​(java.lang.String id,
                                                 java.lang.String musicPath,
                                                 boolean loop)
        设置音乐
        Parameters:
        id - , render id
        musicPath - , 音乐文件路径
        loop - 是否循环音乐
        Returns:
        boolean
      • setRenderProcessMusicLoop

        public boolean setRenderProcessMusicLoop​(java.lang.String id,
                                                 boolean loop)
        设置音乐是否循环
        Parameters:
        id - , render id
        loop - 是否循环音乐
        Returns:
        boolean
      • setRenderProcessMusicFadeoutDuration

        public boolean setRenderProcessMusicFadeoutDuration​(java.lang.String id,
                                                            int duration)
        设置音乐淡出时间, 单位秒
        Parameters:
        id - , render id
        duration - 淡出时间
        Returns:
        boolean
      • setRenderProcessMusicVolume

        public boolean setRenderProcessMusicVolume​(java.lang.String id,
                                                   float volume)
        设置音量控制参数
        Parameters:
        id - , render id
        volume -
        Returns:
        boolean
      • addRenderProcessWatermark

        public boolean addRenderProcessWatermark​(java.lang.String id,
                                                 java.lang.String[] paths,
                                                 float posX,
                                                 float posY,
                                                 float timeStart,
                                                 float timeEnd,
                                                 float scaleX,
                                                 float scaleY)
        添加水印
        Parameters:
        id - , render id
        paths -
        posX - 水印 x 坐标
        posY - 水印 y 坐标
        timeStart - 开始时间,单位秒
        timeEnd - 结束时间,单位秒
        scaleX - x 轴缩放
        scaleY - y 轴缩放
        Returns:
        boolean
      • getRenderProcessProgress

        public float getRenderProcessProgress​(java.lang.String id)
        获取渲染进度 无论成功失败,最终都会返回 1.0, 范围 0.0 - 1.0
        Parameters:
        id - , render id
        Returns:
        float
      • getRenderProcessError

        public int getRenderProcessError​(java.lang.String id)
        获取渲染错误
        Parameters:
        id - , render id
        Returns:
        float
      • getRenderProcessStatus

        public java.lang.String getRenderProcessStatus​(java.lang.String id)
        获取渲染后的状态
        Parameters:
        id - , render id
        Returns:
        String
      • destroyRenderProcess

        public void destroyRenderProcess​(java.lang.String id)
        销毁渲染对象
        Parameters:
        id - , render id
      • setRenderProcessBitrateControl

        public boolean setRenderProcessBitrateControl​(java.lang.String id,
                                                      float control)
        设置比特率控制参数
        Parameters:
        id - , render id
        control - 0.0 - 1.0
        Returns:
        boolean
      • setRenderProcessScript

        public boolean setRenderProcessScript​(java.lang.String id,
                                              java.lang.String mainFile,
                                              java.lang.String scriptDir,
                                              java.lang.String data)
        设置渲染任务 Lua 脚本
        Parameters:
        id - , render id
        mainFile - lua main 函数所在文件路径
        scriptDir - lua 文件查找目录, 没有传空字符串
        data - 传给脚本的数据, 没有传空字符串
        Returns:
        boolean
      • getRenderProcessRenderedInfo

        public java.lang.String getRenderProcessRenderedInfo​(java.lang.String id)
        获取渲染后的信息

        在 startRenderProcess 后调用

        Parameters:
        id - render id
        Returns:
        String
      • setRenderProcessRetainAudioOfVideo

        public boolean setRenderProcessRetainAudioOfVideo​(java.lang.String id,
                                                          boolean retain)
        设置是否保留视频素材中的音频
        Parameters:
        id - render id
        Returns:
        boolean
      • setRenderProcessDynamicAdaptVideo

        public boolean setRenderProcessDynamicAdaptVideo​(java.lang.String id,
                                                         boolean adapt)
        设置是否对动态模板中的视频素材自适应
        Parameters:
        id - render id
        Returns:
        boolean
      • createRenderClipProcess

        public java.lang.String createRenderClipProcess​(java.lang.String outputFile,
                                                        int key)
        创建进程模式剪辑渲染对象
        Parameters:
        outputFile - , 输出路径
        key - 随机数,同一时间保持唯一
        Returns:
        string render id
      • setRenderClipProcessParams

        public boolean setRenderClipProcessParams​(java.lang.String id,
                                                  int width,
                                                  int height,
                                                  float frameRate)
        设置剪辑的参数
        Parameters:
        id - , render id
        width - , 宽, px
        height - , 高, px
        frameRate - , 帧率, fps
        Returns:
        boolean
      • createRenderImageProcess

        public java.lang.String createRenderImageProcess​(java.lang.String[] imagePaths,
                                                         java.lang.String outputPath)
        创建图片进程模式渲染对象
        Parameters:
        imagePaths - , 图片路径数组
        outputPath - , 输出路径
        Returns:
        string render id
      • destroyRenderImageProcess

        public void destroyRenderImageProcess​(java.lang.String id)
        销毁图片渲染对象
        Parameters:
        id - , render id
      • registerRenderImageProcessLicense

        public boolean registerRenderImageProcessLicense​(java.lang.String id,
                                                         java.lang.String licenseStr)
        注册图片渲染 license
        Parameters:
        id - , render id
        licenseStr - , 证书字符串
        Returns:
        boolean
      • getRenderImageProcessLicenseProfile

        public java.lang.String getRenderImageProcessLicenseProfile​(java.lang.String id)
        获取图片渲染 License profile
        Parameters:
        id - render id
        Returns:
        String
      • isRenderImageProcessLicenseValid

        public boolean isRenderImageProcessLicenseValid​(java.lang.String id)
        检测图片渲染 License 是否有效
        Parameters:
        id - , render id
        Returns:
        boolean
      • addRenderImageProcessWatermark

        public boolean addRenderImageProcessWatermark​(java.lang.String id,
                                                      java.lang.String[] paths,
                                                      float posX,
                                                      float posY,
                                                      float timeStart,
                                                      float timeEnd,
                                                      float scaleX,
                                                      float scaleY)
        添加图片渲染水印
        Parameters:
        id - , render id
        paths -
        posX - 水印 x 坐标
        posY - 水印 y 坐标
        timeStart - 开始时间,单位秒
        timeEnd - 结束时间,单位秒
        scaleX - x 轴缩放
        scaleY - y 轴缩放
        Returns:
        boolean
      • addRenderImageProcessFilter

        public boolean addRenderImageProcessFilter​(java.lang.String id,
                                                   java.lang.String filterPath)
        添加图片渲染滤镜
        Parameters:
        id - , render id
        filterPath - , 滤镜路径
        Returns:
        boolean