Windows平台真实时毫秒级4K H264/H265直播技术方案探讨

背景

在刚提出4K视频的时候,大多数人都觉得没有必要,4K的出现,意味着更高的硬件规格和传输要求,1080P看的很爽、很清晰,完全满足了日常的需求。随着电视的尺寸越来越大,原本1080P成像已经无法满足人们对于细节的极致追求,4K视频不仅成像更细腻,在细节处理上优势也非常明显,颜色也更亮丽、饱满,逼真,给人身临其境的感觉。4K视频具有高分辨率、宽色域、高动态范围等优势,随着5G技术和H.265(HEVC)编码标准的出炉,4K视频直播迎来了曙光。

一张图解释4K VS 1080P

1080p

Often, 1080p is referred to as “Full HD.” In a 1080p television, there are 1,920 columns multiplied by 1,080 rows for a total of 2,073,600 pixels — more than twice as many pixels as you’ll find in a 720p screen. For a while now, 1080p has been the industry standard for high-definition displays, and most content (that is, television broadcasts, shows, and movies) is produced and distributed in 1080p.

4K Ultra HD

The next level of HD is 4K — often called “Ultra HD” or UHD. Technically, the name is a bit of a misnomer, because there are 3,840 columns and 2,160 rows of pixels, which is why you’ll occasionally see this resolution referred to as 2160p. That’s a total of 8,294,400 pixels, which is four times as many pixels as a Full HD 1080p display and nine times as many pixels as a 720p display.

Difference between 4K and 1080p

 

Windows平台真实时4K直播解决方案

先来解释下什么是实时视频,实时视频就是视频图像从产生到消费完成整个过程人感觉不到延迟,只要符合这个要求的视频业务都可以称为实时视频。关于视频的实时性归纳为三个等级:

  • 伪实时:视频消费延迟超过 3 秒,单向观看实时;
  • 准实时: 视频消费延迟 1~3 秒,能进行双方互动但互动有障碍;
  • 真实时:视频消费延迟 < 1秒,平均 500 毫秒。

基于英伟达显卡硬编码(NVIDIA NVENC)的RTMP、RTSP低延迟技术方案:

4K相当于4个1080P,Windows平台软编码有些困难,特别是h265,姑且不说4K软编,4K软解在一些配置一般的机器都比较吃力,基于此,大牛直播SDK(Github)实现了Windows平台特定机型硬编、硬解码低延迟解决方案。

  • 针对编码这块,我们实现了基于英伟达显卡硬编码(NVIDIA NVENC)的RTMP、RTSP低延迟技术解决方案,无论是H265还是H264 4K 30fps都能编的动(以下测试截图,基于GeForce RTX 2060显卡);
  • 针对解码播放,特别是Windows平台多路播放诉求下,我们实现了Windows平台特定机型硬解码。

通过特定机型硬编码、解码整体技术方案下,我们把4K下的RTMP的整体延时控制在180-300毫秒,实现了真实时技术解决方案,无图无真相:

RTMP扩展H265直播

摄像头采用“海康威视监控摄像头 800万4K超清USB直播摄像头 网络课程远程视频会议 台式机电脑摄像机 2CS54U0B-SD”。

RTMP推送端H265 4K硬编码配置(对应 SmartPublisherDemo.exe):

h265 硬编码推送端配置

RTMP播放端 H265 4K硬解码效果(对应 SmartPlayer.exe):

h265 4k硬解播放效果

 RTMP H265 4K编码和解码GPU, CPU占用情况:

 

推送和播放具体资源占用

RTMP H265 4K延时效果:

h265 4k延时效果

从图上可以看出延时也就100多毫秒。

RTMP H264 直播

RTMP推送端H264 4K硬编码配置(对应 SmartPublisherDemo.exe):

h264 4k推送端配置

RTMP播放端H264 4K硬解码效果(对应 SmartPlayer.exe):

h264 4k播放端效果

RTMP H264 4K 硬编解码GPU, CPU占用情况:

h264 4k gpu-cpu1

h264 4推送和播放gpu-cpu

RTMP H264 4K直播低延时效果:

h264 4k低延时效果

总结:

