国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)

這篇具有很好參考價(jià)值的文章主要介紹了SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

其實(shí)原理就是: 將監(jiān)控通過FFMPEG,推送給Nginx,前端通過Nginx地址拉取視頻,就可以播放了。

1:安裝FFMPEG.
2:下載并且配置nginx.
3:使用java代碼實(shí)現(xiàn)調(diào)用cmd或者linux窗口,并且運(yùn)行操作FFMPEG的命令,進(jìn)行監(jiān)控視頻rtsp格式的推送,推送給nginx.
4:前端寫一個(gè)video標(biāo)簽就可以,Src寫nginx的固定地址就可以。

windows: url: 【在上面3:中提到的,通過ffmeg推送給nginx的命令如下】

ffmpeg -rtsp_transport tcp -i 你的rtsp地址 -c:v libx264 -c:a aac -f flv -an rtmp://你的nginx地址:nginx配置的拉取端口號/myapp/room

linux:url:

ffmpeg -f rtsp -rtsp_transport tcp -i ' 你的rtsp地址監(jiān)控視頻' -codec copy -f flv -an 'rtmp://你的nginx地址:nginx配置的拉取端口號/myapp/room'

環(huán)境

  • 本地系統(tǒng) win10
  • centos7:Nginx
  • 開源程序:ffmpeg
  • 前端:Vue
  • 后端SpringBoot

一、下載所需要的FFMPEG安裝包

  • windows下載FFmpeg FFMpeg windows版本
    -https://www.gyan.dev/ffmpeg/builds/
    SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
    SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
    將此文件解壓到你喜歡的的文件夾【比如這樣】
    SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
    接著配置環(huán)境變量
    進(jìn)入到解壓后的目錄找到bin 、復(fù)制bin目錄路徑----然后配置系統(tǒng)環(huán)境變量【下圖所示】
    SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
    cmd查看一下是否成功
ffmpeg 

SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
至此這個(gè)這個(gè)玩意就安裝完成了

安裝nginx

依照你喜歡的方式安裝nginx 可以使用docker、yum、安裝包 等等方式都可以
我使用直接解壓的方式
可以去nginx官網(wǎng)下載喜歡的nginx版本 ,上傳到服務(wù)器
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
解壓然后編譯(這個(gè)應(yīng)該不難,可以使用 make make install )
安裝完成之后長這樣
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
可以看到我這個(gè)截圖上多了一個(gè) nginx-http-flv-module 這個(gè)目錄,這個(gè)是必要安裝的一個(gè)模塊
否則無法實(shí)現(xiàn)正常的監(jiān)控視頻播放

給Nginx安裝 nginx-http-flv-module模塊

建議直接下載到nginx的目錄下、我安裝到了 /user/loacl/nginx/ 文件夾下了
下載地址:https://github.com/winshining/nginx-http-flv-module
安裝依賴項(xiàng)

yum -y install unzip
yum -y install gcc-c++ 
yum -y install pcre pcre-devel  
yum -y install zlib zlib-devel 
yum -y install openssl openssl-devel

將nginx-http-flv-module模板添加到nginx中,生成make文件 并安裝nginx

./configure --prefix=/usr/local/nginx  --add-module=/usr/local/nginx/nginx-http-flv-module
make && make install

檢查是否安裝成功

nginx -V

SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
出現(xiàn)這個(gè)就是代表安裝成功了
安裝基本已經(jīng)成形---------接下來配置nginx的配置文件

nginx配置文件

## 編輯nginx配置文件
vim conf/nginx.conf

SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
nginx的配置文件大概就是這樣的(完成的nginx配置文件 我也會(huì)在下面附上,可以直接復(fù)制* 嗷對 需要修改成你的ip 或者域名)
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)

SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
下面是完整的ngin配置文件

worker_processes  10; #should be 1 for Windows, for it doesn't support Unix domain socket
#worker_processes  auto; #from versions 1.3.8 and 1.2.5

#worker_cpu_affinity  0001 0010 0100 1000; #only available on FreeBSD and Linux
#worker_cpu_affinity  auto; #from version 1.9.10

error_log logs/error.log error;

#if the module is compiled as a dynamic module and features relevant
#to RTMP are needed, the command below MUST be specified and MUST be
#located before events directive, otherwise the module won't be loaded
#or will be loaded unsuccessfully when NGINX is started

#load_module modules/ngx_http_flv_live_module.so;

events {
    worker_connections  10240;
}

