精华内容
下载资源
问答
  • Web H5 接入海康录像机 (rtsp转flv)

    千次阅读 2020-12-14 14:16:51
    搭建流服务器(RTSP => RTMP) 可参考其他方法 通过FFmpeg将rtsp流摄像头视频转码为rtmp播放 https://blog.csdn.net/u012492535/article/details/79220398 我用的现成的docker镜像部署的服务 原理一样的 ...

    最终效果

    image.png

    开始了~

    私网映射为公网

    • 如果你需要非局域网内访问就需要做这一步
    • 映射好公网后 ip 可能会变动 建议用域名做动态映射

    image.png

    搭建转流服务器(RTSP => RTMP)

    • 可参考其他方法

    通过FFmpeg将rtsp流摄像头视频转码为rtmp播放 https://blog.csdn.net/u012492535/article/details/79220398

    • 我用的现成的docker镜像部署的服务 原理一样的

     

    服务端相关命令

    添加视频流

    直播

    • 在容器外执行srs容器内的命令

    docker exec -it ${你的srs容器地址} /bin/bash -c ffmpeg -rtsp_transport tcp -i rtsp://${账号:密码}@${映射为公网的ip或者域名地址ztzyjc.3322.org}:${端口 默认9002}/Streaming/channels/${你的摄像头通道地址}0${主流1 子流2}  -c:v libx264 -crf 300 -acodec aac -f flv rtmp://127.0.0.1:1935/live/mystream${地址要不一样的, 我的是通道地址}

     

    以我的地址为例: 在9.20的服务器上部署的srs 命令为

    docker exec e5e1135e7cf6 /bin/bash -c 'ffmpeg -rtsp_transport tcp -i rtsp://admin:******@www.***.com:9002/Streaming/channels/2001  -c:v libx264  -acodec aac -f flv rtmp://127.0.0.1:1935/live/mystream20'

    回放

    • 命令docker exec e5e1135e7cf6 /bin/bash -c 'ffmpeg -rtsp_transport tcp -i "rtsp://admin:******@www.***.com:9002/Streaming/tracks/2001?starttime=20201214t000000z&endtime=20201214t000000z" -c copy -f flv rtmp://127.0.0.1:1935/live/mytrack20201214t000000z'

     

    前端对接

    说明事项(最终转流为flv格式)

    • RTMP 需要 flash 插件播放(以下有说明), chrome 在2020年12月后已经不再支持, 现在相关api接口都已经关闭了, 需要操作flash本身去调用浏览器相关接口(放弃了)
      • https://segmentfault.com/a/1190000018582436
      • RTMP(Real Time Messaging Protocol)实时消息传送协议是Adobe Systems公司为Flash播放器和服务器之间音频、视频和数据传输开发的私有协议。
      • RTMP是一个应用层协议,有多路复用的特点,传输内容有视频、音频、控制命令
      • RTMP 在音视频相关的协议中,它的突出特点是:连接可靠、低延时
    • 使用flv
      • 视频加载快比hls的m3u8格式快得多(可能是个人情况,未作深究)

     

    • 前端添加设备需要写服务端cmd脚本, 我这边也是使用的 nodejs 的express搭建了权限校验和docker的添加视频流命令

    Vue 接入

    我使用了 Dplayer播放器, 附上链接: http://dplayer.js.org/zh/guide.html#flv

    1. public/index.js引入<script src="https://cdn.bootcdn.net/ajax/libs/flv.js/1.5.0/flv.min.js"></script>
      1. 可以使用其他的cdn
    1. cmd 运行cnpm i dplayer -S
    2. 视频加载页面(单个视频)
    ...
    <div id="dplayer"></div>
    ...
    
    import DPlayer from 'dplayer'
    
    data: { dp: undefined }
    mounted() { this.initPlayer() }
    methods: {
        initPlayer() {
            this.$nextTick(() => {
            const liveBaseUrl = 'http://192.168.9.20:8380' // 你的srs服务地址
            // const url = live ? `${liveBaseUrl}/live/mystream${channelNo}.flv` : `${liveBaseUrl}/live/mytrack${this.datetimeValue[0]}.flv` // 回放后面再说
            const url = `${liveBaseUrl}/live/mystream${channelNo}.flv` // 直播地址
            // 测试flx地址: https://sf1-hscdn-tos.pstatp.com/obj/media-fe/xgplayer_doc_video/flv/xgplayer-demo-360p.flv
            this.dp = new DPlayer({
              container: document.getElementById('dplayer'),
              video: {
                url,
                type: 'flv'
              },
              // mutex: false, // api自己查查 不描述了 
              autoplay: true,
              live
            })
          })
      }
    }

    a. 多个视频自己琢磨吧~我给个大概思路, 数组嘛~简单 如下循环就好了

    image.png

     

    到此应该就差不多了, 肯定还有很多遗漏 不想写了 累~

    展开全文
  • 海康RTSP转flv并实现h5页面播放

    千次阅读 2020-11-03 16:32:04
    1、参考https://blog.csdn.net/u013769085/article/details/108800323 ... ... 2、ffmpeg转码 ffmpeg.exe -rtsp_transport tcp -buffer_size 4096000 -i "rtsp://...

    1、参考 https://blog.csdn.net/u013769085/article/details/108800323

         https://blog.csdn.net/weixin_42396332/article/details/105430015

         https://www.jianshu.com/p/d9c66d7d1653

    2、ffmpeg转码

    ffmpeg.exe -rtsp_transport tcp -buffer_size 4096000 -i "rtsp://admin:123456@192.168.1.2:554/Streaming/Channels/201" -vcodec copy -acodec copy -f flv rtmp://192.168.1.100:1935/myapp/0003
    

    3、使用flv.js插入时,结果报错:Unsupported codec in video frame: 2, 视频帧中不支持的编解码器

    改为以下命令(项目中用的摄像头没有音频,所以此处用 -an,不输出音频)

    ffmpeg.exe -rtsp_transport tcp -buffer_size 4096000 -i "rtsp://admin:123456@192.168.1.2:554/Streaming/Channels/201" -vcodec copy -an -f flv rtmp://192.168.1.100:1935/myapp/0003
    

    4、播放

    <!DOCTYPE html>
    <html>
    <head>
        <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
        <title>flv.js demo</title>
        <style>
            .mainContainer {
                display: block;
                width: 1024px;
                margin-left: auto;
                margin-right: auto;
            }
    
            .urlInput {
                display: block;
                width: 100%;
                margin-left: auto;
                margin-right: auto;
                margin-top: 8px;
                margin-bottom: 8px;
            }
    
            .centeredVideo {
                display: block;
                width: 100%;
                height: 576px;
                margin-left: auto;
                margin-right: auto;
                margin-bottom: auto;
            }
    
            .controls {
                display: block;
                width: 100%;
                text-align: left;
                margin-left: auto;
                margin-right: auto;
            }
        </style>
    </head>
    <body>
        <div class="mainContainer">
    		<video id="videoElement" class="centeredVideo" controls autoplay width="1024" height="576" muted>Your browser is too old which doesn't support HTML5 video.</video>
        </div>
        <br>
        <div class="controls">
            <!--<button onclick="flv_load()">加载</button>-->
            <button onclick="flv_start()">开始</button>
            <button onclick="flv_pause()">暂停</button>
            <button onclick="flv_destroy()">停止</button>
            <input style="width:100px" type="text" name="seekpoint" />
            <button onclick="flv_seekto()">跳转</button>
        </div>
        <script src="https://cdn.bootcdn.net/ajax/libs/flv.js/1.5.0/flv.min.js"></script>
        <script>
            var player = document.getElementById('videoElement');
            if (flvjs.isSupported()) {
                var flvPlayer = flvjs.createPlayer({
    				type: 'flv',
    				url: 'http://192.168.1.100:8005/live?port=1935&app=myapp&stream=0003',
                    "isLive": true,//<====加个这个 
    				hasAudio: false,
    				hasVideo: true,
    				//withCredentials: false,
    				//cors: true
                }, {
    				enableWorker: true,	// 开启多线程
    				enableStashBuffer: false,
    				lazyLoad: false,
    				lazyLoadMaxDuration: 0,
    				lazyLoadRecoverDuration: 0,
    				deferLoadAfterSourceOpen: false,
    				fixAudioTimestampGap: true,
    				autoCleanupSourceBuffer: true,
    			});
                flvPlayer.attachMediaElement(videoElement);
                flvPlayer.load(); //加载
                flv_start();
            }
    
            function flv_start() {
                player.play();
            }
    
            function flv_pause() {
                player.pause();
            }
    
            function flv_destroy() {
                player.pause();
                player.unload();
                player.detachMediaElement();
                player.destroy();
                player = null;
            }
    
            function flv_seekto() {
                player.currentTime = parseFloat(document.getElementsByName('seekpoint')[0].value);
            }
        </script>
    </body>
    </html>

    5、效果

    6、需要下载nginx-1.19.3-http-flv.zip,下载地址:https://download.csdn.net/download/codebooks/12793877

    7、配置Nginx

    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模块在access.log中记录日志的间隔时间,对调试非常有用
        log_size     1m; #log模块用来记录日志的缓冲区大小
    
        server {
            listen 1935;
            # server_name www.test.*;  #当模块中,只有一个server时,可以不配置server_name,nginx对于请求,当找不到匹配的server_name时,会默认发给第一个server进行处理。
    
            application myapp {
                live on;
                gop_cache on; #打开GOP缓存,减少首屏等待时间
            }
    
            application hls {
                live on;
                hls on;
                hls_path D:/TOOLS/nginx/Nginx_FLV/nginx-1.19.3/html/hls;
            }
    		
    		#application hls { #增加hls 协议支持
    		#	live on; #开启实时
    		#	hls on; #开启hls
    		#	hls_path D:/TOOLS/nginx/Nginx_FLV/ginx-1.19.3/html/hls; #切片存放位置
    		#	hls_fragment 1s; #每个TS文件包含1秒的视频内容
    		#	hls_playlist_length 3s; #HLS播放列表长度。 默认为30秒
    		#}
    
            application dash {
                live on;
                dash on;
                dash_path D:/TOOLS/nginx/Nginx_FLV/nginx-1.19.3/html/dash;
            }
        }
    }

     

    展开全文
  • 1.工具准备 FFmpeg,推流工具Nginx,想实现Flv还需要安装模块...ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/channels/101 -c copy -f flv rtmp://127.0.0.1:1935/live/mystream 参数解

    1.工具准备

    FFmpeg,推流工具Nginx,想实现Flv还需要安装模块nginx-http-flv-module。

    网友提供了编译好的版本,csdn上下载,Flv.js,网页播放所需的文件,

    2. 实时预览FFmpeg命令格式

    ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/channels/101 -c copy -f flv rtmp://127.0.0.1:1935/live/mystream
    参数解析
    -rtsp_transport tcp: 固定写法
    user:用户名
    password:密码
    ip:摄像头或NVR的IP地址
    port:摄像头或NVR的RTSP端口,默认是554,具体的RTSP取流规则可以百度
    -c copy: 输出直接复制,不转换格式
    -f flv:转成flv
    rtmp://127.0.0.1:1935/live/mystream:根据Nginx配置文件生成
    摄像头默认参数配置是h264则不会报错。

    如果出现如下报错,是因为摄像头是h265,FFmpeg是无法直接转成flv的。

    [flv @ 000002b1c6a1d680] Video codec hevc not compatible with flv Could not write header for output file #0 (incorrect codec parameters ?): Function not implemented
    这种情况下需要将转码,将h265先转成h264,再转成flv,

    具体指令如下:ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/channels/101 -c:v libx264 -f flv rtmp://127.0.0.1:1935/live/mystream


    实时预览有两种播放选择:

    直接使用子码流播放,就不需要再进行h264的转换,这样的响应速度会更快,但是画质会差点;

    用主码流播放则需要进行h264的转换,响应速度会慢2、3秒,画质不影响

    3. 录像回放正常的RTSP取流规则如下:

    rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z&endtime=20200422t101003z


    根据实时回放的FFmpeg规则,很容易想到将录像rtsp取流的url放到指令中

    ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z&endtime=20200422t101003z -c copy -f flv rtmp://127.0.0.1:1935/live/mystream
    直接在命令行中输入回车,会出现如下:


    问题1:[tcp @ 00000216b1c116c0] Port missing in uri
    rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z: Invalid argument
    'endtime' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。
    去掉rtsp取流url中的‘&endtime=20200422t101003z’,至于没有了结束时间怎么停止播放目前未找到好办法。ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z -c copy -f flv rtmp://127.0.0.1:1935/live/mystream
    再次报错
    问题2:

    [flv @ 000001f285f01bc0] Video codec hevc not compatible with flvCould not write header for output file #0 (incorrect codec parameters ?): Function not implemented
    这次出现的报错和实时预览中的一样,是因为摄像头h265的原因,不同的是实时预览可以选择子码流播放不转码,但是回放中只要主码流,所以只能进行转码操作ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z -c:v libx264 -f flv rtmp://127.0.0.1:1935/live/mystream
    在命令行中输入回车,会出现如下


    问题3:Input #0, rtsp, from 'rtsp://WSdun:WSdun@123@172.16.2.200:554/Streaming/tracks/201?starttime=20200422t093812z':
    Metadata:
    title : HIK Media Server V3.4.93
    comment : HIK Media Server Session Description : standard
    Duration: -187967:-4:-22.-32, start: 0.040000, bitrate: N/A
    Stream #0:0: Video: hevc (Main), yuvj420p(pc, bt709), 1920x1080, 25 fps, 25 tbr, 90k tbn, 90k tbc
    Stream #0:1: Audio: none, 16000 Hz, mono
    Stream mapping:
    Stream #0:0 -> #0:0 (hevc (native) -> h264 (libx264))
    Stream #0:1 -> #0:1 (? (?) -> mp3 (libmp3lame))
    Decoder (codec none) not found for input stream #0:1
    通过rtsp回放拉流的话会同时拉取2个流音频流、视频流,就是上面中出现的Stream #0:0和Stram #0:1,

    上面的报错是找不到音频流的编码方式,无法解码,实时预览拉流只会拉取视频流所以不会报错。通过查看FFmpeg的参数发现有个参数-an表示去除音频,将它放入到指令中ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z -c:v libx264 -an -f flv rtmp://127.0.0.1:1935/live/mystream
    OK,能够正常播放录像拉。

    但是到这里还不是最完美的解决了问题,你肯定发现播放速度非常慢,从输入ffmpeg指令到flv输出至少要等6~8秒。再问题3中,除了直接报错不能运行了外,其实在控制台上方还有个告警[rtsp @ 000001d6cf7108c0] Could not find codec parameters for stream 1 (Audio: none, 16000 Hz, 1 channels): unknown codec
    Consider increasing the value for the 'analyzeduration' and 'probesize' options
    Guessed Channel Layout for Input Stream #0.1 : mono
    还是问题3中提到的找不到音频参数。

    FFmpeg拉流的时候会检查视频流参数和音频流参数,视频流参数一直找不到,这中间有个超时时间。当时能想到的是能不能在拉流的时候和实施预览一样只拉视频流,上百度,找到了这个参数-allowed_media_types video(只取音频流的话就填audio),将它代入指令中,这时候可以去掉-an参数,没有音频流也就没有所谓的去除音频ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z -c:v libx264 -f flv rtmp://127.0.0.1:1935/live/mystream
    。录像回放速度就和视频预览一样了。

    展开全文
  • 工具准备FFmpeg,推流工具Nginx,要想实现Flv还需要安装模块...Flv.js,网页播放所需的文件,安装教程参考了这位大神写的教程碰到的问题1. nginx-http-flv-module要想实现Flv还需要安装模块nginx-http-flv-module,

    工具准备FFmpeg,推流工具Nginx,要想实现Flv还需要安装模块nginx-http-flv-module,这个模块需要编译,如果是linux环境很方便,如果是windows环境,对不起,超级麻烦,网上也有教程,太复杂了,还好有网友提供了编译好的版本,csdn上下载,要币才能下载,求助万能的淘宝花了5毛钱下载。Flv.js,网页播放所需的文件,安装教程参考了这位大神写的教程碰到的问题1. nginx-http-flv-module要想实现Flv还需要安装模块nginx-http-flv-module,这个模块需要编译,如果是linux环境很方便,如果是windows环境,对不起,超级麻烦,网上也有教程,太复杂了,还好有网友提供了编译好的版本,csdn上下载,要币才能下载,求助万能的淘宝花了5毛钱下载。2. 实时预览FFmpeg命令格式ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/channels/101 -c copy -f flv rtmp://127.0.0.1:1935/live/mystream
    参数解析


    -rtsp_transport tcp: 固定写法
    user:用户名
    password:密码
    ip:摄像头或NVR的IP地址
    port:摄像头或NVR的RTSP端口,默认是554,具体的RTSP取流规则可以百度
    -c copy: 输出直接复制,不转换格式
    -f flv:转成flv
    rtmp://127.0.0.1:1935/live/mystream:根据Nginx配置文件生成
    摄像头默认参数配置是h264则不会报错。如果出现如下报错,是因为摄像头是h265,FFmpeg是无法直接转成flv的[flv @ 000002b1c6a1d680] Video codec hevc not compatible with flv
    Could not write header for output file #0 (incorrect codec parameters ?): Function not implemented
    这种情况下需要将转码,将h265先转成h264,再转成flv,具体指令如下ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/channels/101 -c:v libx264 -f flv rtmp://127.0.0.1:1935/live/mystream
    实时预览有两种播放选择:直接使用子码流播放,就不需要再进行h264的转换,这样的响应速度会更快,但是画质会差点;用主码流播放则需要进行h264的转换,响应速度会慢2、3秒,画质不影响3. 录像回放正常的RTSP取流规则如下:rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z&endtime=20200422t101003z
    根据实时回放的FFmpeg规则,很容易想到将录像rtsp取流的url放到指令中ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z&endtime=20200422t101003z -c copy -f flv rtmp://127.0.0.1:1935/live/mystream
    直接在命令行中输入回车,会出现如下
    问题1:[tcp @ 00000216b1c116c0] Port missing in uri
    rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z: Invalid argument
    'endtime' 不是内部或外部命令,也不是可运行的程序
    或批处理文件。
    去掉rtsp取流url中的‘&endtime=20200422t101003z’,至于没有了结束时间怎么停止播放目前未找到好办法。ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z -c copy -f flv rtmp://127.0.0.1:1935/live/mystream
    再次报错
    问题2:[flv @ 000001f285f01bc0] Video codec hevc not compatible with flv
    Could not write header for output file #0 (incorrect codec parameters ?): Function not implemented
    这次出现的报错和实时预览中的一样,是因为摄像头h265的原因,不同的是实时预览可以选择子码流播放不转码,但是回放中只要主码流,所以只能进行转码操作ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z -c:v libx264 -f flv rtmp://127.0.0.1:1935/live/mystream
    在命令行中输入回车,会出现如下
    问题3:Input #0, rtsp, from 'rtsp://WSdun:WSdun@123@172.16.2.200:554/Streaming/tracks/201?starttime=20200422t093812z':
    Metadata:
    title : HIK Media Server V3.4.93
    comment : HIK Media Server Session Description : standard
    Duration: -187967:-4:-22.-32, start: 0.040000, bitrate: N/A
    Stream #0:0: Video: hevc (Main), yuvj420p(pc, bt709), 1920x1080, 25 fps, 25 tbr, 90k tbn, 90k tbc
    Stream #0:1: Audio: none, 16000 Hz, mono
    Stream mapping:
    Stream #0:0 -> #0:0 (hevc (native) -> h264 (libx264))
    Stream #0:1 -> #0:1 (? (?) -> mp3 (libmp3lame))
    Decoder (codec none) not found for input stream #0:1
    通过rtsp回放拉流的话会同时拉取2个流音频流、视频流,就是上面中出现的Stream #0:0和Stram #0:1,上面的报错是找不到音频流的编码方式,无法解码,实时预览拉流只会拉取视频流所以不会报错。通过查看FFmpeg的参数发现有个参数-an表示去除音频,将它放入到指令中ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z -c:v libx264 -an -f flv rtmp://127.0.0.1:1935/live/mystream
    OK,能够正常播放录像拉。但是到这里还不是最完美的解决了问题,你肯定发现播放速度非常慢,从输入ffmpeg指令到flv输出至少要等6~8秒。再问题3中,除了直接报错不能运行了外,其实在控制台上方还有个告警[rtsp @ 000001d6cf7108c0] Could not find codec parameters for stream 1 (Audio: none, 16000 Hz, 1 channels): unknown codec
    Consider increasing the value for the 'analyzeduration' and 'probesize' options
    Guessed Channel Layout for Input Stream #0.1 : mono
    还是问题3中提到的找不到音频参数。FFmpeg拉流的时候会检查视频流参数和音频流参数,视频流参数一直找不到,这中间有个超时时间。当时能想到的是能不能在拉流的时候和实施预览一样只拉视频流,通过度娘查找了一拳,找到了这个参数-allowed_media_types video(只取音频流的话就填audio),将它代入指令中,这时候可以去掉-an参数,没有音频流也就没有所谓的去除音频ffmpeg -rtsp_transport tcp -i rtsp://user:password@ip:port/Streaming/tracks/101?starttime=20200422t093812z -c:v libx264 -f flv rtmp://127.0.0.1:1935/live/mystream
    这下算是完美了。录像回放速度就和视频预览一样了。

    展开全文
  • GB28181RTMP、HLS、RTSPFLV

    万次阅读 2019-03-13 21:20:03
    需要将获取到的PS流转成ES流,然后打包提供RTMP、HLS、RTSP、HTTP-FLV格式进行直播流分发。如此就实现了通过GB28181协议将安防摄像头流转成可Web、手机、微信、客户端等直播、回放、控制的互联网直播方式。 ...
  • 前端经过好多的尝试,终于在谷歌上把海康视频流rtsp转成rtmp成功播放了,不足之处在于视频有0.3秒延迟
  • 需要将获取到的PS流转成ES流,然后打包提供RTMP、HLS、RTSP、HTTP-FLV格式进行直播流分发。如此就实现了通过GB28181协议将安防摄像头流转成可Web、手机、微信、客户端等直播、回放、控制的互联网直播方式。 ...
  • LiveNVR Onvif/RTSP流媒体服务,支持RTSP|HLS|FLV|RTMP稳定拉流接入,支持Onvif协议接入,支持RTSP/RTMP/HLS/HTTP-FLV/WS-FLV分发,GB28181输出,将传统安防监控设备互联化,无插件直播等。 配置不降码率 解压目录下...
  • 通过ffmpeg将摄像头的实时流转成http-flv,在到第五分钟的时候 就会卡住不了,请问这是为什么呢? 我的推流命令是:ffmpeg -rtsp_transport tcp -i rtsp://admin:lzm12345@192.168.1.222/h264/ch1/main/av_...
  • 实测可用,支持一下。https://www.cnblogs.com/hyzs25/p/3644917.html
  • 作者前言:近期由于硬性需求,把海康的rtsp转换为前端可播放的视频流格式,寻了好多文章不详细,不准确,不负责,还有一些写的很详细的不知为何偏偏就不能成功访问,通过整整一天时间的整理最终达到预想的结果,下面...
  • LiveNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP协议输出的设备接入到LiveNVR,LiveNVR能够将这些视频源的音视频数据进行拉取,转换为HTTP-FLV/RTMP/HLS,...
  • RTSP转rtmp

    2020-09-23 18:01:00
    RTSP转rtmp 1.安装ffmpeg yum install epel-release -y rpm --import http://li.nux.ro/down...
  • 安防监控直播流拉无插件流媒体服务多用户管理支持添加管理员管理不同的通道1、软件服务搭建2、用户管理2.1、添加观众2.1.1、关联观众观看通道2.1.1.1、 全部关联2.1.1.2、选中关联部分通道2.2 使用观众用户登录 ...
  • java实现rtsp转rtmp

    2021-03-18 16:22:02
    RTSP转RTMP有多种实现方式,原理差不多。 最简单的可以用ffmpeg来实现: ffmpeg -i "rtsp流路径" -vcodec copy -acodec copy -f flv "rtmp://127.0.0.1:1935/live/" 上面实现了功能,但是没有工程化,实用性不强...
  • 国标28181转rtsp/rtmp/hls/flv/webrtc的直播平台,国标28181平台支持同时接入多个国标平台和设备,支持级联上级平台,支持BS客户端,支持大批量设备的接入
  • 文章目录前端VUE播放RTSP、RTMP、HLS、FLV视频流的解决方案前言一、目前几种常见视频流的优缺点二、几种视频流的播放方法1.RTSP2.RTSP转RTMP3.RTSP转HLS4.RTSP转FLV总结 前言 最近有个需求是前端在浏览器显示...
  • LiveNVR能够通过简单的网络摄像机通道配置,将传统监控行业里面的高清网络摄像机IP Camera、NVR等具有RTSP协议输出的设备接入到LiveNVR,LiveNVR能够将这些视频源的音视频数据进行拉取,转换为HTTP-FLV/RTMP/HLS,...
  • LiveNVR简介 LiveNVR能够通过简单的摄像机通道配置、存储配置、云平台对接配置、CDN配置等,将统监控行业里面的高清网络摄像机IP Camera、NVR、移动拍摄设备接入到...音频解码也是需要消耗资源的;
  • ffmpeg实现rtsp转rtmp

    千次阅读 2020-08-31 16:10:44
    首先,说一下ffmpeg实现rtsp转rtmp需要的条件: (1)ffmpeg包:https://github.com/xueying123-cat/ffmpeg (2)nginx-rtmp:https://github.com/xueying123-cat/nginx-rtmp.git (3)转码服务,这是比较重要的将...
  • 海康威视视频,视频流 RTSP RTMP 。海

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 7,425
精华内容 2,970
关键字:

rtsp转flv