历时半年,终于研发完成了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

相关文章

JSON Web Token在登陆中的使用过程

《JSONWebToken在登陆中的使用过程》:本文主要介绍JSONWebToken在登陆中的使用过程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录JWT 介绍微服务架构中的 JWT 使用结合微服务网关的 JWT 验证1. 用户登录,生成 JWT2. 自定义过滤

SpringKafka消息发布之KafkaTemplate与事务支持功能

《SpringKafka消息发布之KafkaTemplate与事务支持功能》通过本文介绍的基本用法、序列化选项、事务支持、错误处理和性能优化技术,开发者可以构建高效可靠的Kafka消息发布系统,事务支... 目录引言一、KafkaTemplate基础二、消息序列化三、事务支持机制四、错误处理与重试五、性能优

一文教你如何将maven项目转成web项目

《一文教你如何将maven项目转成web项目》在软件开发过程中,有时我们需要将一个普通的Maven项目转换为Web项目,以便能够部署到Web容器中运行,本文将详细介绍如何通过简单的步骤完成这一转换过程... 目录准备工作步骤一:修改​​pom.XML​​1.1 添加​​packaging​​标签1.2 添加

SpringBoot使用OkHttp完成高效网络请求详解

《SpringBoot使用OkHttp完成高效网络请求详解》OkHttp是一个高效的HTTP客户端,支持同步和异步请求,且具备自动处理cookie、缓存和连接池等高级功能,下面我们来看看SpringB... 目录一、OkHttp 简介二、在 Spring Boot 中集成 OkHttp三、封装 OkHttp

使用Python实现获取网页指定内容

《使用Python实现获取网页指定内容》在当今互联网时代,网页数据抓取是一项非常重要的技能,本文将带你从零开始学习如何使用Python获取网页中的指定内容,希望对大家有所帮助... 目录引言1. 网页抓取的基本概念2. python中的网页抓取库3. 安装必要的库4. 发送HTTP请求并获取网页内容5. 解

Python使用DrissionPage中ChromiumPage进行自动化网页操作

《Python使用DrissionPage中ChromiumPage进行自动化网页操作》DrissionPage作为一款轻量级且功能强大的浏览器自动化库,为开发者提供了丰富的功能支持,本文将使用Dri... 目录前言一、ChromiumPage基础操作1.初始化Drission 和 ChromiumPage

一文教你解决Python不支持中文路径的问题

《一文教你解决Python不支持中文路径的问题》Python是一种广泛使用的高级编程语言,然而在处理包含中文字符的文件路径时,Python有时会表现出一些不友好的行为,下面小编就来为大家介绍一下具体的... 目录问题背景解决方案1. 设置正确的文件编码2. 使用pathlib模块3. 转换路径为Unicod

web网络安全之跨站脚本攻击(XSS)详解

《web网络安全之跨站脚本攻击(XSS)详解》:本文主要介绍web网络安全之跨站脚本攻击(XSS)的相关资料,跨站脚本攻击XSS是一种常见的Web安全漏洞,攻击者通过注入恶意脚本诱使用户执行,可能... 目录前言XSS 的类型1. 存储型 XSS(Stored XSS)示例:危害:2. 反射型 XSS(Re

定价129元!支持双频 Wi-Fi 5的华为AX1路由器发布

《定价129元!支持双频Wi-Fi5的华为AX1路由器发布》华为上周推出了其最新的入门级Wi-Fi5路由器——华为路由AX1,建议零售价129元,这款路由器配置如何?详细请看下文介... 华为 Wi-Fi 5 路由 AX1 已正式开售,新品支持双频 1200 兆、配有四个千兆网口、提供可视化智能诊断功能,建

解决JavaWeb-file.isDirectory()遇到的坑问题

《解决JavaWeb-file.isDirectory()遇到的坑问题》JavaWeb开发中,使用`file.isDirectory()`判断路径是否为文件夹时,需要特别注意:该方法只能判断已存在的文... 目录Jahttp://www.chinasem.cnvaWeb-file.isDirectory()遇