http {
    	include       mime.types;
    	default_type  application/octet-stream;
    	sendfile        on;
   	keepalive_timeout  65;
    	server {
        	listen       9000; #http-flv的拉流端口
        	server_name  【這個(gè)地方寫你的ip、或者說是域名都是可以的--】; #http-flv的拉流ip
        	location / {
            	root   html;
            	index  index.html index.htm;
       		}
            #http-flv的相關(guān)配置
        	location /live{
                flv_live on; #打開HTTP播放FLV直播流功能
                chunked_transfer_encoding  on;
                add_header 'Access-Control-Allow-Origin' '*';
                add_header 'Access-Control-Allow-Credentials' 'true';
        	}
        	location /hls{
                types {
                	application/vnd.apple.mpegurl m3u8;
			video/mp2t ts;
                 }
                 root /usr/local/nginx/html/hls;
                 add_header 'Cache-Control' 'no-cache';
        	}
         	location /dash {
            	root /usr/local/nginx/html/dash;
            	add_header 'Cache-Control' 'no-cache';
        	}
 
         	location /stat {
            	#configuration of push & pull status
              	rtmp_stat all;
              	rtmp_stat_stylesheet stat.xsl;
         	}
        	location /stat.xsl {
          		root /usr/local/nginx/nginx-http-flv-module;
        	}
 
         	location /control {
            	rtmp_control all; #configuration of control module of rtmp
			}
 
        	error_page   500 502 503 504  /50x.html;
        	location = /50x.html {
            	root   html;
        	}
    	}
 
}

rtmp_auto_push on;
rtmp_auto_push_reconnect 1s;
rtmp_socket_dir /tmp;


rtmp{
        out_queue 4096;
        out_cork 8;
        max_streams 128;
        timeout 15s;
        drop_idle_publisher 15s;
        log_interval 5s;
        log_size 1m;
        server{
            #推流端口
        	listen 1935;
            #推流應(yīng)用名稱
         	application myapp{
                 live on;
	 	 record off;
                 gop_cache on;
          	}
         	application hls{
          		live on;
          		hls on;
          		hls_path /usr/local/nginx/html/hls;
          		hls_fragment 1s;
                        hls_playlist_length 3s;
        	}
         	application dash{
           		live on;
           		dash on;
           		dash_path /usr/local/nginx/html/dash;
         	}
 
        }
}

測試一下是否可以使用:準(zhǔn)備一個(gè)可播放的rtsp地址例如:???、大華、。。。。。都可以試試
打開cmd 開始調(diào)用 ffmpeg

ffmpeg -rtsp_transport tcp -i rtsp://user:pwd@ip:31554/h264/ch1/main/av_stream -c:v libx264 -c:a aac -f flv -an rtmp://nginx的ip:nginx所配的端口/myapp/room

如果出現(xiàn)如下,有速度就代表可以成功
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
可以使用地址本地測試一下有沒有畫面

'http://nginx的ip:nginx訪問的端口9000/live?port=1935&app=myapp&stream=room'

打開VLC media player
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)

前端 (vue)

引入Flv.js
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
然后接下來就這么寫【如下圖】會(huì)附上全代碼
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)

<template>
  <a-modal
    :title="title"
    :width="510"
    :visible="visible"
    switchFullscreen
    @ok="handleOk"
    @cancel="handleCancel"
    cancelText="關(guān)閉"
  >
    <a-spin :spinning="confirmLoading">
      <j-form-container>
        <a-form :form="form" slot="detail">
          <a-row>
            <video autoplay controls width="100%" height="270" id="videoElement"></video>
          </a-row>
        </a-form>
      </j-form-container>
    </a-spin>
  </a-modal>
</template>
  
<script>
import flvjs from 'flv.js'
import JFormContainer from '@/components/jeecg/JFormContainer'
import { getAction } from '../../../api/manage'
export default {
  name: 'VidoModule',
  components: {
    JFormContainer,
    flvjs,
  },
  data() {
    return {
      flvPlayer:1,
      title: '監(jiān)控',
      //源視頻地址
      videoPath:'',
      videoStream: '',
      confirmLoading: false,
      visible: false,
      form: this.$form.createForm(this),

      url: {
      	//開啟視頻  
        list: '自己的請求地址',
        //關(guān)閉視頻輸出
        list1:'。。。'
      },
    }
  },
  mounted() {
  },

  methods: {
    // 開啟頁面
    show(record) {
      this.visible = true
      this.videoPath = record.videoPath
      this.VideoData(this.videoPath);
      this.createVideo()
    },

    VideoData(videoPath){
      getAction(this.url.list,{videoPath:videoPath}).then((res) => {

      })
    },
    
    //傳輸視頻地址
    createVideo() {
      if (flvjs.isSupported()) {
        let videoElement = document.getElementById('videoElement')
        let flvPlayer = flvjs.createPlayer({
          type: 'flv',
          isLive: true,
          fluid: true,
          stashInitialSize: 128,// 減少首楨顯示等待時(shí)長
          url: 'http://xxx.xxx.xxx.xxx:9000/live?port=1935&app=myapp&stream=room', //url地址

        })
        //console.log(videoUrl+'      videoUrl')
        flvPlayer.attachMediaElement(videoElement)
        flvPlayer.load()
        flvPlayer.play()
      }
    },
    close() {
      this.$emit('close')
      this.visible = false
      this.closeFfmpeg()
    },
    //  關(guān)閉視頻的輸出
    closeFfmpeg(){
      getAction(this.url.list1).then((res) => {

      })
    },
    handleOk() {
      this.submitForm()
    },
    submitCallback() {
      this.$emit('ok')
      this.visible = false
    },
    handleCancel() {
      this.close()
    },
  },
}
</script>
<style lang="less" scoped>
</style>