从整体测试来看,英伟达硬编码(NVENC)能达到期望的效果,可以满足毫秒级低延时大分辨率需求,同时NVENC也提供了灵活的码率控制策略来满足不同的编码需求。

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/553093.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Win11怎么设置电脑开机密码和锁屏密码

相信很多用户都已经用上了微软公司为大家提供的全新Win11系统了&#xff0c;Win11与Win10系统有很大区别&#xff0c;不仅仅体现在界面设计和UI上面&#xff0c;狠多以前Win10用户固定的功能有些取消了&#xff0c;有些挪位置了&#xff0c;这让用惯了Win10系统的用户非常不习惯…

如何在Android实现录屏直播

许多开发者在做智慧教室同屏亦或会议同屏时&#xff0c;基于Andriod平台采集屏幕并编码推送&#xff0c;往往遇到各种各样的问题&#xff0c;以下就我们开发过程中的一些技术考量做个分享&#xff0c;权当抛砖引玉&#xff1a; 协议选择、数据来源和处理 1. 内网环境下&#…

Win11关机后自动开机怎么办 Win11关机后自动开机的解决方法

相信有不少小伙伴已经下载了Win11操作系统进行体验了&#xff0c;但有一些小伙伴碰到了关机之后电脑突然又自动开机的情况&#xff0c;那么碰到这个问题应该怎么办呢?下面就和小编一起来看看有什么解决方法吧。 Win11关机后自动开机的解决方法 1、我们可以先在搜索框中搜索并…

Windows平台RTMP/RTSP播放器如何实现实时音量调节

为什么要做实时音量调节 RTMP或RTSP直播播放音量调节&#xff0c;主要用于多实例&#xff08;多窗口&#xff09;播放场景下&#xff0c;比如同时播放4路RTMP或RTSP流&#xff0c;如果音频全部打开&#xff0c;几路audio同时打开&#xff0c;可能会影响用户体验&#xff0c;我…

TIM待办事项怎么删除 TIM删除待办事项的教程

TIM新建的待办事项没用的话或者搞错了&#xff0c;可以直接删掉。该怎么删除tim中的待办事项呢?下面我们就来看看详细的教程。 1、打开电脑上的个人头像。 TIM待办事项怎么删除? TIM删除待办事项的教程 2、点击待办&#xff0c;查看新建的待办事项。 TIM待办事项怎么删除…

Android同屏或摄像头RTMP推送常用的数据接口设计探讨

前言 好多开发者在调用Android平台RTMP推送或轻量级RTSP服务接口时&#xff0c;采集到的video数据类型多样化&#xff0c;如420sp、I420、yv12、nv21、rgb的&#xff0c;还有的拿到的图像是倒置的&#xff0c;如果开发者在上层转换后&#xff0c;传到底层编码处理&#xff0c;…

跨平台屏幕/摄像头RTMP推流模块设计要点

经常有企业或开发者有这样的疑惑&#xff0c;明明看到网上的demo&#xff0c;一个RTMP推送&#xff0c;五六个接口就搞定了&#xff0c;你们咋就搞得这么复杂&#xff1f; 以大牛直播SDK的&#xff08;Github&#xff09;Windows RTMP推流为例&#xff0c;我们的接口要100多个…

企业微信怎么下载资料 企业微信下载资料教程

打开电脑&#xff0c;点击桌面企业微信; 企业微信怎么下载资料&#xff1f;企业微信下载资料教程 进入企业微信&#xff0c; 点击微盘; 企业微信怎么下载资料&#xff1f;企业微信下载资料教程 之后&#xff0c;点击公司资料; 企业微信怎么下载资料&#xff1f;企业微信下…

Android平台Camera2数据如何对接RTMP推流到服务器

1. Camera2架构 在Google 推出Android 5.0的时候, Android Camera API 版本升级到了API2(android.hardware.camera2), 之前使用的API1(android.hardware.camera)就被标为 Deprecated 了。 Camera API2相较于API1有很大不同, 并且API2是为了配合HAL3进行使用的, API2有很多API…

钉钉一个人怎么多部门 钉钉一个人加入多个部门的技巧

公司的组织机构总是会出现少几个人员&#xff0c;一个人身兼多职的情况&#xff0c;这对于我们设计审核流程的人来说是很多痛的一件事&#xff0c;会写好几种的条件判断&#xff0c;一有人离职了就得重新调整流程。如果一个人可以同时加入多个部门&#xff0c;这样这个问题就很…

