I would like to create a distribution network for the mp3 files of my amazon S3 bucket. I managed to achieve it using aws Cloudfront using RTMP protocol. But as android has no native support for RTMP, i am exploring the idea of making it using RTSP protocol.Can some one help in figuring out how to achieve it.
RTSP
is stateful as it maintains a connection trough RTCP
, requires multiple ports and you will have issues with firewall traversal. Plus, if you want to take advantage of S3 you should use instead a HTTP
streaming protocol, unless you want to stream the mp3
files directly via progressive download.
The are two alternatives: HLS
and DASH
, with HLS
being the most used format at the moment.
Android 4.x+
has native support for HLS
, it works on iOS out of the box since it's made by Apple and on desktops it works natively on Safari 6+ and all other browsers with a Flash fallback. There are many web players available, the most noteworthy being JWPlayer (paid) or clappr (open-source).
The Amazon Elastic Transcoder supports HLS
transcoding and you can also use an open-source solution like ffmpeg
.