drupal netflix chill adaptive bitrate video streaming
play

Drupal, NetFlix, & Chill: Adaptive Bitrate Video Streaming - PowerPoint PPT Presentation

Drupal, NetFlix, & Chill: Adaptive Bitrate Video Streaming Stephen Barker, Digital Frontiers Media, Inc. Dave Kopecek, Aisle 8, Inc. 1 The Problem Existing Site 400 HD videos Slow video loading/buffering/playback latency (10-11 seconds


  1. Drupal, NetFlix, & Chill: Adaptive Bitrate Video Streaming Stephen Barker, Digital Frontiers Media, Inc. Dave Kopecek, Aisle 8, Inc. 1

  2. The Problem Existing Site 400 HD videos Slow video loading/buffering/playback latency (10-11 seconds average; sometimes up to 30 seconds!) Stuttering video playback Web server disk space being exhausted Budget Two-Pronged Issue of User Experience (stutter) v. Site Maintainability 2

  3. Does NetFlix hate you? Image: cnet.com 3

  4. Adaptive Bitrate Streaming Image: encoding.com 4

  5. HLS Video File Structure Image: apple.com 5

  6. Stutter Solution: Amazon Elastic Transcoder 6

  7. Transcoder Workflow 7

  8. AWS Elastic Transcoder HLS Presets 8

  9. Pipelines and Jobs 9

  10. AmazonS3 Events 10

  11. AWS Lambda 11

  12. Node.js Lambda Function 12

  13. Lambda Initiated HLS Files 13

  14. Standard Drupal File Handling 14

  15. AmazonS3 Module 15

  16. AmazonS3 CORS Upload Module 16

  17. Tying It All Together 17

  18. CloudFront CDN Setup in Minutes 18

  19. Two URL Issues 19

  20. hook_file_url_alter 20

  21. hook_file_url_alter (cont.) 21

  22. Finishing Touches Taking care of all existing files. • Bulk upload all files from Drupal files directory to S3 • UPDATE file_managed SET uri = REPLACE(uri, 'public', 's3') WHERE INSTR(filemime, 'video') > 0; Lambda cleanup functions. • If Elastic Transcoder is succesful, then move original mp4 to an Archive bucket. • If Elastic Transcoder fails send Amazon SNS push notification 22

  23. Results 23

  24. Results Both New and Existing Videos now served via fast Amazon CloudFront CDN! End User Experience - No stuttering video playback or video stoppage! Maintainer Experience - No change from standard Drupal node creation. Single video upload. ZERO web server disk space used and nearly infinite S3 expandability! Super cheap and easy to maintain! 24

  25. Stephen Barker Dave Kopecek stephen@digitalfrontiersmedia.com dave@aisle8.net https://twitter.com/DigitalFrontier https://twitter.com/davekopecek 25

Recommend


More recommend