背景

随着前端摄像机的清晰度不断提升,其码流和数据量成倍增长。然而一些终端的处理能力有限,无法支持高清的分辨率;或者需要用到公网传输,带宽无法满足高清的码流的需求等。视频转码是一个高运算负荷的过程,需要对输入的视频流进行全解码、视频过滤/图像处理、并且对输出格式进行全编码。由于视频转码计算量很大,单一的计算机不可能实现整个监控系统内的摄像头实时视频数据的转码。cVideo研发了云端转码技术,将视频转码计算放大云端,实现整个系统内的实时视频转码,以满足用户对不同分辨率,不同码流,不同终端的使用需求。

产品简介

视频云转码平台是云创大数据自主研发的基于云架构综合调度平台的视频处理软件,它可对现有视频文件按不同格式、分辨率等参数进行分布式转码,达到负载均衡、统一管理,任务分发等功能目标,操作简单便捷,存储性能可靠。

架构概述

cVideo的云端转码平台

中心服务器

负责获取用户从客户端或者其他的上层系统发出的指令,使用JobKeeper综合调度各个系统集群,实现整套cVideo的控制机制。

cStor存储服务器

用以长期存储视频数据,以备调阅及重新处理等需求。

cProc处理服务器

提供视频文件的云端转码所需的大规模数据处理能力和分布式处理方式。

Web界面

与用户的交互平台,用以向中心服务器发送各种控制指令。

上图简要描述了cVideo的云端转码平台。用户可以将需要转码的任意格式、任意分辨率的视频文件存储到cStor存储服务器中,然后通过客户端的Web操作页面,根据需求提交转码请求,系统根据设定的切片数量,对源文件的大小和时间轴长度进行拆分转码任务。通过JobKeeper云调度系统,自动负载均衡,将其分发到相应的处理节点,待分布式的转码完成后,再进行中间结果文件的合并与时间轴重构,并将视频文件存放在cStor的指定位置。这些视频文件经过索引建立一一对应关系,在cProc云处理集群中进行数据处理,实现对视频文件的转码,并将结果保存在cStor存储服务器中。

cVideo云转码Web客户端界面如下所示:

Web客户端界面

cVideo云端转码平台构架

cVideo云端转码平台,是在服务器集群上部署一整套基于云架构的视频处理软件,包括接入层、处理层、资源层、调度控制模块。

上图为简化的cVideo云转码平台框图,其核心内容是对各类视频文件的转码。基于云计算的模式,采取海量分布式JobKeeper云调度架构,以集群的形式共同对外服务。实现云端转码、动态伸缩、监控管理等需求。将转码好的视频文件保存于cStor存储服务器中,并给用户提供对应接口方便调用。

方案涉及技术分析

根据以上方案架构,涉及到的具体技术包括了cVideo的云端转码技术、JobKeeper云调度方法、cProc云处理框架、以及cStor云存储技术。其中cVideo的云端转码技术负责实现视频文件的拆分、转码、合成等上述功能,而JobKeeper和cProc负责综合管理和统一调度,实现云内计算机的联动和各类保障,共同对外提供服务,cStor则负责提供高可靠的海量数据存储能力。

随着前端摄像机的清晰度不断提升,其码流和数据量成倍增长。然而一些终端的处理能力有限,无法支持高清的分辨率;一些需要用到公网传输,带宽无法满足高清的码流的需求;还有一些需要将已有视频文件转化成不同格式的需求等。

视频的编码格式主要的有MPEG、H264、DivX、WMA、RM等,封装格式主要有avi、ps、ts、mov、mkv、mpg等,而不同的播放器对格式的支持也不同,因此不同终端对视频流格式也有着特殊的需求。

面对以上这些因素,为了满足不同的需求,cVideo研发了云端转码技术,以满足用户对不同视频格式、不同分辨率,不同码流,不同终端的使用需求。不同分辨率的转码效果如下所示:

转码前

转码后

针对视频文件的分布式云转码,由于视频文件已经存在,因此可以充分发挥云计算分布式的计算性能,将视频文件按时间切分为许多块,每个块被分配到不同的处理节点,待所有块都处理完毕后,再进行重新整合、重构时间轴、封装,从而实现转码,任务分配和调度由JobKeeper完成。

