LM视频中间件H5实时视频打开API

这篇具有很好参考价值的文章主要介绍了LM视频中间件H5实时视频打开API。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

概览
LM视频中间件支持对接入的海康、大华、GB28181、RTSP、ISUP/EHOME等设备码流进行转换,提供HLS、Websocket-flv, http-flv, webrtc,rtsp流输出。

视频开放api,视频中间件,无插件视频,安防视频中间件,音视频,中间件,视频

视频编码支持:

H265
H264
 

音频编码支持:

PCMA
PCMU
G722
AAC
实时视频的API调用也比较简单,本文中只针对API调用后需要对URL进行拼接做下说明。

说明:
因目前H5浏览器没有支持H265的显示播放,业界现在H265的播放都是采用修改FLV格式的视频编码,浏览器在收到H265时,采用WASM的方式进行软解码播放,在多路播放时稳定性还待观察,同时对电脑的要求都比较高,并且在移动环境下支持的也不友好,因此我们暂时使用的是服务器转码方案,这样对前端的开发门槛比较低

API接口说明
获取实时流视频地址API中 type 参数根据采用H5播放器自行选择。

视频开放api,视频中间件,无插件视频,安防视频中间件,音视频,中间件,视频
参数 subString 默认为false,获取主码流的播放地址,true为获取辅码流播放地址,辅码流的占用带宽小,但是视频分辨率比主码流低

视频返回的参数 url 在请求不同的视频协议地址时,拼接规则有所不同,具体参见下表:

视频开放api,视频中间件,无插件视频,安防视频中间件,音视频,中间件,视频

ip : LM视频中间件访问地址
port : LM视频中间件访问端口
url : 获取实时流视频地址API返回的参数 url

注意

辅码流只支持海康、大华和ISUP(EHOME)协议接入的设备
获取视频地址API返回的参数 ssid 只有是请求码流类型为RTSP时才有效
获取视频地址API返回的参数 expires 数值时指,应用系统在请求视频地址后,却不进行播放,该地址保留的最长时间,若已通过此地址连接观看视频,此参数失效
 

H5播放示例
相关播放js文件可咨询商务人员获取https://houhangkeji.com/

HTTP-FLV& Websocket-flv
打开视频

startVideo(data, num) {
    let play1 = document.getElementById(num);
    data.flvPlayer = flvjs.createPlayer({
        type: 'flv',
        isLive: true,
        hasAudio: true,
        hasVideo: true,
        url: data.url
    },
    {
        enableWorker:true,
        stashInitialSize: 64,
        enableStashBuffer: false
    });
    data.flvPlayer.attachMediaElement(play1);
    data.flvPlayer.load();
    data.flvPlayer.on('error', err => {
        console.log(err);
    });
    data.flvPlayer.play();
    this.selectVideo(num+1);
    data.timerId = setInterval(()=> {
        if(!play1.buffered.length){
            return
        }
    
        var diff = parseFloat(play1.buffered.end(0) - play1.currentTime);   
        if(diff >= 2) {
            play1.playbackRate = 2;
        }
        else if(diff >= 1.5 && diff < 2) {
            play1.playbackRate = 1.3;
        }
        else if (diff < 1.5 && diff >= 1.2){
            play1.playbackRate = 1.2;
        }
        else if (diff < 1.2 && diff >= 0.5){
            play1.playbackRate = 1.1;
        }
        else if(diff < 0.5 && diff >= 0.2){
            play1.playbackRate = 1;
        }
        else if(diff < 0.2){
            play1.playbackRate = 0.5;
        }
    },500);
}

关闭视频

closeVideo_flv(item,index) {
    let play = document.getElementById(index);
    let e = this.outside[index] ? this.outside[index].flvPlayer : null;
    if (!e) {
        return;
    }
    this.selectVideo(index);
    e.pause();
    e.unload();
    e.detachMediaElement();
    e.destroy();
    clearInterval(this.outside[index].timerId);
    this.outside[index].flvPlayer = null;
}

WEBRTC

打开视频

startVideo_webrtc(data, num) {
    let play1 = document.getElementById(num);
    data.flvPlayer = new JSWebrtc_Player(
        data.url, 
        { 
            video: play1, 
            autoplay: true, 
            protocol:window.location.protocol, 
            hostname: window.location.hostname, 
            port:window.location.port
        });
    this.selectVideo(num+1);
}

关闭视频

closeVideo_webrtc(item,index) {
    let play = document.getElementById(index);
    let o = this.outside[index]
    if(o.flvPlayer){
        o.flvPlayer.destroy();

        this.selectVideo(index);
    }
    o.url = null;
    this.outside[index].flvPlayer = null;
}

HLS

打开视频

startVideo_hls(data, num) {
    let video = document.getElementById(num);
    data.html = video.outerHTML;

    var hls = videojs(video);
    hls.src({ type: "application/x-mpegURL", src: data.url });
    hls.load(data.url);
    hls.play();

    data.flvPlayer = hls;
    this.selectVideo(num+1);
}

关闭视频