IE浏览器下如何低延迟播放RTSP或RTMP流

首先&#xff0c;虽然本文是介绍IE浏览器下OCX控件播放RTSP或RTMP&#xff0c;但这种方式并不推荐&#xff0c;毕竟它只能用于IE浏览器环境下&#xff0c;局限太大&#xff0c;而且随着微软IE浏览器的更新&#xff0c;不确定后续支持情况。当然&#xff0c;话说回来&#xff0c…

Android、iOS平台RTMP/RTSP播放器实现实时音量调节

介绍移动端RTMP、RTSP播放器实时音量调节之前&#xff0c;我们之前也写过&#xff0c;为什么windows播放端加这样的接口&#xff0c;windows端播放器在多窗口大屏显示的场景下尤其需要&#xff0c;尽管我们老早就有了实时静音接口&#xff0c;相对实时静音来说&#xff0c;播放…

千牛如何装修店铺 千牛装修店铺的教程

1、首先登录千牛卖家版&#xff0c;输入淘宝账号和密码。 2、在界面的横向工作栏中选择店铺管理&#xff0c;找到【店铺装修】选项。 千牛如何装修店铺?千牛装修店铺的教程 3、在左侧工具栏中选择需要修改的部分&#xff0c;目前可选择模块、配色、页头、页面、CSS等部分。…

Windows平台RTMP播放器/RTSP播放器如何在播放窗口添加OSD文字叠加

好多开发者在做Windows平台特别是单屏多画面显示时&#xff0c;希望像监控摄像机一样&#xff0c;可以在播放画面添加OSD台标&#xff0c;以实现字符叠加效果&#xff0c;大多开发者可很轻松的实现以上效果&#xff0c;针对此&#xff0c;本文以大牛直播SDK &#xff08;Github…

6款真正好用的播放器推荐

GOM player GOM player 是一款本身装有视频播放所需的解码&#xff0c;及占用系统资源少&#xff0c;并且能以最优秀的画质来观看多种格式影片的播放程序。 可以支持播放大多数当前流行的视频格式&#xff0c;如&#xff1a;MP4、AVI、WMV、MKV、MOV、FLV 等)&#xff0c;并且…

win7系统电脑运行速度的提升方法

win7系统是一款被大多数用户们认可的好用系统&#xff0c;在不断的对win7系统的使用中很多用户们都在寻找win7提高电脑运行速度的方法&#xff0c;今天小编就为大家带来了win7系统电脑运行速度的提升方法&#xff0c;让我们一起来看一下吧。 win7系统电脑运行速度的提升方法 …

Windows平台Unity3d下如何同时播放多路RTSP或RTMP流

好多开发者在做AR、VR或者教育类产品时&#xff0c;苦于如何在windows平台构建一个稳定且低延迟的RTSP或者RTMP播放器&#xff0c;如果基于Unity3d完全重新开发一个播放器&#xff0c;代价大、而且周期长&#xff0c;不适合快速出产品&#xff0c;我们认为当前最好的方式就是集…

如何修改Win11睡眠时间

近日&#xff0c;微软发布了 Win11 的首个预览版&#xff0c;所有之前已加入到 Insider Preview 的用户都能收到这个版本。该版本融入了发布会里的很多变化&#xff0c;但并未添加 Microsoft Teams 和安卓应用支持。相信很多朋友已经安装体验了一把。大家知道为了节省电量&…

Android平台使用Camera2(5.0+)替代过时的Camera

转自&#xff1a;https://forums.developer.amazon.com/articles/2707/using-camera2-to-replace-deprecated-camera-api.html From Android 5.0(API Level 21) the new Camera2 API(android.hardware.Camera2) is introduced which now gives full manual control over Andro…

RTMP播放器开发填坑之道

好多开发者提到&#xff0c;在目前开源播放器如此泛滥的情况下&#xff0c;为什么还需要做自研框架的RTMP播放器&#xff0c;自研和开源播放器&#xff0c;到底好在哪些方面&#xff1f;以下大概聊聊我们的一点经验&#xff0c;感兴趣的&#xff0c;可以关注 github&#xff1a…