后端 SpringBoot

后端其實(shí)就是通過java 去調(diào)用本地或者服務(wù)器上的FFMPEG,使用cmd 或者 shell的方式都可以
其實(shí)就是執(zhí)行一下命令而已
CommandUtil.java

package common.util;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/**
 * @Description: 調(diào)用命令 【windows&Linux】 @Author: cq @Date: 2022/12/20 @Version: V1.0
 * 用于啟動(dòng)ffmpeg 隨之將rtsp 轉(zhuǎn)化為rtmp 返回給Flv.js使用
 */

public class CommandUtil {

  /** 調(diào)用linux命令* */
  public String linuxExec(String cmd) {
    System.out.println("執(zhí)行命令[ " + cmd + "]");
    Runtime run = Runtime.getRuntime();
    try {
      Process process = run.exec(cmd);
      String line;
      BufferedReader stdoutReader =
          new BufferedReader(new InputStreamReader(process.getInputStream()));
      StringBuffer out = new StringBuffer();
      while ((line = stdoutReader.readLine()) != null) {
        out.append(line);
      }
      try {
        process.waitFor();
      } catch (InterruptedException e) {
        e.printStackTrace();
      }
      process.destroy();
      return out.toString();
    } catch (IOException e) {
      e.printStackTrace();
    }
    return null;
  }
  /** 調(diào)用windwos命令* */
  public String winExec(String cmd) {
    Runtime runtime = Runtime.getRuntime();
    String command =cmd;
    try {
      Process process = runtime.exec(command);
      new InputStreamReader(process.getInputStream());
      return "成功";
    } catch (IOException e) {
      e.printStackTrace();
      return "請檢查攝像頭地址";
    }
  }
}
package org.ept.modules.solidwaste.controller;

import io.swagger.annotations.Api;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.ept.common.api.vo.Result;
import org.ept.common.util.CommandUtil;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;

/**
 * @Description: 視頻輸出 @Author: cq @Date: 2022/11/30 @Version: V1.0
 */
@Api(tags = "視頻格式轉(zhuǎn)換---windows-->cmd---linux")
@RestController
@RequestMapping("/video/videos")
@AllArgsConstructor
@Slf4j
public class videoTestController {
  /** Windows系統(tǒng)* */
  private static final boolean IS_WINDOWS = System.getProperty("os.name").toLowerCase().contains("win");
  /** Linux系統(tǒng)* */
  private static final boolean IS_LINUX = System.getProperty("os.name").toLowerCase().contains("Linux");


  /** 視頻播放指令執(zhí)行 rtsp地址【源播放地址】通過ffmpeg程序進(jìn)行轉(zhuǎn)化成rtmp,將地址傳給flv.js進(jìn)行播放 */
  @GetMapping("/videoStart")
  public void videoPreview(@RequestParam(name = "videoPath", required = false) String videoPath) {
    CommandUtil commandUtil = new CommandUtil();
    /*如果是winodws系統(tǒng)**/
    if (IS_WINDOWS) {
      String cmd ="cmd /k start ffmpeg -rtsp_transport tcp -i"
                      + " "
                      + videoPath
                      + " "
                      + "-c:v libx264 -c:a aac -f flv -an rtmp://xxx.xxx.xxx.xxx:1935/myapp/room";
      commandUtil.winExec(cmd);
    }
    /*如果是Linux系統(tǒng)**/
    if (IS_LINUX){
      System.out.println("linux");
      String cmd = "ffmpeg -f rtsp -rtsp_transport tcp -i '"
              + ""
              + videoPath
              + "'"
              + ""
              + " -codec copy -f flv -an 'rtmp://xxx.xxx.xxx.xxx:1935/myapp/room'";
      commandUtil.linuxExec(cmd);
    }
  }

