精华内容
下载资源
问答
  • Rtsp转Rtmp Java客户端

    2021-06-10 14:46:52
    这是rtsp转流到rtmp服务器客户端-javafx客户端
  • RTSP转rtmp

    2020-09-23 18:01:00
    RTSP转rtmp 1.安装ffmpeg yum install epel-release -y rpm --import http://li.nux.ro/down...

    RTSP转rtmp

    1.安装ffmpeg

    yum install epel-release -y
    rpm --import http://li.nux.ro/download/nux/RPM-GPG-KEY-nux.ro
    rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-5.el7.nux.noarch.rpm
    yum install ffmpeg ffmpeg-devel -y
    

    2.docker安装alfg/nginx-rtmp

    docker run -itd -p 1935:1935 -p 8085:80 --name nginx_ffmpeg alfg/nginx-rtmp
    

    3.开启rtsp转rtmp

    nohup ffmpeg -f rtsp -rtsp_transport tcp -i 'rtsp://192.168.1.212:8557/sub_stream_1' -codec copy -f flv -an 'rtmp://192.168.1.122:1935/stream/test' > /data/ffmpeg/logs/ffmpeg.log 2>&1 &  
    

    4.通过vlc等播放器通过rtmp地址访问

    打开vlc播放器,点击媒体-网路串流

    输入rtmp://192.168.1.122:1935/stream/test

    等待8s左右即可出现视频画面,但是会有8s左右延迟

    展开全文
  • android端rtsp转rtmp

    2020-11-30 15:29:33
    <div><p>你好,看你项目写的可以实现rtsp转rtmp,且用个android,请问你的项目可以实现在android端实现rtsp转rtmp吗?</p><p>该提问来源于开源项目:xia-chu/ZLMediaKit</p></div>
  • 配套博文见《ffmpeg 将rtsp转成rtmp用网页播放安装及使用教程》 https://blog.csdn.net/sac761/article/details/108731650
  • 使用FFmpeg和FFserver将RTSP转换为MJPEG流 以下是可用的环境变量及其默认值。 根据需要覆盖它们。 变数 默认 RTSP_URL rtsp://freja.hiof.no:1935 / rtplive / definst / hessdalen03.stream FFSERVER_LOG_...
  • 海康威视本地局域网内视频拉取播放,rtsp转rtmp视频播放,支持谷歌高版本。亲测有效,可放心下载。
  • 海康威视视频,视频流 RTSP RTMP 。海
  • 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/" 上面实现了功能,但是没有工程化,实用性不强...

    RTSP转RTMP有多种实现方式,原理差不多。

    最简单的可以用ffmpeg来实现:

    ffmpeg -i "rtsp流路径" -vcodec copy -acodec copy -f flv "rtmp://127.0.0.1:1935/live/"

    上面实现了功能,但是没有工程化,实用性不强,本文重点在于Java实现。

    java处理音视频目前最好的库就是javacv,我们可以通过FFmpegFrameGrabber来捕获rtsp数据流,

           // 采集/抓取器
            grabber = new FFmpegFrameGrabber(src);
            if(src.indexOf("rtsp")>=0) {
                grabber.setOption("rtsp_transport","tcp");
            }
            grabber.start();// 开始之后ffmpeg会采集视频信息,之后就可以获取音视频信息
            if (width < 0 || height < 0) {
                width = grabber.getImageWidth();
                height = grabber.getImageHeight();
            }
            // 视频参数
            audiocodecid = grabber.getAudioCodec();
            codecid = grabber.getVideoCodec();
            framerate = grabber.getVideoFrameRate();// 帧率
            bitrate = grabber.getVideoBitrate();// 比特率

    然后通过FFmpegFrameRecorder来录制推流

            // 录制/推流器
            record = new FFmpegFrameRecorder(out, width, height);
            record.setVideoOption("crf", "18");
            record.setGopSize(2);
            record.setFrameRate(framerate);
            record.setVideoBitrate(bitrate);
    
            record.setAudioChannels(audioChannels);
            record.setAudioBitrate(audioBitrate);
            record.setSampleRate(sampleRate);
            AVFormatContext fc = null;
            if (out.indexOf("rtmp") >= 0 || out.indexOf("flv") > 0) {
                // 封装格式flv
                record.setFormat("flv");
                record.setAudioCodecName("aac");
                record.setVideoCodec(codecid);
                fc = grabber.getFormatContext();
            }
            record.start(fc);

    下面提供了一个springboot的工程地址,实现了传入rtsp地址,获得前端播放地址的功能,后续可以在此基础上进一步完善。

    工程地址:

           flvjs实现rtsp数据流无插件浏览器播放-前端

            flvjs实现rtsp数据流无插件浏览器播放-后端

    展开全文
  • 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)转码服务,这是比较重要的将...

    首先,说一下ffmpeg实现rtsp转rtmp需要的条件:

    (1)ffmpeg包: https://github.com/xueying123-cat/ffmpeg

    (2)nginx-rtmp:https://github.com/xueying123-cat/nginx-rtmp.git

    (3)转码服务,https://github.com/xueying123-cat/camera.git,这个代码对于多个转流同时执行可能存在线程不能正常结束的问题,大家有好的建议可以留言赐教

    思路:转码服务将SVR中的rtsp流通过ffmpeg包转化为rtmp包,然后nginx-rtmp支持rtmp流播放。

    ffmpeg转流命令:

    ffmpeg -re  -rtsp_transport tcp -i "rtsp://username:password@serverIp/id=chnid" -f flv -vcodec copy -acodec copy -f flv -s 1280x720 -q 10 "rtmp://nginx_rtmp_ip:nginx_rtmp_ip/live/test"

    nginx-rtmp的nginx-conf配置:

    worker_processes  1;
    
    error_log  logs/error.log info;
    
    events {
        worker_connections  1024;
    }
    
    rtmp {
        server {
            listen 1935;
            chunk_size 4096;   #//数据传输块的大小
            application live {
                live on;
            }
    		application vod {
                play D:\lib; #//视频文件存放位置。
            }
            application hls {
                live on;
                hls on;  
                hls_path D:\lib;  
                hls_fragment 8s;  
            }
        }
    }
    
    http {
        server {
            listen      8083;
    		···
        }
    }
    
    

    现在说一下转码服务如何实现将rtsp流转化为rtmp流

    //(1)获取当前转流命令,配置在常量类里
    String command = ffmpegCommand.RTSP_TO_RTMP.getValue()
            .replace("rtspUrl", rtsp)
            .replace("rtmpUrl", rtmp);
    
    //(2)执行cmd转流命令
    Runtime.getRuntime().exec(commond)
    
    //(3)将当前转流功能线程里执行,维护当前转流功能不被其他请求打扰
    private static ThreadLocal<BufferedReader> br = ThreadLocal.<BufferedReader>withInitial(() -> null);
    private static ThreadLocal<String> threadId = ThreadLocal.<String>withInitial(() -> null);    //定义线程内变量
    private static ThreadLocal<Boolean> cameraStatus = ThreadLocal.<Boolean>withInitial(() -> false);
    
    //在本机创建一个进程
    Process process = Runtime.getRuntime().exec(command);
    
    new Thread(() -> {
        cameraStatus.set(true);
        InputStream is = process.getErrorStream();
        BufferedReader reader = new BufferedReader(new InputStreamReader(is));
        br.set(reader);
        threadId.set(id);
    
        while (cameraStatus.get()) {
            //对流操作
            ···
            
            if (Thread.currentThread().isInterrupted()) {
                cameraStatus.set(false);
                closeResources(is, reader);
            }
        }
    
    }
    //(4)结束转流时,中断线程,并向当前线程中发送ffmpeg的停止命令q指令终止process的进程,停止当前线程
        thread.interrupt();
        OutputStream out = process.getOutputStream();
        Writer w = new OutputStreamWriter(out);
        try {
            w.write("q");
            w.flush();
        } catch (IOException e) {
            throw new CameraException("IOException==stop=>", e.getMessage());
        } finally {
            try {
                if (w != null) {
                    w.close();
                }
            } catch (IOException e) {
                throw new CameraException("IOException==closew=>", e.getMessage());
            }
        }
    
    

    测试结果:

     

    图像:

     

    写的比较粗糙,如果哪里有不明白,欢迎留言

    展开全文
  • 前端经过好多的尝试,终于在谷歌上把海康视频流rtsp转成rtmp成功播放了,不足之处在于视频有0.3秒延迟
  • rtsp转hls,没有声音

    2021-01-05 02:27:20
    rtsp转hls,hls播放没有声音,但是rtsp我用vlc播放是有声音的。 摄像头音频配置: <img alt="image" src="https://img-blog.csdnimg.cn/img_convert/04c87bd4c3448d72f04779302c92e124.png" /></p...
  • <div><p>你好,...rtsp转hls,addStreamProxy实现原理是什么?rtsp拉流转成hls,是使用FFmpeg推流的吗?</p><p>该提问来源于开源项目:xia-chu/ZLMediaKit</p></div>
  • 海康威视本地局域网内视频拉取播放,rtsp转rtmp视频播放,支持谷歌高版本。亲测有效,可放心下载。
  • 安卓RTSP转MP4

    2018-04-19 19:05:11
    本文链接:... 测试FFmpeg的RTSP转MP4功能 环境:Win7 工具:ffmpeg-win-2.2.2 命令行运行 VLC播放 功能正常。 测试FFmpeg4Android项目 环境 - Win7 - Android Studio 3.1 -...
  • rtsp转rtmp

    2017-12-27 18:38:06
    可直接将rtsp流转换为rtmp流进行推送,效率极高,同时支持windows和linux
  • RTSP转RTMP 推流器 目录 1 设备介绍 2 使用界面 3 状态显示 4 Onvif设备发现 5 云台控制 6 分屏直播 7 录像回放 8 通道设置 9 系统设置 10 设备输出HLS视频流 ##1. 设备介绍 本设备是武汉市迅思维科技有限公司开发...
  • IPC或者NVR基本上都支持RTSP流输出,而互联网直播云服务大部分都支持的是RTMP推流输入,那么我们实际要做的就是将IPC或者NVR的RTSP流转成RTMP流推送到公有云的直播地址,简而言之就是RTSP转RTMP; 最佳实践 一、
  • nginx + ffmpeg rtsp rtmp

    2020-07-07 17:43:00
    1、下载nginx ... 2、下载ffmpeg ... 3、开启nginx cd nginx 打开终端 输入 start nginx.exe 4、调用如下命令 rtsp rtmp流 必须开启nginx后再流 ffmpeg-re-rtsp_transport tcp -i "rtsp...
  • 配套博文见《ffmpeg 将rtsp转成rtmp用网页播放安装及使用教程》 https://blog.csdn.net/sac761/article/details/108731650
  • EasyStream系列1之rtsp转rtmp

    千次阅读 2017-08-17 15:06:17
    EasyStream系列1之rtsp转rtmp EasyStream系列2之rtmp转rtsp EasyStream系列3之rtsp转rtsp EasyStream系列4之rtmp转rtmp EasyStream系列5之本地文件转rtsp EasyStream系列6之本地文件转rtmp Ea
  • windows版+linux版 实现在线直播 海康威视rtsp转rtmp 工作中正在使用,积分少感谢支持,不胜感激。
  • javacv-RTSP转RTMP

    2020-11-04 09:10:10
    使用javacv实现rtsp转stmp,网上找了好多方法但都不符合业务,于是自己封装了一个。 功能依赖nginx-rtmp服务器,不搞什么上传资源了,评论获取。 代码: package com.app.rtmp; import java.util.HashMap; ...
  • ffmpeg rtsp转rtmp推流命令 默认使用udp推流: ffmpeg -i “rtsp://admin:cmable8888@192.168.70.6:554/cam/realmonitor?channel=1&subtype=0” -f flv -r 25 -s 1920*1080 -an “rtmp://192.168.91.107/...
  • 但这样做有个局限,就是当有几百路rtsp流需要转发时,不能实现根据客户端观看的需求再自主启动协议,只能就启动转发软件,把rtsp协议转换到rtmp协议,这样就会造成带宽的浪费和系统负载过大,我们更需要有人开始...
  • 实用程序演示 在线视频断点播放,文件断点下载。rtsp转rtmp
  • 目前大部分第三方直播平台都是RTMP的协议,那么将监控RTSP转RTMP实现网络直播仅需搭配一套低成本的MG300视频网关设备即可。 监控RTSP转RTMP低成本方案: 视频媒体网关设备可以实现SRT、RTMP和RTSP等多种视频流协议的...
  • 海康摄像头web观看操作rtmp/hls推流rtsp流转rtmp流 源码介绍:  海康摄像头web端无插件播放是指设置好摄像头参数后,即可在web浏览器不安装任何自定义插件即可实现流程播放。  系统通过拉取海康rtsp流,在用户...
  • rtsp 简单的rtsp播放器,实现了rtp over tcp方式收流,h264、g711、aac等音视频解码,音频渲染使用xaudio,视频渲染支持d3d9、d3d11和opengl。

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 1,662
精华内容 664
关键字:

rtsp转