FFmpeg实现监控摄像头的RTSP协议转RTMP协议直播
文章来源:http://www.cuplayer.com/player/PlayerCode/RTSP/2014/0706/1419.html
整理了一下要解决如下问题:
1、 摄像头的数据采集。
2、 如何将采集到的数据交给Red5处理。
3、 [FFmpeg]图文介绍windows下实现编译ffmpeg工程的详细步骤
解决方法:
1、 我们使用的摄像头是海康的可以通过rtsp协议获取到摄像头的直播数据。所以可以通过 :
2、 rtsp://admin:12345@192.168.1.77:554/h264/ch1/main/av_stream
3、 实现视频数据的采集。
4、 获取到数据流后如何利用Red5发布出去呢?
5、 因为获取到的数据是rtsp协议的,所以要转协议成rtmp,ffmpeg可以实现这个功能。
具体步骤:
1、 首先要安装流媒体服务器Red5用于rtmp数据的接收与发布。
l 下载Red5
l 我下载的版本是setup-Red5-1.0.1-java6.exe
l 安装Red5 http://www.cuplayer.com/player/PlayerCode/Red5/2013/0319/760.html
l 在安装的过程会弹窗要求设置一些服务器信息。
l 设置服务器的IP
设置HTTP访问端口
后面一直“next”即可。
安装完成后访问:http://localhost:5080/ 如果可以看到
Red5默认是会安装成系统的服务的,如果重复启动会报端口占用的错误。
在http://localhost:5080/installer/ 页面中安装Red5自带的Demo OflaDemo。安装好后访问http://localhost:5080/oflaDemo/index.html 即可已看到通过rtmp 点播的视频文件视频。这样你的Red5服务器就安装完成了。
1、 下载安装FFmpeg, 安装 ffmpeg教程:http://www.cuplayer.com/player/PlayerCode/FFmpeg/2014/0706/1401.html
这里下载的是编译好的ffmpeg-20130703-git-e0be3cb-win32-shared, 直接解压好,并将bin目录加入到path环境变量下即可。
2、 测试
l 运行Red5
l 在命令行下执行:
- ffmpeg -i "rtsp://admin:12345@192.168.1.77:554/h264/ch1/main/av_stream" -f flv -r 25 -s 640x480 -an "rtmp://localhost/oflaDemo/hello"
l 修改Red5安装目录下的 webapps\oflaDemo\index.html 文件,将jwplayer的 file 属性改成 “hello”。
l 访问 http://localhost:5080/oflaDemo/index.html 在你所修改的播放器上是否可以看到摄像头的直播了。
FFmpeg实现监控摄像头的RTSP协议转RTMP协议直播的更多相关文章
- 推流协议 支持RTMP协议推流
Stream Type Stream play domain nameStreaming Domain Name 播流 推流 推流协议 支持RTMP协议推流
- RTSP协议、RTMP协议、HTTP协议的区别
理论上RTSP RTMPHTTP都可以做直播和点播,但一般做直播用RTSP RTMP,做点播用HTTP.做视频会议的时候原来用SIP协议,现在基本上被RTMP协议取代了. RTSP. RTMP.HTT ...
- ffmpeg+EasyDSS流媒体服务器实现稳定的rtmp推流直播
本文转自EasyDarwin团队成员Alex的博客:http://blog.csdn.net/cai6811376/article/details/74783269 需求 在做EasyDSS开发时,总 ...
- 视频直播源码开发中的流媒体协议:rtmp协议
一.概念与摘要 视频直播源码的RTMP协议从属于应用层,被设计用来在适合的传输协议(如TCP)上复用和打包多媒体传输流(如音频.视频和互动内容).RTMP提供了一套全双工的可靠的多路复用消息服务,类似 ...
- 玩转直播系列之RTMP协议和源码解析(2)
一.背景 实时消息传输协议(Real-Time Messaging Protocol)是目前直播的主要协议,是Adobe公司为Flash播放器和服务器之间提供音视频数据传输服务而设计的应用层私有协议. ...
- RTMP协议
Real Time Messaging Protocol(实时消息传送协议协议)概述 实时消息传送协议是Adobe Systems公司为Flash播放器和服务器之间音频.视频和数据传输开发的私有协 ...
- RTMP协议详解(转)
转自<RTMP协议详解(一) (二) (三) > Real Time Messaging Protocol(实时消息传送协议协议)是Adobe Systems公司为Flash播放器和服务器 ...
- RTMP协议研究
RTMP协议研究 1协议研究概述 协议设计和分析一直都是在工作遇到,正好在这里总结一下,说到协议,在这个网络的时代,没有人可以离开它了.他存在我们生活中的任何角落,只不过我们平时,并没有注意到它的存在 ...
- Golang开源流媒体服务器(RTMP/RTSP/HLS/FLV等协议)
一. lal 简介 lal是开源直播流媒体网络传输项目,主要由三部分组成: lalserver:流媒体转发服务器.类似于nginx-rtmp-module等服务,但支持更多的协议,提供更丰富的功能. ...
随机推荐
- java中this$0 this$1 this$2
import java.lang.reflect.Field; public class Outer {//this$0 public class FirstInner {//this$1 publi ...
- Linux-(ping,traceroute,ss)
ping命令 1.命令格式: ping [参数] [主机名或IP地址] 2.命令功能: ping命令用于:确定网络和各外部主机的状态:跟踪和隔离硬件和软件问题:测试.评估和管理网络.如果主机正在运行并 ...
- WPF中的Visual Tree和Logical Tree与路由事件
1.Visual Tree和Logical TreeLogical Tree:逻辑树,WPF中用户界面有一个对象树构建而成,这棵树叫做逻辑树,元素的声明分层结构形成了所谓的逻辑树!!Visual Tr ...
- 第一次项目上Linux服务器(二:——安装jdk)
本人采用的是rpm安装jdk1.8 1.下载jdk 去jdk下载页面找到要下载的jdk 本人下载的是jdk-8u161-linux-x64.rpm,百度云资源链接:链接:https://pan.bai ...
- SpringMVC源码阅读:拦截器
1.前言 SpringMVC是目前J2EE平台的主流Web框架,不熟悉的园友可以看SpringMVC源码阅读入门,它交代了SpringMVC的基础知识和源码阅读的技巧 本文将通过源码(基于Spring ...
- Css相册
对于相册,大家都很熟悉,常见的一种如下图所示: 当你点击下面的数字的时候,就会换一张图片,直接用链接就可以实现,很简单.下面我们将介绍其他两种css相册. 第一种css相册: 我们先来看看示意图: 当 ...
- CSS设置table下tbody滚动条与thead对齐的方法
<style>table tbody {display:block;height:195px;overflow-y:scroll;} table thead, tbody tr {disp ...
- [转]关于Linux安装mysql默认配置文件位置
本文转自:https://blog.csdn.net/smile___you/article/details/54409073 在linux下面安装mysql如果在/etc下面没有存在my.cnf配置 ...
- C#获取gif帧数
C#获取gif帧数 /// <summary> /// 获取gif帧数 /// </summary> /// <param name="gifBytes&quo ...
- javascript学习之路之元素获取和设置属性
收拾心情,学习学习js!总结下自己的学习所得! 现有的有三种方法可以获取元素的节点,分别是通过元素ID,通过标签名和类名来获取的 1.GetElmentById:将返回一个与那个有给定ID属性的值的元 ...