历时半年,终于研发完成了Web网页对H.265(HEVC)直播和点播的支持,WebAssembly(wasm)

本文主要是介绍历时半年,终于研发完成了Web网页对H.265(HEVC)直播和点播的支持,WebAssembly(wasm),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

历时半年,终于研发完成了H.265(HEVC)Web网页WebAssembly(wasm)播放的功能,首先得感谢这期间淘宝、Bilibili、金山云、360前端的开发同学的分享和指点,该技术后续将大量用于TSINGSEE青犀视频的EasyNVR、EasyDSS、EasyGBS这些方案,Web播放H.265的支持对于直播、尤其是对于视频的存储,具有较为重要的意义。
今天先简要介绍一下Web支持H.265的场景、方案和重要意义,后续我们来具体介绍一下,我们的EasyPlayer.js支持H.265的用法以及EasyPlayer.js支持H.265的一些技术细节。

Web播放H.265的应用场景

安防

H.265在安防行业已经普及很多年了,而目前大部分的安防可视化项目都还存在于H.264视频展示的阶段或者后端H.265转码H.264的阶段,是无法满足现阶段安防先进性要求的;

直播

早在2019年初,手机淘宝直播就已经支持Web H.265播放了(详情见:通过WebAssembly在移动端解码H.265,https://blog.csdn.net/vn9plgzvnps1522s82g/article/details/88802334),手淘直播对于H.265的支持主要在wasm播放H.265的http-flv流,这不仅有效地降低了直播并发对流量的消耗,更会在后续的视频存储上节省大量的成本。

安防互联网化

安防互联网化的典型场景有:幼儿园直播、明厨亮灶等等,早期这些应用为了支持微信看视频,都采用的是H.264视频编码格式,但是H.265视频H5直播技术的引入,能非常好地解决网速、流量、存储、负载等各方面的压力。

Web播放H.265的方案

在说到Web播放H.265的方案时,有一个深刻的个人体会,就是要找到一款非常适合于自己的东西几乎是很难的,早期在做H.265 H5播放调研的时候,寄希望于各大厂商提供的开放版本,但或多或少都有一些问题或者封闭性,最终还是选择了自己做,尤其是是适合于像我所在的安防互联网化的这个领域,要兼顾的方面比较多。

http-flv协议支持

HTTP-FLV主要用于视频直播,H.264编码采用MSE技术充分调用浏览器和硬件能力,H.265采用wasm的视频软解码能力;

hls协议支持

HLS主要应用于视频点播、录像回放方面,具有较好的平台适应能力;

WebSocket

WebSocket直播协议的引入主要是为了解决实时性和客户端http并发性的问题;

Web播放H.265的重要意义

流量消耗

按流量计费至少能为用户及平台提供商节省50%的流量资源;

存储

在节省带宽流量资源的同时,还能降低存储介质的占用,对于大规模的视频存储和存档,H.265都具备非常大的先天优势;

云计算

对于视频云计算来说,主要的瓶颈有带宽和算力两样,视频算力目前大部分都在往GPU方面去改善,而带宽的优化方面,主要还是需要靠视频压缩算法来进行,那么,目前来说H.265是非常好的选择;

Web播放H.265的效果

目前可以通过TSINGSEE的一些方案可以在线看到演示,例如:demo.easynvr.com

Web HEVC

这篇关于历时半年,终于研发完成了Web网页对H.265(HEVC)直播和点播的支持,WebAssembly(wasm)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/688897

相关文章

华为鸿蒙HarmonyOS 5.1官宣7月开启升级! 首批支持名单公布

《华为鸿蒙HarmonyOS5.1官宣7月开启升级!首批支持名单公布》在刚刚结束的华为Pura80系列及全场景新品发布会上,除了众多新品的发布,还有一个消息也点燃了所有鸿蒙用户的期待,那就是Ha... 在今日的华为 Pura 80 系列及全场景新品发布会上,华为宣布鸿蒙 HarmonyOS 5.1 将于 7

python web 开发之Flask中间件与请求处理钩子的最佳实践

《pythonweb开发之Flask中间件与请求处理钩子的最佳实践》Flask作为轻量级Web框架,提供了灵活的请求处理机制,中间件和请求钩子允许开发者在请求处理的不同阶段插入自定义逻辑,实现诸如... 目录Flask中间件与请求处理钩子完全指南1. 引言2. 请求处理生命周期概述3. 请求钩子详解3.1

使用Python实现网页表格转换为markdown

《使用Python实现网页表格转换为markdown》在日常工作中,我们经常需要从网页上复制表格数据,并将其转换成Markdown格式,本文将使用Python编写一个网页表格转Markdown工具,需... 在日常工作中,我们经常需要从网页上复制表格数据,并将其转换成Markdown格式,以便在文档、邮件或

SpringBoot项目Web拦截器使用的多种方式

《SpringBoot项目Web拦截器使用的多种方式》在SpringBoot应用中,Web拦截器(Interceptor)是一种用于在请求处理的不同阶段执行自定义逻辑的机制,下面给大家介绍Sprin... 目录一、实现 HandlerInterceptor 接口1、创建HandlerInterceptor实

Web技术与Nginx网站环境部署教程

《Web技术与Nginx网站环境部署教程》:本文主要介绍Web技术与Nginx网站环境部署教程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、Web基础1.域名系统DNS2.Hosts文件3.DNS4.域名注册二.网页与html1.网页概述2.HTML概述3.

Python使用Reflex构建现代Web应用的完全指南

《Python使用Reflex构建现代Web应用的完全指南》这篇文章为大家深入介绍了Reflex框架的设计理念,技术特性,项目结构,核心API,实际开发流程以及与其他框架的对比和部署建议,感兴趣的小伙... 目录什么是 ReFlex?为什么选择 Reflex?安装与环境配置构建你的第一个应用核心概念解析组件

Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例

《Nginx使用Keepalived部署web集群(高可用高性能负载均衡)实战案例》本文介绍Nginx+Keepalived实现Web集群高可用负载均衡的部署与测试,涵盖架构设计、环境配置、健康检查、... 目录前言一、架构设计二、环境准备三、案例部署配置 前端 Keepalived配置 前端 Nginx

POI从入门到实战轻松完成EasyExcel使用及Excel导入导出功能

《POI从入门到实战轻松完成EasyExcel使用及Excel导入导出功能》ApachePOI是一个流行的Java库,用于处理MicrosoftOffice格式文件,提供丰富API来创建、读取和修改O... 目录前言:Apache POIEasyPoiEasyExcel一、EasyExcel1.1、核心特性

一文教你Python如何快速精准抓取网页数据

《一文教你Python如何快速精准抓取网页数据》这篇文章主要为大家详细介绍了如何利用Python实现快速精准抓取网页数据,文中的示例代码简洁易懂,具有一定的借鉴价值,有需要的小伙伴可以了解下... 目录1. 准备工作2. 基础爬虫实现3. 高级功能扩展3.1 抓取文章详情3.2 保存数据到文件4. 完整示例

python获取网页表格的多种方法汇总

《python获取网页表格的多种方法汇总》我们在网页上看到很多的表格,如果要获取里面的数据或者转化成其他格式,就需要将表格获取下来并进行整理,在Python中,获取网页表格的方法有多种,下面就跟随小编... 目录1. 使用Pandas的read_html2. 使用BeautifulSoup和pandas3.