VOD Media Server for desktop and mobile - android

In my website there are flv videos playing with jwplayer. Now I have to port the site on mobile and iOS doesn't play flash video..
Main Features I have to follow:
Play on Desktop, Andorid and iOS.
Stream only parts of (big) videos.
Seek functionality.
Can not have 2 same video in different formats.
I'm thinking about Wowza Media Server. Has anyone tried that?
Other solutions may be red5 or Mistserver: Any Opinions and suggestions?
Thanks in advance!

Wowza is my favourite streaming server, however it does not support streaming FLV via HLS (best streaming protocol for iOS). So I guess you'll need some ffmpeg transcoding script setup to transcode all your flv files to mp4 files. Wowza will handle the rest of requested features like multi-protocol multi-device streaming, seeking, playing parts of video, and much more.

Related

Live Video Broadcasting in Android using Wowza Server

I have tried broadcasting videos in Android app through Wowza server and it works pretty well with this demo of javaCV.
But the only problem with this is that it uses flv file format to broadcast on Wowza server. It uses FFmpegFrameRecorder to broadcast live video to wowza server (not VOD). To set format of the video broadcasted at server, it uses following method:
recorder.setFormat("flv");
So the main problem with this method is that when I use other formats, it doesn't work. For E.g.:
recorder.setFormat("mpeg"); //or something like mov, etc
Please suggest a way to broadcast video from Android device to wowza server with any format other than flv. Please provide any links or tutorials with which I can start.
Thanks in advance.
Edit: I am able to play only audio while streaming vlc video format in Android and iOS devices.
Your issue is not container, but protocol. For live streaming, your best options are RTMP, RTP/RTSP. RTMP is essentially FLV with VCR style commands (play pause stop). There is no streaming protocol for MP4, except HTTP. and this would require you to produce a new mp4 ever few seconds and reassemble server side.
Im not sure you FLV/RTMP is off limits to you, because it probably is the best. But next I would suggest RTSP, and maybe WebRTC.

RTMP vs HLS vs HDS

I would like to stream a VOD/Live on following platforms using JW player but not sure which streaming is best suited for each platform
Desktop
iOS
Android
I understand RTMP will not play on mobile devices.
So do I need to go for RTMP for desktop and HLS for mobile or can I use only the HLS streaming for all the 3 platforms?
Or is there any other way to efficiently stream VODs/Live?
You could simply fall back to a vod MP4 file for Android. Here is a set up - http://www.longtailvideo.com/support/jw-player/29394/hls-with-mp4-fallback
For live on iOS. HLS is your only option. Because of this I usually like to use HLS everywhere. For Desktop something like JWPlayer premium can play HLS in flash.

How to play Red5 streaming at all smart devices?

I have installed red5 server on ubuntu 12.04 lts at AWS instance. I have successfully streamed my live stream using with Adope live encoder and play it with jwplayer on websites. Now I need to play my live stream on all smart devices. I have referred so many forums but I did not get the good solution for this. I have some restriction to play on mobile.
do not play with Flash browser at all smart-device. need to play it's own player when they connected to my website.
Is there any possible to play my live streaming with html5 video Tag
How can I achieve this setup? I know the red5 server only stream RTMP protocol. I want to re-stream to android, iphone, blackberry, Nokia, and also all smart devices and tab.
In practice you need to send the screams in three types:
HLS for IOS/Windows/BB devices
RTMP/RTMPT/RTMPS for browser based Flash clients (or AIR based native apps)
RTSP for Android/BB devices (as HLS should but rarely does work on Android devices)
Additionally there are some vendor specific technologies like Microsoft Smooth Streaming or webM by Google
You can use a streaming CDN like ScaleEngine.com to transcode and supply the necessary bandwidth to have streaming for all devices (RTMP for browsers, HLS for iOS devices and RTSP for Android). If you are inexperienced and you won't have terabytes of traffic, this might fit the bill.
If you are interested in a self hosted solution, a combination of:
Red5/Wowza/nginx-rtmp for recording management
FFmpeg for transcoding
nginx-rtmp for HLS
crtmp-server for RTPS
might do the trick.
There is no all in one solution. The ONLY way to stream live video in iOS is HLS. Some versions of Android may support HLS. I have not idea what formats blackberry and Nokia support. You will need to research this.
If you create your mobile app with Adobe AIR (with either Adobe Flash or Apache Flex), then your mobile app will support live audio/video streaming - on iOS, Android and BlackBerry 10 platforms.
Distribution to mobiles can be done with Wowza rtmp server packetisers for iOS HLS and RTP playback.
But you need to stream in supported formats/codecs.
If you stream with a web based flash broadcasting tool, stream will not be compatible with iOS because Flash does not encode AAC, so you need to transcode it.
Transcoding can be done with Wowza Transcoder addon or ffmpeg as available with VideoWhisper Live Streaming that can produce a HTML5 video for Safari playback (on iOS / desktop).

How to make flash content to work on mobile devices?

I've seen that some websites that offer video playing services have made their videos work on Android phones, while others dont. Those that work are being opened using the phone's Video Player or other apps such as MX Player.
How can I do this on my website? I know that there is the HTML5 alternative but for some reason I can't implement that.
Thanks!
There are a few options to stream videos to mobile browsers:
HLS (HTTP Live Streaming) for Apple devices
H.264 encoding
Streaming server e.g. Wowza
WebM streaming to Androids and other devices
Browser support in Chrome, Firefox, Opera, Android browser
VP8 encoding
Streaming server e.g. stream-m
MotionJPEG
Works for non-audio videos
Works on almost all devices
Choppy playback, as there is no inter-frame compression
Flash Player
Only few mobile devices, market share steadily vanishes
Supports streaming or progressive download
Streaming server e.g. Wowza or Red5
If your video must not necessarily play back in the browser, you can also just provide a download link to your video. Please note that you won't profit from streaming features like seeking and saving bandwidth for unplayed parts of the video then. In any case, you need to encode your video in different bitrates/codecs to be able to target all devices.

Can flowplayer handle rtsp stream?

Flowplayer can play rtmp and http live stream but can i use the same player to play rtsp stream. I have rtsp stream for android which can be played using external player but it opens in fullscreen mode. I thought of putting it inside a frame but the external player opens outside of the frame in android device. So i want to use flowplayer to play rtsp stream in android. Is it possible and if not what to use.
I am fairly certain that Flowplayer, while a great solution for many things, cannot be extended to accept a straight RTSP stream. In any case, I don't believe there is a supported mobile version or plugin of Flowplayer for Android at this point. I have even seen reports that embedded flowplayers being viewed on Android have been sketchy at best.
I have, however, used ffserver and ffmpeg (http://ffmpeg.org/) to transcode the RTSP stream into .flv to be played with Flowplayer, but if a transcoded stream could be broadcast on your system, you'd be well on your way!
Mason

Categories

Resources