01 背景

音视频作为信息传播中流量占比最大的部分在各行业的业务中都弥足重要,而不同的业务场景中对音视频的处理逻辑可能具备行业的特殊性。

公有云虽然提供大量的视频处理服务供用户选择,但依然不能做到全面覆盖用户的特殊流程及定制化需求,使用 COS 工作流处理结合云函数定制逻辑此时就是一个绝佳选择,帮助用户快速创建满足需求的各种音视频处理服务。

02 应用场景

  • 快速接入用户自建转码集群,兼容用户原有业务;
  • 支持行业特殊格式与处理逻辑,接入电影、安防等特殊行业;
  • 支持用户自定义处理逻辑,满足各场景下定制流程需求;
  • 触发工作流批量模板化处理,满足视频网站、教育、社交互联行业常见音视频处理需求;

03 方案优势

  • 加速开发:不再需要关注资源运维与组件开销,极大地降低了服务架构搭建的复杂性;
  • 降低开销:空闲时没有资源在运行,函数执行时按请求数和计算资源的运行时间收费,价格优势明显;
  • 高可用、高扩展:根据请求自动平行调整服务资源,拥有近乎无限的扩容能力,且免除单可用区运行的故障风险;

04 配置步骤

1.到 COS 控制台存储桶详情,创建工作流,可以自定义过滤后缀过滤规则,创建自定义函数节点。

2.在函数节点弹窗里,点击新建函数,浏览器新标签会打开 SCF 的创建云函数的页面。

3.创建云函数步驟:

A. 选择“COS 数据工作流音视频转码”模板;

B. 配置足够的内存、执行超时时间;

C. 该函数模板支持五个环境变量;

  • targetBucket 目标存储桶,必填;
  • targetRegion 目标存储桶地域,必填;
  • targetKeyTemplate 目标路径模板,可选,默认${InputPath}${InputName}_transcode.$
  • ffmpegTemplate 转码命令模板,必填,例如${ffmpeg} -loglevel error -i ${source} -r 10 -b:a32k $
  • localTmpPath临时保存路径,当绑定CFS时可以更改临时路径,可选,默认 /tmp

    D. 启用权限配置,绑定包含当前存储桶读权限和转码后存储桶写权限的角色,创建运行角色请看文档;

    E. 点击完成

如需新建运行角色,可以选择“云函数”作为角色载体,配置 QcloudCOSFullAccess 权限,或新建角色后自行绑定只包含存储桶的权限。

4.回到刚才创建工作流的页面,选中刚创建的自定义转码函数,并保存工作流,在工作流列表页开启工作流。

5.上传文件,查看工作流处理成功后,可以看到上传的视频已成功转码保存为新的文件。

05 结语

更多自定义处理能力,等你来实现!

如果您有使用 COS 工作流 + Serverless 云函数开发更多有趣功能的想法,请前往: https://cloud.tencent.com/act/pro/cos_scf?from=14774!

