流媒体中的SEI是指补充增强信息(Supplemental Enhancement Information),它提供了向视频码流中加入信息的办法,是H.264/H.265视频压缩标准的特性之一。SEI可以实现的功能包括:传递编码器参数、传递视频版权信息、传递摄像头参数、传递内容生成过程中的剪辑事件、传递自定义消息等。

虽然SEI只是视频标准里面很小的一部分,但在应用过程中,比如直播问答项目中SEI承载的信息,就能极大提升直播观看和答题操作的整体用户体验。用户也可以根据自身场景需求,利用SEI的特性去拓展更多的业务功能。

今天和大家分享一下我们在项目中实现了Flv.js前端播放器中解析264编码中的SEI信息,并解析绘制。

设计逻辑:

后端根据分析结果,在H.264编码中添加自定义的SEI信息,SEI信息中包含矩形区域坐标信息、分析类型等信息。如果前端在播放视频时实时显示相关信息,需要在flv.js中解析出对应的SEI信息并绘制。

下图为控制台中打印的SEI信息:

js中解析对应的SEI信息:

绘制效果如图:

视频编码技术的进步推动了视频监控在安防等多场景中的应用和拓展,解决了高清视频监控在网络带宽、解码显示能力、存储资源上遇到的难题,促使安防视频监控朝着更加智能化、高清化、联网化的方向发展。随着人工智能技术的不断落地应用,TSINGSEE青犀视频也逐渐将AI智能检测技术融合到视频平台,包括人脸检测、人流量统计、车辆检测、车牌识别等。

近期我们也推出了基于边缘AI智能分析技术的安全生产摄像机,设备内置多框架AI算法,在企业的安全生产监管场景中,可实现安全帽检测、防护服检测、烟火检测、室内通道堵塞检测、睡岗离岗检测等智能检测功能。感兴趣的用户可以前往演示平台进行体验或部署测试。

开发那些事儿:在Flv.js前端播放器中解析并绘制H.264编码中的SEI信息相关推荐

  1. SkeyeWebPlayer.js H5播放器开发之webpack编译flv.js实现基础播放器功能(二)

    SkeyeWebPlayer.js H5播放器是由成都视开信息科技开发和维护的一个完善的RTSP.FLV.HLS等多种流媒体协议播放,视频编码支持H.264,H.265,音频支持AAC,支持TCP/U ...

  2. flv.js无法播放http-flv视频流(带音频)

    flv.js demo地址 http-flv视频流不带音频时,可以通过flv.js直接拉流显示. 但是开发需要,视频流中加入音频后,flv.js不能直接拉流显示. 原因:hasAudio开关设置 解决 ...

  3. SkeyeWebPlayer.js H5播放器开发之播放器video动态创建(三)

    SkeyeWebPlayer.js H5播放器是由成都视开信息科技开发和维护的一个完善的RTSP.FLV.HLS等多种流媒体协议播放,视频编码支持H.264,H.265,音频支持AAC,支持TCP/U ...

  4. 如何打造支撑多种视频播放诉求的大前端播放器?

    VideoX 是内容前端团队基于电商业务(以下简称大淘宝)背景打造的面向大终端场景的前端播放器.这篇文章谈谈我对播放器领域问题的认识,以及当下解决这些问题的思路. 大淘宝视频播放的场景有哪些? 大淘宝 ...

  5. 计算机毕业设计JavaVue.js音乐播放器设计与实现(源码+系统+mysql数据库+lw文档)

    计算机毕业设计JavaVue.js音乐播放器设计与实现(源码+系统+mysql数据库+lw文档) 计算机毕业设计JavaVue.js音乐播放器设计与实现(源码+系统+mysql数据库+lw文档) 本源 ...

  6. java计算机毕业设计Vue.js音乐播放器设计与实现源码+数据库+系统+lw文档

    java计算机毕业设计Vue.js音乐播放器设计与实现源码+数据库+系统+lw文档 java计算机毕业设计Vue.js音乐播放器设计与实现源码+数据库+系统+lw文档 本源码技术栈: 项目架构:B/S ...

  7. SkeyeWebPlayer.js H5播放器是怎么样炼成的

    SkeyeWebPlayer.js H5播放器是由成都视开信息科技开发和维护的一个完善的RTSP.FLV.HLS等多种流媒体协议播放,视频编码支持H.264,H.265,音频支持AAC,支持TCP/U ...

  8. java计算机毕业设计Vue.js音乐播放器设计与实现源码+mysql数据库+系统+lw文档+部署

    java计算机毕业设计Vue.js音乐播放器设计与实现源码+mysql数据库+系统+lw文档+部署 java计算机毕业设计Vue.js音乐播放器设计与实现源码+mysql数据库+系统+lw文档+部署 ...

  9. SkeyeWebPlayer.js H5播放器开发之webpack项目创建级编译配置(一)

    SkeyeWebPlayer.js H5播放器开发之播放器动态渲染video. 动态渲染是采用js进行创建dom.添加dom.添加class.style等方式操作dom元素.最终将播放器编译成成一个独 ...

最新文章

  1. 2个RecyclerView 联动
  2. vue checkbox 默认选中
  3. mysql sae_新浪SAE的mysql与百度SAE的代码区别?
  4. ES聚合底层机制-bucket深的话采用广度优先更好,而如果是年度统计还是深度优先好...
  5. 007_请求返回Json
  6. Fast-RCNN解析:训练阶段代码导读
  7. 信息流媒体变现_百度联盟陈一凡:今年联盟分成仍将破峰,未来视频变现可期...
  8. JS实现图片预览与等比缩放
  9. kotlin读取sd卡里的文件_Kotlin 读取文件
  10. 2020班徽设计图案高中计算机,高铁工程学院举办2020级班徽设计大赛
  11. 远程桌面服务器无法复制粘贴了怎么解决
  12. 听听【八年阿里架构师】怎样讲述Dubbo和Spring Cloud微服务架构
  13. PHP UTF-8转GBK
  14. 点扩散函数 PSF(point spread function)
  15. Linux 串口termios.h分析
  16. Android基础夯实--重温动画(四)之属性动画 ValueAnimator详解
  17. qstring如何初始化_qstringlist 初始化
  18. 模拟退火算法求解--顺序约束的路由部署问题
  19. 苹果开放降级_苹果新系统上线,只为M1芯片?
  20. 求第 N 个 斐波那契数的多种方法

热门文章

  1. 前端项目实战95-数组遍历继续处理
  2. c++冒泡排序如何计算迭代次数
  3. DDR、DDR2、DDR3、DDR4、LPDDR区别
  4. 能源实现物联网云平台方案
  5. 微信 8.0 的状态原来这么炸裂,无情地爱了爱了,做程序员的你还不赶紧设置一把?
  6. Python地学分析 — 建立矢量数据缓冲区 06
  7. 网络交换机的主要作用是什么?
  8. word如何首页和目录不编辑页码
  9. html如何使表单在页面居中显示,html怎样将表单居中
  10. PDF如何插入空白页?3 次点击在PDF中插入空白页!