cVideo云转码的主要优势

很高的性价比

cVideo构建于cStor云存储、cProc云计算平台之上,有着低廉、高可靠性的海量存储能力和可扩展能力,当用户存储需求增长时,也仅需添加与硬盘价格相仿的cStor存储节点即可,这将大幅降低用户的投资及升级维护费用,系统规模越大越能体现出性价比。

优异的转码性能

对于视频文件,cVideo使用分布式的转码处理,以往使用转码软件在单机转码需要1小时的文件,使用cVideo云转码系统在几分钟(具体时间与处理服务器数量及运转状态有关)内就可以完成转码工作。

调度技术

cVideo在cProc云计算平台上采用JobKeeper云调度机制,将视频这类非结构化数据分发给云中对应节点,稳定的合理化分配和执行转码任务,自动负载均衡,实现云端转码。

平台功能及性能描述

功能描述

cStor当前云转码平台的系统版本为测试的Demo版,前期需求多集中于ts格式的转码,平台上层应用支持的格式相对较少,但底层编解码库已经支持绝大多数常用格式。

目前支持的视频封装格式:“.ts”、“.mp4”、“.mpg”;

目前支持的视频编码格式:“H264”、“MPEG4”、“MPEG2”;

目前支持的音频编码格式:“FAAC”、“MPEG1”、“MPEG2”;

目前支持的分辨率:基本支持大部分辨率;

针对“H263”、“XVid”、“MP3”、“LPCM”等音视频编码格式将在下一版本中进行支持,对于其他格式的支持可以根据项目具体需求,也只需根据底层编解码库对上层应用进行相应添加即可,十分方便。

性能描述

云转码的处理性能与服务器CPU、内存、网络、转码文件分辨率、格式转换需求、任务分片数等多方面因素均有关联,因此统一的标准较难给出。下图为云转码平台测试的结果示意图:

转码性能示意图

与存储共用节点情况下的性能如上图所示,随着转码服务器数量的增多,转码单个文件需要的时间不断减少,整体性能基本线性增加。同时,对分片数合理分配可以进一步优化转码的效率。

云转码平台支持动态扩容,随着需求的不断增加,当现有处理能力无法满足处理总量时,只需要增加处理节点,无需停止服务,即可动态地增加处理性能,实现平台处理能力扩容。

相关测试

目前,云转码平台已经在深圳天华传媒、南京广电等多家单位进行过测试,通过了相关码流分析软件的检测,视频拼接处无卡顿、ts流无PCR-DTS抖动问题。并且通过了在实际机顶盒推流中的各项指标测试,云转码的性能也得到了各家单位认可。

市场应用

应用范围 应用描述 典型用户
安防领域(平安城市、智慧城市) 海量数据处理、视频格式转换、高清视频转码 交管局、安防行业
媒体、娱乐 海量数据存储、海量数据处理、视频格式转换、高清节目转码 电视台、媒体制作相关行业

