检测到您已登录华为云国际站账号,为了您更好的体验,建议您访问国际站服务网站 https://www.huaweicloud.com/intl/zh-cn
不再显示此消息
配置DWR动态参数(dynamic_source) 上文算子测试时我们通过dynamic_source获取了两个参数值bucketname以及object。在工作流中,需要指明dynamic_source,并配置两个参数,否则算子将无法找到数值内容。点击“新增动态参数”,并添加动态参数,配置结果如图2所示。
建并初始化函数”章节的内容。 下拉列表中仅展示与DWR工作流同区域且同项目的函数。工作流所属区域为创建工作流的桶所属区域。例如工作流A是在桶A中创建的,则桶A的区域即为工作流A的区域。 动态参数 若自定义函数中存在动态参数,可以指定动态参数的参数名和取值,作为函数的输入。 图片暗水印
配置基本信息 参数 说明 算子名称 不能与本用户已有的算子重名。 算子提供方 - 算子描述 - API链接 填写华为云云市场已上架的算子链接。 算子分类 根据算子市场上提供的分类进行选择。 算子logo 支持主流图片格式 图1 算子基本信息 配置算子参数。 Inputs参数: [ {
用户在自行开发自定义函数时,函数的输入参数和输出参数需要遵守本节的开发规范。 自定义函数的编译方式请参考FunctionGraph的《开发指南》。 函数输入参数 工作流执行自定义函数时,函数输入参数的JSON格式的结构体和环境变量的定义如下: 表1 函数输入的JSON格式体 名称 是否必选 参数类型 说明 execution_name
告。 图3 上传文件 配置算子参数。 参数 说明 Inputs参数(可选) 提供算子入参中动态参数对应的参数值,其Key值需要与动态参数中保持一致。 动态参数(可选) 提供算子入参的参数列表,可配置静态参数或动态参数,动态参数需要从Inputs参数中根据定义的Key取值。 权限版本
实施步骤 前提条件 创建依赖包。 登录FunctionGraph控制台,在依赖包管理页面点击“创建依赖包”。 填写相关参数,完成依赖包创建。 在“函数列表”页面单击“创建函数”完成函数创建。 其中委托需要创建能够授权工作流FunctionGraph访问OBS的权限,创建方式参考创建委托。
所有开发者均可以创建用于数据处理的算子,审核通过后发布至DWR算子市场,开放给所有华为云用户使用。 发布之前请按要求提供算子的基本信息、上传算子所需文件、配置算子参数。 发布区域:北京四、上海一、上海二、广州、新加坡 发布算子 OBS 2.0支持创建工作流 工作流主要是对算子进行编排,这样DWR就可以按
告。 图3 上传文件 配置算子参数。 参数 说明 Inputs参数(可选) 提供算子入参中动态参数对应的参数值,其Key值需要与动态参数中保持一致。 动态参数(可选) 提供算子入参的参数列表,可配置静态参数或动态参数,动态参数需要从Inputs参数中根据定义的Key取值。 权限版本
获取DWR工作流是否开通授权 √ √ 更新工作流参数 √ x 更新用户第三方算子 √ x 恢复的工作流实例 √ x DWR工作流开通授权 √ x 同意第三方算子服务协议 √ x 列举工作流 √ √ 列举华为云系统算子 √ √ 列举公共算子 √ √ 列举用户第三方算子 √ √ 禁用用户第三方算子
算子提供方可以获取用户在DWR中配置的参数。这也是算子提供方获取用户配置参数的主要方式,后文将对该参数进行更加详细的介绍。bucketname以及object的值根据测试需要,点击函数测试参数配置。 obsclient形参中的server参数为OBS的endpoint,详情参见地区和终端节点。
在工作流名称后使用’/’加上参数名,再使用’_’连接加上指定参数值.不通参数间使用’,’分隔 <对象url>?x-workflow-graph-name={工作流名称}/<参数名>_{参数值} 对应的参数名请点击工作流详情后查看: 触发工作流: 注意:当参数名有下划线时,需将下划线转成%5F 直接在DWR工作流界面修改
您首先需要在FunctionGraph导入自定义算子需要的函数依赖包。然后需要在FunctionGraph创建自定义抽帧截图函数。之后需要在DWR工作流编排界面完成配置动态参数,创建同步工作流。最后触发工作流进行验证。 图1 操作流程 父主题: 抽帧截图(自定义算子)
了预置的算子和自定义函数能力,覆盖数据处理的各种场景。预置算子的详细介绍,请参见官方算子一览。用户在自行开发自定义函数时,函数的输入参数和输出参数需要遵守自定义函数开发规范。 DWR支持异步和同步两种方式启动工作流,其中同步方式支持直接返回数据: 通过事件触发器启动工作流(异步方式)
创建视频转码工作流 场景介绍 针对使用DWR做视频转码的场景,如果需要每个对象转码任务的参数不同,可通过给对象增加对象元数据(例如:x-obs-meta-transcode-commands: base64(commands)),再使用DWR集成自定义函数的方式来实现视频转码。 具体的工作流视图如图1所示。
单击界面右上角的“创建工作流”,进入“工作流编排”页面。 将左侧预置的模板或自定义的函数拖拽至编排区域,同时在右侧属性面板配置基本属性和动态参数,配置完成后图标将由白色填充变为蓝色填充。 各预置模板及自定义函数的参数配置说明,请参见官方算子一览。 使用视频解析、抽帧截图、媒资转码等模板需要先在MPC中开启桶授权,详情请参见权限说明。
为“piccomp-output”。详细介绍参见质量变换参数说明。 保存并填写工作流名称“piccomp”。 图1 编排工作流 在DWR服务中创建事件触发器,如图2所示。 在工作流列表中,单击工作流“piccomp”操作列的“创建事件触发器”进行触发器的创建,如图2所示。 事件源存储桶选择“piccomp”。
进入DWR页面。 在左侧导航栏选择“工作流”,进入“工作流”页面。 在工作流列表中,单击待关联工作流操作列的“创建事件触发器”进行触发器的创建。 图1 创建事件触发器 配置事件触发器参数。 表1 事件触发器参数说明 参数 说明 触发器名称 事件触发器的名称,用户自定义。同一桶内的触发器名称不允许重复。
12:38:10 GMT body(stream body/json body) 表1 请求参数说明 参数 是否必选 参数类型 描述 x-workflow-graph-name 是 字符串 工作流名称和运行参数,比如:x-workflow-graph-name=gramname/p1_v1,
保存并填写工作流名称“MediaMetadata”。 图1 编排工作流 在DWR服务中创建事件触发器。 在工作流列表中,单击工作流“MediaMetadata”操作列的“创建事件触发器”进行触发器的创建,如图2所示。 事件源存储桶选择“piccomp”。 触发器执行存在一定的延时,大概5分钟生效。
测试、发布。 算子执行原理 图2 算子执行原理 动态参数:算子提供方定义的用户输入,最终由Event传递真实值。例如,云市场 appkey,算子回调函数地址。 Event :算子的触发事件信息,例如OBS对象信息,桶名,动态参数。 父主题: 发布下载OBS对象的算子