当前位置: 首页 > news >正文

我为什么选用转码的方式调整码率

视频转码,基本上是被认为不适合用在实时的视频应用中的,因为那样需要网关有很强的计算能力,否则就会导致明显的延迟。所以就会有各种可扩展的编码方案出来解决这个问题,比如可扩展编码(SVC),精细可扩展编码(FGS),渐进的精细可扩展编码(PFGS),多描述编码(MDC)。使用这些编码方式,网关可以很方便的对码流进行裁减,不用做多少计算。
但是,视频转码有个显著的优势,那就是简单,这种简单表现在两个方面。
首先,以上那些编码方案部署复杂,需要视频发送端和接收端都做相应的变化。而如果使用转码的方式,码率调节对视频的发送和接收者完全透明,客户端不需要做任何特殊的改变。一切的工作都只需要对网关进行改进就行了。
第二,转码的实现也很简单,解包,解码,下采样(可选),编码,打包。对任何编码格式都可以统一的处理,兼容性很好。当然,这种方式效率不高。
就这两点方便简单,就是那些采用特殊的编码方式的码率调节方案所不能具备的。但是它的缺点也是很明显的,那就是计算量太大。但是,我认为这个不是很严重的问题。因为计算机硬件一直都发展的非常快,以前那些看来不可能的事现在很多都成了现实。转码转发本身可以并行的,在多核越来越火的现在,通过多线程并行,充分发挥多核的优势,实时对多个视频流转码不是什么难事。何况还有GPU这么强大的东西,这个计算能力已经超过CPU的芯片如果也参加到视频编码的工作中来,编码速度会更快。
最简单的往往是最好的,我相信转码会是最好的选择。

相关文章:

  • yunos运行linux程序,YunOS开放平台
  • linux xtrabackup备份恢复,xtrabackup 备份和恢复docker容器内的mysql
  • Free Mind 06年2月 SourceForge 推荐项目
  • linux异常断电检查,linux断电后,出现fsck失败的解决方法
  • 【FreeMind】简介信息
  • 深度Linux怎样关闭休眠,linux内核是如何支持深度睡眠(deep sleep)方式的?
  • Freemind中文汉化版0.8.0b4
  • linux sendmail 实现 outlook 功能,利用sendmail简单实现域内、域间邮件收发(linux5.4)...
  • c语言程序设计国外,有没有了解,国外大学C语言 一般用啥IDE
  • MySQL 5 on Linux手动安装方法与中文解决方案完整攻略
  • c语言编程a b等于11,最难的C语言程序题之第二关
  • 假期读好书——力荐《八位大学校长》
  • c语言非法标识符是什么意思,123H为什么是非法标识符
  • 大学生学软件必看
  • c语言寒假作业答案,寒假作业的答案
  • SegmentFault for Android 3.0 发布
  • 2018一半小结一波
  • Android系统模拟器绘制实现概述
  • css属性的继承、初识值、计算值、当前值、应用值
  • ES6核心特性
  • ES6系列(二)变量的解构赋值
  • express + mock 让前后台并行开发
  • Java的Interrupt与线程中断
  • open-falcon 开发笔记(一):从零开始搭建虚拟服务器和监测环境
  • Python3爬取英雄联盟英雄皮肤大图
  • seaborn 安装成功 + ImportError: DLL load failed: 找不到指定的模块 问题解决
  • 初识MongoDB分片
  • 基于Javascript, Springboot的管理系统报表查询页面代码设计
  • 如何合理的规划jvm性能调优
  • 微信小程序实战练习(仿五洲到家微信版)
  • 正则与JS中的正则
  • “十年磨一剑”--有赞的HBase平台实践和应用之路 ...
  • ​queue --- 一个同步的队列类​
  • #include到底该写在哪
  • #NOIP 2014#Day.2 T3 解方程
  • (1)(1.8) MSP(MultiWii 串行协议)(4.1 版)
  • (ctrl.obj) : error LNK2038: 检测到“RuntimeLibrary”的不匹配项: 值“MDd_DynamicDebug”不匹配值“
  • (Matalb时序预测)PSO-BP粒子群算法优化BP神经网络的多维时序回归预测
  • (八)Flask之app.route装饰器函数的参数
  • (附源码)php新闻发布平台 毕业设计 141646
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (学习日记)2024.03.12:UCOSIII第十四节:时基列表
  • (原)本想说脏话,奈何已放下
  • .bat批处理(一):@echo off
  • .desktop 桌面快捷_Linux桌面环境那么多,这几款优秀的任你选
  • .NET 5种线程安全集合
  • .NET 设计一套高性能的弱事件机制
  • .NET/C# 反射的的性能数据,以及高性能开发建议(反射获取 Attribute 和反射调用方法)
  • .NET/C# 在代码中测量代码执行耗时的建议(比较系统性能计数器和系统时间)...
  • .netcore 如何获取系统中所有session_ASP.NET Core如何解决分布式Session一致性问题
  • .net快速开发框架源码分享
  • // an array of int
  • @Builder用法
  • @zabbix数据库历史与趋势数据占用优化(mysql存储查询)
  • [ 隧道技术 ] cpolar 工具详解之将内网端口映射到公网