Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.
Intro To HLS
(http live streaming)
Rand Graham
rmcore.com
Why Should You Care About HLS?
Used to stream the 2014 World Cup
Advantages
◦ Uses Standard Web Server
◦ ABR (Adaptive Bit...
Overview
See: Draft of RFC
Pass a URL to a play list file
Transport stream .TS container
Preferred codecs: H.264 AAC
Block...
Sample Playlist File .m3u8
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:3
#EXT-X-MEDIA-SEQUENCE:0
#EXT-X-PLAYLIST-TYPE:...
Tools To Create Stream Files
ffmpeg
Apple Tools:
mediastreamsegmenter
mediafilesegmenter
mediastreamvalidator
Actual ffmpeg command
$ ffmpeg -re -i input.mkv -vcodec libx264 -preset 
veryfast -maxrate 3000k 
-bufsize 6000k -pix_fmt ...
Is it cross platform?
Built into iOS
JavaScript: videojs, clappr
Android: ExoPlayer
Desktop: VLC
Thanks!
ANY QUESTIONS?
Connect with me on twitter:
@rdg_rmcore
Read more at my website:
http://rmcore.com/
CREDITS
Special thanks to all the people who made and
released these awesome resources for free:
◦ Presentation template b...
Upcoming SlideShare
Loading in …5
×

An Introduction To HLS (HTTP live streaming)

2,232 views

Published on

A brief overview of HLS (http live streaming). These slides are from a lightning talk given at a local meetup.

Published in: Technology
  • Be the first to comment

An Introduction To HLS (HTTP live streaming)

  1. 1. Intro To HLS (http live streaming) Rand Graham rmcore.com
  2. 2. Why Should You Care About HLS? Used to stream the 2014 World Cup Advantages ◦ Uses Standard Web Server ◦ ABR (Adaptive Bit Rate) ◦ Built into iOS and OS X photo courtesy: warrenski
  3. 3. Overview See: Draft of RFC Pass a URL to a play list file Transport stream .TS container Preferred codecs: H.264 AAC Block Diagram from Apple
  4. 4. Sample Playlist File .m3u8 #EXTM3U #EXT-X-TARGETDURATION:10 #EXT-X-VERSION:3 #EXT-X-MEDIA-SEQUENCE:0 #EXT-X-PLAYLIST-TYPE:VOD #EXT-X-INDEPENDENT-SEGMENTS #EXTINF:8.40000, bb0.ts #EXTINF:7.68000, bb1.ts #EXTINF:9.68000, bb2.ts #EXT-X-ENDLIST
  5. 5. Tools To Create Stream Files ffmpeg Apple Tools: mediastreamsegmenter mediafilesegmenter mediastreamvalidator
  6. 6. Actual ffmpeg command $ ffmpeg -re -i input.mkv -vcodec libx264 -preset veryfast -maxrate 3000k -bufsize 6000k -pix_fmt yuv420p -g 50 -acodec libmp3lame -b:a 128k -ac 2 -ar 44100 -f flv rtmp://live.justin.tv/app/<stream key> -ZOMG! if you think this is complicated -have you tried reading the ffmpeg source code?
  7. 7. Is it cross platform? Built into iOS JavaScript: videojs, clappr Android: ExoPlayer Desktop: VLC
  8. 8. Thanks! ANY QUESTIONS?
  9. 9. Connect with me on twitter: @rdg_rmcore Read more at my website: http://rmcore.com/
  10. 10. CREDITS Special thanks to all the people who made and released these awesome resources for free: ◦ Presentation template by SlidesCarnival ◦ Photo Credits: ◦ World Cup photo by warrenski ◦ HLS block diagram by Apple ◦ Ultimate swiss army knife ◦ Will It Blend on Youtube

×