closeVideo_hls(item, index){
    let e = this.outside[index] ? this.outside[index].flvPlayer : null;
    if (!e) {
        return;
    }
    this.selectVideo(index);
    e.dispose();
    var myVideoDiv = document.getElementById(this.getId(index));
    myVideoDiv.insertAdjacentHTML('afterbegin', this.outside[index].html);
    this.outside[index].flvPlayer = null;
}

常见错误码

视频开放api,视频中间件,无插件视频,安防视频中间件,音视频,中间件,视频

交流联系: 

杭州厚航科技有限公司http://houhangkeji.com/

视频开放api,视频中间件,无插件视频,安防视频中间件,音视频,中间件,视频

QQ技术交流群:698793654

 文章来源地址https://www.toymoban.com/news/detail-856364.html

到了这里,关于LM视频中间件H5实时视频打开API的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • LiveMedia视频中间件如何与第三方系统实现事件录像关联

            LiveMedia视频中间件是支持部署到本地服务器或者云服务器的纯软件服务,也提供服务器、GPU一体机全包服务,提供视频设备管理、无插件、跨平台的实时视频、历史回放、语音对讲、设备控制等基础功能,支持视频协议有 海康、大华私有协议、宇视私有协议、天地伟

    2024年02月07日
    浏览(48)
  • 后端 .net7 Minimal API 限流中间件(微信小程序无师自通十)

            我的微信小程序使用.net7 Minimal API 作为后端,当服务器摆上公网后,可以观察到很多的攻击行为和暴力访问。所以,我需要使用微软的限流中间件部署相应的功能在服务器上 : AddFixedWindowLimiter using Microsoft.AspNetCore.RateLimiting; using System.Threading.RateLimiting; 后端

    2024年02月12日
    浏览(39)
  • 【视频中间件】国标(GB28181)协议接入并输出标准FLV/RTSP/HLS流

    在安防行业发展的今天,现目前很多企业单位均建设有视频管理平台,跨部门、跨系统的视频资源联网共享需求也越来越多,随着网络高速提升与发展,视频数据的互联互通共享也变得更加的便捷。目前视频平台互联最为常见的互通协议就是GB/T 28181,随着协议的不断完善及成

    2024年04月12日
    浏览(35)
  • 视频中间件:大华IPC/NVR 主动注册协议接入并输出标准FLV/RTSP/HLS流

    大华主动注册协议是类似海康E-home、ISUP协议,也是前端设备向中心平台和服务注册的一种主动注册协议,对于前端网络无固定IP情况下对视频的联网、视频上云等场景应用尤为适用。行业主动注册标准协议还有GB28181、JTT1078等,如何实现多协议的兼容适配,并输出标准化通用

    2024年02月12日
    浏览(55)
  • Python数据权限的管理通常涉及到几个关键组件:身份验证,、授权和访问控制。这通常是通过使用数据库、ORM(对象关系映射)框架、API框架和中间件

    在Python中,数据权限的管理通常涉及到几个关键组件:身份验证,、授权和访问控制。这通常是通过使用数据库、ORM(对象关系映射)框架、API框架和中间件等技术来实现的。以下是一些建议的步骤和工具,用于在Python项目中实施数据权限管理: 用户身份验证: 使用如Djan

    2024年04月26日
    浏览(45)
  • 【中间件】消息中间件之Kafka

    一、概念介绍 Apache Kafka是一个分布式流处理平台,用于构建实时数据管道和流应用。它可以处理网站、应用或其他来源产生的大量数据流,并能实时地将这些数据流传输到另一个系统或应用中进行处理。 核心概念: Topic(主题) :消息的分类,用于区分不同的业务消息。

    2024年01月20日
    浏览(67)
  • scrapy---爬虫中间件和下载中间件

            -进来request对象         -加代理         -加cookie         -加请求头     -出去response对象         -修改响应对象,最后进入到爬虫的parser中就是修改后的response 1.加代理   2.加cookie,修改请求头,随机生成UserAgent         2.1加cookie        2.2 修改请求头

    2024年02月16日
    浏览(66)
  • 常见的中间件以及什么是中间件

    中间件顾名思义就是系统软件和应用软件之间连接的软件,以便于软件各部件之间的沟通,特别是应用软件对于系统软件的集中的逻辑,是一种独立的系统软件或服务程序,分布式应用软件借助这种软件在不同的技术之间共享资源。中间件在客户服务器的操作系统、网络和数

    2024年02月06日
    浏览(63)
  • 云原生中间件开源现状分析与华为中间件案例解读

    开源中间件在企业分布式架构搭建和服务治理中扮演着重要的角色,尤其是在解决我国网络高并发和业务复杂性问题方面。然而,尽管中间件市场由商业闭源厂商主导,提供了一系列基础中间件和数据类中间件以支持稳定的应用程序运行环境,开源中间件生态却相对分散和薄

    2024年02月02日
    浏览(79)
  • 探索Scrapy中间件:自定义Selenium中间件实例解析

    Scrapy是一个强大的Python爬虫框架,可用于从网站上抓取数据。本教程将指导你创建自己的Scrapy爬虫。其中,中间件是其重要特性之一,允许开发者在爬取过程中拦截和处理请求与响应,实现个性化的爬虫行为。 本篇博客将深入探讨Scrapy中间件的关键作用,并以一个实例详细介

    2024年02月04日
    浏览(72)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包