EasyRTMP – An easy way to implement RTMP streaming(Pushing rtmp stream to Red5/FMS)


[featured_image]
Download
Download is available until [expire_date]
  • Version [version]
  • Download 1942
  • File Size 5.79 MB
  • File Count 1
  • Create Date 2015/01/07
  • Last Updated 2015/01/15

EasyRTMP - An easy way to implement RTMP streaming(Pushing rtmp stream to Red5/FMS)

EasyRTMPWhat is EasyRTMP?

Similar to EasyIPCam or EzStreamSvr project, EasyRTMP is also a simple software/tools to start your own LIVE STREAMING. EasyRTMP is currently using librtmp, nginx and nginx-rtmp-module to do the RTMP and HLS streaming. For the streaming server, you can also use some official/commercial streaming servers like FMS, Red5, or Wowza.

The major difference to me is: EasyIPCam & EzStreamSvr are based on RTSP/RTP/RTCP technique, while EasyRTMP is based on RTMP techique.
And there are some slight differences between EasyIPCam and EasyRTMP:
1. EasyIPCam is an independent streaming server, but EasyRTMP is only a client-side publisher, it needs a RTMP server to work.
2. Video streaming by RTSP/RTP solution requires a viewer-side player, such as VLC Player, to view the video, while video streaming by RTMP solution doesn't require you any viewer-side installations, because it's already in your PC, it's name is Adobe Flash Player which is the NO.1 application throughout the world.

Simply put, if you wish your published video can be viewed by someone who don't like to install any player on his/her PC, EasyRTMP will be a good choice.

And you can also view the video publish by EasyRTMP through HLS which is benifit from nginx-rtmp-module.

Excited? Goto download page and start your own LIVE streaming. It's free, free for personal, free for commercial, free to distribute.

Where to download?

You can download the EasyRTMP Suit here by the address listed below:
1. EasyRTMP - the video publisher: http://rg4.net/p/easyrtmp/EasyRTMP.7z
2. Windows test server - nginx: http://rg4.net/p/easyrtmp/nginx-win32.7z

I strongly recommand you to run the full suit on your own PC, but if you want do some online test, I'v made my VPS prepared for RTMP support, and you can push the video to my test streaming server(http://live.rg4.net), however, my VPS is not actually for video streaming, so PLEASE DO NOT test it for long, otherwise my VPS will be shutdown by my VPS provider, and I'll track you down.

Need your own Flash player?

Normally, I suggest you use 3rd-party free Flash player like JW Player, but if you really don't  like it, don't worry, I'm here offer you a sample Flash player source code in it with all Action Script required for playing RTMP streams.
Hit this url to start download: http://rg4.net/p/easyrtmp/client.rar

A simple guide to start to use EasyRTMP

Here is a simple guide to use EasyRTMP:

  1. Download EasyRTMP and nginx-win32, and extract them the a specified directory you want.
  2. Locate to the “start.bat” file in the nginx-win32 packet, and execute the start.bat.
  3. Locate the “EasyRTMP.exe” file in the EasyRTMP packet, and execute the file EasyRTMP.exe
  4. Click the “Start” button in the EasyRTMP, and check whether it is on running by checking the log output. Normally there should be a message like this: “RTMP initialized, rtmp://localhost:1935/live/0_320x240″, if you get this message, it means you can start view the video by browser or VLC Player.
    * You need to change the “Server IP” field from “live.rg4.net” to “localhost” or some other IP address whether you are running your streaming server(nginx, FMS, Red5, Wowza, etc) mannually if you are using your own streaming server.
  5. Open a browser, and navigate to the server URL, http://localhost(if you are using the your local nginx server) or http://live.rg4.net(if you are using my VPS as streaming server).
  6. Click "Play by RTMP" to start client video publish.
  7. Enjoy your own live streaming!

Some tips of using EasyRTMP

  • Error: Queue size exceeded 50(56), video frame will be dropped.

Like what I say in the log: this means you need to improve your bandwidth from this your PC (where you are running EasyRTMP, the publisher) to your server(the RTMP server, where the nginx server locates).
If you are using my VPS as your RTMP server, your are doomed, cause my VPS is sucked, you have no way to improve its experience, the right thing to do is setup your own RTMP server.

  • About the stream name.

In the default setting, the stream name is associated with the resolution of your captured video, if you choose the resolution "QVGA  - 320x240", the default stream name will be "0_320x240", that is to say you need to view the video by address: rtmp://YOUR-SERVER/live/0_320x240, and if you choose your video resolution "VGA   - 640x480", default url will be rtmp://YOUR-SERVER/live/0_640x480. But this is not limited, you can change the stream name as you wish.
* I planned to have the EasyRTMP with multiple WebCam supported, so I added a prefix of WebCam id to the default stream name. But the multiple WebCam function has not been tested. So, the planned naming rule is CAMERAID_WIDTHxHEIGHT.

  • How to setup my own RTMP server?

If you are a geek, and you have a lot of money, please buy a FMS for yourself, if not, here I suggest you a free way, that is nginx + nginx-rtmp-module, I've prepared a guide for you: hit this url in your screen to start: http://rg4.net/archives/1473.html

* Red5 could also be an option, but it's not so friendly as nginx, IMHO.

Still have some questions?

If you still don't know how to use it, leave a message to me here, I'll reply, soon. If you hate to wait, you can mail me: jacky{at}rg4.net, I'll check mail everyday, I promise, and I do check everyday when I'm free.

Some other tips: I was developing digital surveillance softwares for over ten years, and I was once proposed a IPC or NVR system base one RTMP, and made some research  on it, and succeeded in my test, but that proposal was turned down for some none-technical reason. The major solution was:

把大华的8路 H.264硬件压缩卡采集数据,用RTMP流发布,这样就可以让视频监控的客户端也无需安装任何插件,兼容所有Flash播放器平台。CentOS实现,在ATOM CPU + 1G内存上完全不卡, 整机功耗只有30W。