媒体转码切片_cVideo云转码系统相关推荐

  1. php 云打码返回值,云打码示例

    验证码处理: - 1.手动识别验证码 - 2.云打码平台自动识别验证码 云打码平台处理验证码的实现流程: - 1.对携带验证码的页面数据进行抓取 - 2.可以将页面数据中验证码进行解析,验证码图片下载 ...

  2. 云转码源码(视频云转码)双码率+秒切

    我们之前讨论过一种解决方案是利用云服务的力量对视频进行转码.虽然可以使用本地计算进行转码,但过去三年生成的大量内容--以及大部分内容是以 4K 格式获取的事实--使得云转码成为一个更具吸引力的主张(即 ...

  3. 视频云转码源码PHP|m3u8切片程序双码率+秒切

    视频云转码源码可以从管理控制台内提升特定转码作业的优先级,以手动增加等待作业的优先级.视频云转码源码作业可以在数据中心之间进行平衡.因此,如果一个DC的转码作业队列比通常更长,则可以在源视频文件与另一 ...

  4. 云转码:express-ffmpeg 免费开源云转码切片平台

    云转码:express-ffmpeg 云转码express-ffmpeg是基于nodejs开发的云转码切片管理平台,源码开源并且完全免费,每个想要学习ffmpeg操作的人都可以安装使用,安装之前需要系 ...

  5. 云转码express-ffmpeg 最简单易用的云转码切片管理平台

    功能介绍 云转码express-ffmpeg采用ffmpeg作为转码和切片的工具,最大限度的压缩视频文件,最快速度的切片能力,并且开源免费,提供给大家学习ffmpeg的用法. 官方网站 云转码expr ...

  6. 和云打码差不多的有哪些

    云打码是一种用于识别图片.验证码.文字的服务,有许多类似的服务可供选择,例如: 超级鹰(Chaojiying) 打码兔(Dama2) 云打码网(Yundama) 叉叉助手(Chacha) 云打码平台( ...

  7. PHP双码率视频云转码服务系统源码 m3u8切片秒切html5播放器 全开源

    介绍: PHP双码率视频云转码服务系统源码 m3u8切片秒切html5播放器 全开源 PHP双码率视频云转码服务系统源码 m3u8切片秒切 版本特点: 1.修正了双码率无法转码.切片问题,优化&quo ...

  8. 华为云媒体査勇:华为云在视频AI转码领域的技术实践

    随着5G的落地和消费终端的不断升级,消费环节对视频画质的要求也越来越高,为了给消费者带来更清晰.更逼真和更具沉浸感的观感体验,对云端视频处理技术也提出了更高的要求.在2022 LiveVideoSta ...

  9. PHP双码率视频云转码服务系统源码 m3u8切片支持秒切及api上传和防盗功能,亲测极速播放

    网站里面存放视频在当前是一个刚需了,对于一些网站的视频存放途径可以是多种的.要么存放在oss云存储进行播放,要么直接存自己服务器.但是奈何服务器的带宽有限,因此可以进行视频切开分片加载.这样可以将视频 ...

最新文章

  1. Selenium Webdriver原理终于搞清楚了
  2. MySQL的内置函数
  3. 实现流水灯以间隔500ms的时间闪烁(系统定时器SysTick实现的精确延时)
  4. macOS彻底卸载/删除Microsoft相关的程序
  5. Qt 布局(水平、垂直、网格)
  6. 创建型模式二:工厂方法模式
  7. 面试题_翻转句子中单词的顺序
  8. flash计算机代码怎么写,应用程序操作NorFlash示例代码分享(norflash接口使用方法)...
  9. Java使用FTP上传文件被损坏的问题
  10. java的链表(LinkedList类)
  11. 《IT时代周刊》:雅虎兵败中国
  12. echarts制作中国地图
  13. 360一键root su浅析
  14. mysql 查找差值最小_mysql获取两个表中日期字段的最小差值
  15. 死后存活在互联网的大脑应用结构图
  16. 【程序源代码】外卖侠源码
  17. 蓝鲸智云功能剖析介绍
  18. 在线点餐外卖系统-基于SprintBoot
  19. 陌陌走向全面衰退真怪不得疫情
  20. 提高英语 - 口语和思维

热门文章

  1. extend implements多个对象_「每天三分钟跟我学Java」之Java面向对象的封装、继承、多态...
  2. aftool刷工具提示15天_【15天】【指数600+】关键词百度首页【实战分析】【面授学员】...
  3. python知识笔记_[Python笔记]第一篇:基础知识
  4. xampp for mac mysql_【XAMPP和Xampp For Mac哪个好用】XAMPP和Xampp For Mac对比-ZOL下载
  5. 在文件编辑器中添加dock菜单项_将应用程序添加到Mac 的Dock的简便方法
  6. 进入环境_大学新生,进入新环境该怎样和舍友、同学相处
  7. python 元组 列表 字典区别_Python列表、元组、字典、集合、字符串的异同总结
  8. 报错,Error starting ApplicationContext. To display the conditions report re-run your application with
  9. 解决Hadoop总是处于安全模式的问题
  10. 《天天数学》连载32:二月一日