Search code examples
amazon-web-servicesamazon-s3streamingamazon-cloudfront

RTSP streaming service using cloudfront and s3


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.


Solution

  • 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.

    https://developer.apple.com/streaming/