使用red5+ffmpeg读取ip摄像头流并广播rtmp

windows:

1. 下载red5开源流媒体服务器

https://github.com/Red5/red5-server/releases


2 下载 adobe media encoder 流编码器
http://www.softpedia.com/get/Multimedia/Graphic/Graphic-Others/Adobe-Media-Encoder.shtml


3. 安装red5的示例程序(打开5080端口页面,根据提示进行安装即可)


4. 测试red5。打开 adobe media encoder,将摄像头流广播到 to red5 FMS

5. 使用jwplayer或者flowplayer播放即可
JWPlayer 的示例代码可以在 red5 文件夹中找到:

C:\Craft\VideoLab\red5-server\webapps\oflaDemo

------------------

以上例子是从本机摄像头读流,如果流来自其他rtsp,就需要以下步骤:

安装 ffmpeg-on-windows:
http://adaptivesamples.com/how-to-install-ffmpeg-on-windows/


运行ffmpeg,将流 从rtsp转发到文件
ffmpeg.exe -i "rtsp://xxx" -f flv -r 25 -an test.flv 


运行ffmpeg,将流转发到red5服务器
ffmpeg -i rtsp://xxx -y -rtbufsize 100m -f mpeg1video -b:v 500k -r 21 -q:v 10 -s 640x480 -f flv rtmp://localhost/live/stream1

--------------

linux(ubuntu):

1 . 安装 java
sudo apt-get update
sudo apt-get install oracle-java8-installer


nano /etc/environment : 
JAVA_HOME="/usr/lib/jvm/java-8-openjdk-amd64"
保存

1.安装 red5 server :
sudo apt-get install -y red5-server
cd /usr/local/red5-server

2. sh red5.sh

或后台运行
service red5-server start

4. 运行 ffmpeg 
ffmpeg -i rtsp://xxx -y -rtbufsize 100m -f mpeg1video -b:v 500k -r 21 -q:v 10 -s 640x480 -f flv rtmp://localhost/live/stream1


5. 确保ubuntu打开了以下端口
5080 : portal
1935 : RTMP
8554 : RTSP
8088 : default second screen client registy
6262 : default second screen host registry


客户端测试程序(flowplayer):



    
    
	

 

RTMP Streaming



你可能感兴趣的:(Linux,Iori的工具箱)