COS数据工作流+云函数最佳实践 - 自定义音视频转码的更多相关文章

  1. 探索云数据库最佳实践 阿里云开发者大会数据库专场邀你一起Code up!

    盛夏.魔都.科技 三者在一起有什么惊喜? 7月24日,阿里云峰会·上海——开发者大会将在上海世博中心盛大启程,与未来世界的开发者们分享数据库.云原生.开源大数据等领域的技术干货,共同探讨前沿科技趋势, ...

  2. “行业客户云原生最佳实践日” 亮相KubeCon上海

    2018年11月13日至15日,由CNCF主办的KubeCon + CloudNativeCon将首次登陆中国上海,这是全球范围内规模最大的Kubernetes和云原生技术盛会. 唯一聚焦客户实践的分 ...

  3. DTSE Tech Talk | 第10期:云会议带你入门音视频世界

    摘要:本期直播主题是<云会议带你入门音视频世界>,华为云媒体服务产品部资深专家金云飞,与开发者们交流华为云会议在实时音视频行业中的集成应用,帮助开发者更好的理解华为云会议及其开放能力. 本 ...

  4. 基于AngularJS的前端云组件最佳实践

    AngularJS是google设计和开发的一套前端开发框架,他能帮助开发人员更便捷地进行前端开发.AngularJS是为了克服HTML在构建应用上的不足而设计的,它非常全面且简单易学习,因此Angu ...

  5. 微信小程序自动化测试最佳实践(附 Python 源码)

    本文为霍格沃兹测试学院测试大咖公开课<微信小程序自动化测试>图文整理精华版. 随着微信小程序的功能和生态日益完善,很多公司的产品业务形态逐渐从 App 延升到微信小程序.微信公众号等.小程 ...

  6. 海量大数据大屏分析展示一步到位:DataWorks数据服务对接DataV最佳实践

    1. 概述 数据服务(https://ds-cn-shanghai.data.aliyun.com)  是DataWorks产品家族的一员,提供了快速将数据表生成API的能力,通过可视化的向导,一分钟 ...

  7. 同步mysql数据到ElasticSearch的最佳实践

    Elasticsearch是一个实时的分布式搜索和分析引擎.它可以帮助你用前所未有的速度去处理大规模数据.ElasticSearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全 ...

  8. 弹性配置为构建提速 - CODING & 腾讯云 CVM 最佳实践

    CODING 中提供了内置云主机用来执行持续集成(CI)中的构建计划,能够胜任大部分构建任务.但如果碰上了大型项目的构建,或者需要在本地服务器生成构建成果,单个计算资源就显得有点捉急了.针对这一部分需 ...

  9. COS 音视频实践 | 数据工作流助你播放多清晰度视频

    前言 你是否遇到过这样的场景: 兴致勃勃地观看心爱的视频,正当到了激动人心的高潮部分,却突然因为网速过差被迫陷入"转圈圈"的人生以及社会的大思考中. 又或者是身为网速畅通无阻的vi ...

  10. ASW 工作流最佳实践(二):使用 ASW 并发调用函数

    在音视频转码.ETL 作业处理.基因数据处理等诸多场景中,我们都可以通过工作流并行调用云函数,将任务进行并行处理,大大提高任务处理的吞吐量,满足应用场景的高实时性.高并发能力. 在<使用 ASW ...

随机推荐

  1. Linux_动态库与静态库(其一)

    1.动态库和静态库的定义 动态库(.so):动态库是编译后不嵌入目标文件中的共享库,在程序运行的时候才去链接动态库的代码,可以被多个程序共享使用,通常以 .so 结尾. 静态库(.a):静态库是将一组 ...

  2. Android Qcom USB Driver学习(零)

    该系列文章总目录链接与各部分简介: Android Qcom USB Driver学习(零) 文章标题 文章链接 文章简介 Android Qcom USB Driver学习(零) https://b ...

  3. ts 的 declare 用途

    declare namespace API { /** 新增数据集合 */ type CreateDataSet = { createdAt: string; dname: string; headI ...

  4. .NET高级调试 - 3.12 sosex实用的几个命令介绍

    简介 sosex是sos的一个拓展,主要目的是将一些繁琐的排查过程脚本化,比如探测死锁,设置断点等.更加方便快捷协助我们排查问题. 比较可惜的是,在.net core中不可用,作者已经不更新了. 更多 ...

  5. kotlin更多语言结构——>异常

    异常类 Kotlin 中所有异常类都是 Throwable 类的子孙类.每个异常都有消息.堆栈回溯信息以及可选的原因 使用 throw-表达式来抛出异常 throw Exception("H ...

  6. KubeSphere 部署 Kafka 集群实战指南

    本文档将详细阐述如何利用 Helm 这一强大的工具,快速而高效地在 K8s 集群上安装并配置一个 Kafka 集群. 实战服务器配置(架构 1:1 复刻小规模生产环境,配置略有不同) 主机名 IP C ...

  7. 放大招!青云企业级容器平台 QKCP 迎来重磅升级

    青云企业级容器平台 QKCP 3.2 重磅发布.QKCP(QingCloud KubeSphere Container Platform)是青云科技基于 KubeSphere 开源容器平台打造的企业级 ...

  8. KubeSphere 开源社区 2022 年度回顾与致谢

    2022 年,国内的云原生技术生态日趋完善,细分技术项目也不断涌现,形成了完整的支撑应用云原生化的全生命周期技术体系.基础设施即代码.微服务.Serverless 等技术,促使基础设施资源向更加灵活弹 ...

  9. 二叉树遍历(C语言版)

    二叉树遍历 先序 递归 int *res; void preorder(struct TreeNode *root, int *returnSize) { if (root == NULL) retu ...

  10. C++ stl锁的使用

    我们在日常开发中经常要用到锁,这里记录一下实际开发过程中stl提供的锁的使用. 1.读写锁 读写锁算是用到的比较多的一种类型,主要实现对于同一个共享数据区,一个时间点只能有一个线程进行写(增删改),但 ...