  /** 關(guān)閉ffmpeg.exe程序 */
  @GetMapping("/videoClose")
  public Result<?> close() {
    closeHistoryProgram("ffmpeg.exe");
    return Result.ok("已成功停止");
  }

  public void closeHistoryProgram(String processName) {
    String cmd = "taskkill /f /t /im " + processName;
    try {
      // exec執(zhí)行cmd命令
      Process process = Runtime.getRuntime().exec(cmd);
      // 獲取CMD命令結(jié)果的輸出流
      InputStream fis = process.getInputStream();
      InputStreamReader isr = new InputStreamReader(fis, "GBK");
      // 使用緩沖器讀取
      BufferedReader br = new BufferedReader(isr);
      String line = null;
      // 全部讀取完成為止,一行一行讀取
      while ((line = br.readLine()) != null) {
        // 輸出讀取的內(nèi)容
        System.out.println(line);
      }
    } catch (IOException e) {
      e.printStackTrace();
    }
  }

}

大概就是這么個(gè)意思
SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)

SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)文章來源地址http://www.zghlxwxcb.cn/news/detail-414953.html

到了這里,關(guān)于SpringBoot+vue 實(shí)現(xiàn)監(jiān)控視頻rtsp播放(java+Nginx+ffmpeg+flv.js)的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • linux+nginx-http-flv-module+ffmpeg實(shí)現(xiàn)搭建簡易流媒體服務(wù)器將rtsp流轉(zhuǎn)flv格式在web端和微信小程序?qū)崟r(shí)播放監(jiān)控視頻

    linux+nginx-http-flv-module+ffmpeg實(shí)現(xiàn)搭建簡易流媒體服務(wù)器將rtsp流轉(zhuǎn)flv格式在web端和微信小程序?qū)崟r(shí)播放監(jiān)控視頻

    一.介紹背景 公司項(xiàng)目開發(fā)需求:將海康攝像頭的rtsp流在web端及微信小程序端進(jìn)行播放。之前我寫過一篇關(guān)于web端使用webtrc+videojs播放rtsp流的文章,確實(shí)能夠解決web端播放rtsp流的需求,但是這次多加了一個(gè)微信小程序....所以要考慮小程序的播放問題。本著探索實(shí)踐的精神在

    2024年02月08日
    瀏覽(39)
  • vue使用webrtcstreamer實(shí)現(xiàn)rtsp無轉(zhuǎn)碼播放實(shí)時(shí)監(jiān)控

    vue使用webrtcstreamer實(shí)現(xiàn)rtsp無轉(zhuǎn)碼播放實(shí)時(shí)監(jiān)控

    因?yàn)関ideo標(biāo)簽只能播放特定格式的視頻,比如MP4、WebM和Ogg格式,而對于這種視頻流文件則需要通過轉(zhuǎn)碼實(shí)現(xiàn),而vue-video-player也只能播放特定格式的視頻。所以要播放監(jiān)控的實(shí)時(shí)視頻,除了在瀏覽器的地址欄直接打開攝像頭的地址,還可以通過webrtc-streamer和video標(biāo)簽在頁面實(shí)現(xiàn)

    2024年02月06日
    瀏覽(26)
  • java 實(shí)現(xiàn)監(jiān)控rtsp流轉(zhuǎn)flv,實(shí)現(xiàn)前端播放(前后端代碼都有)

    java 實(shí)現(xiàn)監(jiān)控rtsp流轉(zhuǎn)flv,實(shí)現(xiàn)前端播放(前后端代碼都有)

    controller層: config層: factories層: result層: service層: 這里因?yàn)闉g覽器把自動(dòng)播放給禁止了,加了個(gè)按鈕點(diǎn)擊事件 https://www.bootcdn.cn/ 引入的flv.js文件在如下網(wǎng)站下載即可:

    2024年02月11日
    瀏覽(20)
  • UE中低延時(shí)播放RTSP監(jiān)控視頻解決方案

    UE中低延時(shí)播放RTSP監(jiān)控視頻解決方案

    1.1 行業(yè)痛點(diǎn) 在各種智慧城市、智慧社區(qū)、智慧水利、智慧礦山等數(shù)字孿生項(xiàng)目中,經(jīng)常使用通UE來開發(fā)三維可視化場景。在這些場景中通常都需要把現(xiàn)場的各種監(jiān)控視頻在UE的可視化場景中接入,主要包含??低暋⒋笕A、宇視、華為等眾多監(jiān)控廠商的設(shè)備與平臺,監(jiān)控視頻

    2024年02月14日
    瀏覽(21)
  • web端播放rtsp視頻流(攝像頭監(jiān)控視頻)教程及window下開機(jī)自啟動(dòng)部署

    web端播放rtsp視頻流(攝像頭監(jiān)控視頻)教程及window下開機(jī)自啟動(dòng)部署

    像??荡笕A一些攝像頭或者直播源 為rtsp視頻流,想在web上播放必須進(jìn)行協(xié)議轉(zhuǎn)換。已知一些方案例如rtsp轉(zhuǎn)rtmp需要flash,現(xiàn)在瀏覽器基本不支持flash。還有轉(zhuǎn)hls或者flv這些延遲都比較高。經(jīng)過實(shí)踐對比比較理想方案是 經(jīng)轉(zhuǎn)碼后視頻流通過websocket傳送給客戶端在將視頻流解碼成

    2024年04月10日
    瀏覽(27)
  • vue項(xiàng)目播放rtsp流視頻。

    下載webtrc-streamer的壓縮包,在github上有 https://github.com/mpromonet/webrtc-streamer/releases 將下載包html文件夾下webrtcstreamer.js文件和html/libs文件夾下adapter.min.js文件復(fù)制到VUE項(xiàng)目public/stactic目錄下,在index.html文件里引入這兩個(gè)js文件。 解壓之后打開exe文件就可以播放了。(想做到把exe變

    2024年02月02日
    瀏覽(21)
  • 【vue2】前端如何播放rtsp 視頻流,拿到rtsp視頻流地址如何處理,海康視頻rtsp h264 如何播放

    【vue2】前端如何播放rtsp 視頻流,拿到rtsp視頻流地址如何處理,海康視頻rtsp h264 如何播放

    最近在寫vue2 項(xiàng)目其中有個(gè)需求是實(shí)時(shí)播放攝像頭的視頻,攝像頭是 海康 的設(shè)備,搞了很長時(shí)間終于監(jiān)控視頻出來了,記錄一下,放置下次遇到。文章有點(diǎn)長,略顯啰嗦請耐心看完。 測試?測試什么?測試rtsp視頻流能不能播放。 video mediaplay官網(wǎng) 即(VLC) 下載、安裝完VLC后

    2024年02月05日
    瀏覽(25)
  • LiveNVR Onvif/RTSP流媒體軟件接入監(jiān)控?cái)z像頭后如何獲取直播流地址進(jìn)行大屏展示、播放端拉流、網(wǎng)頁播放監(jiān)控視頻等...

    LiveNVR Onvif/RTSP流媒體軟件接入監(jiān)控?cái)z像頭后如何獲取直播流地址進(jìn)行大屏展示、播放端拉流、網(wǎng)頁播放監(jiān)控視頻等...

    LiveNVR的安防監(jiān)控的視頻直播,可以按標(biāo)準(zhǔn)的Onvif/RTSP協(xié)議接入監(jiān)控設(shè)備,也可以通過???、大華、天地偉業(yè)等廠家私有SDK接入監(jiān)控,實(shí)現(xiàn)web頁面的播放和錄像回放。 可以分發(fā)HTTP-FLV、WS-FLV、WebRTC、RTMP、HLS(M3U8)、RTSP等多中視頻流 2.1.1、接口說明 http://192.168.2.135:10800 是示例的i

    2024年02月16日
    瀏覽(30)
  • Java播放??档腞TSP視頻

    視頻流,一種流媒體傳輸方式,市面上常用的流媒體傳輸協(xié)議分別有RTSP、FLV、M3U8、HLS和HDS以及WebRTC。像更早一點(diǎn)的通過falsh插件播放的協(xié)議就是RTMP。 RTSP(Real-Time Streaming Protocol)是一種實(shí)時(shí)流媒體傳輸協(xié)議,適用于點(diǎn)對點(diǎn)傳輸,可以支持高質(zhì)量的視頻流傳輸,但是需要較高

    2024年02月16日
    瀏覽(12)
  • electron+vue網(wǎng)頁直接播放RTSP視頻流?

    electron+vue網(wǎng)頁直接播放RTSP視頻流?

    目前大部分?jǐn)z像頭都支持RTSP協(xié)議,但是在瀏覽器限制,最新版的瀏覽器都不能直接播放RTSP協(xié)議,Electron 桌面應(yīng)用是基于 Chromium 內(nèi)核的,所以也不能直接播放RTSP,但是我們又有這個(gè)需求怎么辦呢? 市場上的方案很多,有很多免費(fèi)開源的,同時(shí)也有比較成熟的商業(yè)軟件,豐儉

    2024年02月02日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包