SlideShare une entreprise Scribd logo
1  sur  70
Moving Pictures Implementing Video on Flickr Cal Henderson
[object Object]
Flickr ,[object Object],[object Object],[object Object],[object Object]
Enter: Video ,[object Object],[object Object],[object Object],[object Object]
 
 
 
 
 
[object Object],[object Object]
12 4 Steps ,[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object]
Simple upload ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Issues ,[object Object],[object Object],[object Object],[object Object]
Sending from the client ,[object Object],[object Object],[object Object],[object Object]
Simple Forms ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Flash ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Desktop App ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Making Progress ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Making Progress Browser Web 1 Web 2 1. Browser starts upload 2. Web server broadcasts progress via UDP 3. Browser queries progress via AJX call Load balancer
Receiving on the server ,[object Object],[object Object],[object Object],[object Object],[object Object]
Receiving on the server ,[object Object],[object Object],[object Object],[object Object],Browser Buffer Server Slow Fast
But wait ,[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object]
Transcode? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
So many formats ,[object Object],[object Object],[object Object],[object Object],[object Object]
Video file basics ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Interleave ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Compress ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Compresssss ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The IPB ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
IPBIPBIPBIPB ,[object Object],[object Object],[object Object],[object Object],[object Object]
Bad terminology ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
I-Frames ,[object Object],[object Object],[object Object],[object Object]
Seekable
Seekable
Oh, and audio too ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Flash! Woah-oh! ,[object Object],[object Object]
Non-flash sites ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The Flash Player ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Second Generation ,[object Object],[object Object],[object Object],[object Object]
The hot shit ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
TrueMotion VP6 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
H.264 ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Software ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
More software ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Free H.264? ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Non-free tools ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Choices ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Doing it at scale ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object]
Easy! ,[object Object],[object Object],[object Object],[object Object]
But.. ,[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object]
The choice ,[object Object],[object Object],[object Object]
Streaming ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Progressive download ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Streaming tech ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
RTMP ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Open source ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Progressive ,[object Object],[object Object],[object Object]
Seeking ,[object Object],[object Object],[object Object],[object Object],[object Object]
[object Object],[object Object]
Review ,[object Object],[object Object],[object Object],[object Object]
 
Not enough? ,[object Object]
[object Object]
Summing up ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The end!
Awesome! ,[object Object],[object Object]

Contenu connexe

Tendances

SydPHP May 2012 - Deployment
SydPHP May 2012 - DeploymentSydPHP May 2012 - Deployment
SydPHP May 2012 - Deployment
Graham Weldon
 
Widening your JavaScript Application
Widening your JavaScript ApplicationWidening your JavaScript Application
Widening your JavaScript Application
Alex McPherson
 
Getting started with fiddler
Getting started with fiddlerGetting started with fiddler
Getting started with fiddler
Zhi Zhong
 

Tendances (20)

PHP 5.4 - Begin your love affair with traits
PHP 5.4 - Begin your love affair with traitsPHP 5.4 - Begin your love affair with traits
PHP 5.4 - Begin your love affair with traits
 
An introduction to Titanium
An introduction to TitaniumAn introduction to Titanium
An introduction to Titanium
 
Creating an Effective Mobile API
Creating an Effective Mobile API Creating an Effective Mobile API
Creating an Effective Mobile API
 
Ultra-modern Front-end Dev & Introducing Spar
Ultra-modern Front-end Dev & Introducing SparUltra-modern Front-end Dev & Introducing Spar
Ultra-modern Front-end Dev & Introducing Spar
 
SydPHP May 2012 - Deployment
SydPHP May 2012 - DeploymentSydPHP May 2012 - Deployment
SydPHP May 2012 - Deployment
 
JavaOne 2013 - Apache TomEE, Java EE Web Profile {and more} on Tomcat
JavaOne 2013 - Apache TomEE, Java EE Web Profile {and more} on TomcatJavaOne 2013 - Apache TomEE, Java EE Web Profile {and more} on Tomcat
JavaOne 2013 - Apache TomEE, Java EE Web Profile {and more} on Tomcat
 
Widening your JavaScript Application
Widening your JavaScript ApplicationWidening your JavaScript Application
Widening your JavaScript Application
 
Myphp-busters: symfony framework
Myphp-busters: symfony frameworkMyphp-busters: symfony framework
Myphp-busters: symfony framework
 
Myphp-busters: symfony framework (PHPCon.it)
Myphp-busters: symfony framework (PHPCon.it)Myphp-busters: symfony framework (PHPCon.it)
Myphp-busters: symfony framework (PHPCon.it)
 
Project 1
Project 1Project 1
Project 1
 
Getting started with WordPress development
Getting started with WordPress developmentGetting started with WordPress development
Getting started with WordPress development
 
Pycon2013
Pycon2013Pycon2013
Pycon2013
 
Frontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy PersonFrontend Performance: Beginner to Expert to Crazy Person
Frontend Performance: Beginner to Expert to Crazy Person
 
Blogpreneurship Video1
Blogpreneurship  Video1Blogpreneurship  Video1
Blogpreneurship Video1
 
Apache TomEE, Java EE 6 Web Profile {and more} on Tomcat
Apache TomEE, Java EE 6 Web Profile {and more} on TomcatApache TomEE, Java EE 6 Web Profile {and more} on Tomcat
Apache TomEE, Java EE 6 Web Profile {and more} on Tomcat
 
SPDY
SPDYSPDY
SPDY
 
Using composer with WordPress
Using composer with WordPressUsing composer with WordPress
Using composer with WordPress
 
Getting started with fiddler
Getting started with fiddlerGetting started with fiddler
Getting started with fiddler
 
2.6 summary day-2
2.6 summary day-22.6 summary day-2
2.6 summary day-2
 
Deployments... from dreaded to delightful.
Deployments... from dreaded to delightful.Deployments... from dreaded to delightful.
Deployments... from dreaded to delightful.
 

Similaire à Moving Pictures - Web 2.0 Expo NYC

Technical considerations 2c
Technical considerations 2cTechnical considerations 2c
Technical considerations 2c
Crashin
 
Beginning html5 media, 2nd edition
Beginning html5 media, 2nd editionBeginning html5 media, 2nd edition
Beginning html5 media, 2nd edition
ser
 
Windows7: Video Improvements
Windows7: Video ImprovementsWindows7: Video Improvements
Windows7: Video Improvements
wonderu
 

Similaire à Moving Pictures - Web 2.0 Expo NYC (20)

Audio and Video Streaming
Audio and Video StreamingAudio and Video Streaming
Audio and Video Streaming
 
Multi media tools
Multi media toolsMulti media tools
Multi media tools
 
Technical considerations 2c
Technical considerations 2cTechnical considerations 2c
Technical considerations 2c
 
Azure Media Services Step-by-Step Tutorial Docs Series - Part 4
Azure Media Services   Step-by-Step Tutorial Docs Series - Part 4Azure Media Services   Step-by-Step Tutorial Docs Series - Part 4
Azure Media Services Step-by-Step Tutorial Docs Series - Part 4
 
Lesson 6
Lesson 6Lesson 6
Lesson 6
 
Krakow video
Krakow videoKrakow video
Krakow video
 
video tools
video toolsvideo tools
video tools
 
Rija js video
Rija js videoRija js video
Rija js video
 
Video js zagreb
Video js zagrebVideo js zagreb
Video js zagreb
 
Beginning html5 media, 2nd edition
Beginning html5 media, 2nd editionBeginning html5 media, 2nd edition
Beginning html5 media, 2nd edition
 
Windows7: Video Improvements
Windows7: Video ImprovementsWindows7: Video Improvements
Windows7: Video Improvements
 
HTML5 Multimedia: where we are, where we're going
HTML5 Multimedia: where we are, where we're goingHTML5 Multimedia: where we are, where we're going
HTML5 Multimedia: where we are, where we're going
 
Corkgdg video
Corkgdg videoCorkgdg video
Corkgdg video
 
Portogdg video
Portogdg videoPortogdg video
Portogdg video
 
Design in Motion: Video Production Workflow
Design in Motion: Video Production WorkflowDesign in Motion: Video Production Workflow
Design in Motion: Video Production Workflow
 
Vilnius py video
Vilnius py videoVilnius py video
Vilnius py video
 
Video Production Using Open Source Tools
Video Production Using Open Source ToolsVideo Production Using Open Source Tools
Video Production Using Open Source Tools
 
Warsawclouddays video
Warsawclouddays videoWarsawclouddays video
Warsawclouddays video
 
Multimedia on the web - HTML5 video and audio
Multimedia on the web - HTML5 video and audioMultimedia on the web - HTML5 video and audio
Multimedia on the web - HTML5 video and audio
 
Gdg lublin video
Gdg lublin videoGdg lublin video
Gdg lublin video
 

Plus de Cal Henderson (7)

Web App Scaffolding - FOWA London 2010
Web App Scaffolding - FOWA London 2010Web App Scaffolding - FOWA London 2010
Web App Scaffolding - FOWA London 2010
 
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYCScalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
Scalable Web Architectures: Common Patterns and Approaches - Web 2.0 Expo NYC
 
Why I Hate Django - Part 2/2
Why I Hate Django - Part 2/2Why I Hate Django - Part 2/2
Why I Hate Django - Part 2/2
 
Why I Hate Django - Part 1/2
Why I Hate Django - Part 1/2Why I Hate Django - Part 1/2
Why I Hate Django - Part 1/2
 
I can has API? A Love Story
I can has API? A Love StoryI can has API? A Love Story
I can has API? A Love Story
 
Ten reasons to love Web 2.0
Ten reasons to love Web 2.0Ten reasons to love Web 2.0
Ten reasons to love Web 2.0
 
Web Services Mash-Up
Web Services Mash-UpWeb Services Mash-Up
Web Services Mash-Up
 

Dernier

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 

Dernier (20)

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 

Moving Pictures - Web 2.0 Expo NYC

  • 1. Moving Pictures Implementing Video on Flickr Cal Henderson
  • 2.
  • 3.
  • 4.
  • 5.  
  • 6.  
  • 7.  
  • 8.  
  • 9.  
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20. Making Progress Browser Web 1 Web 2 1. Browser starts upload 2. Web server broadcasts progress via UDP 3. Browser queries progress via AJX call Load balancer
  • 21.
  • 22.
  • 23.
  • 24.
  • 25.
  • 26.
  • 27.
  • 28.
  • 29.
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.
  • 37.
  • 38.
  • 39.
  • 40.
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
  • 46.
  • 47.
  • 48.
  • 49.
  • 50.
  • 51.
  • 52.
  • 53.
  • 54.
  • 55.
  • 56.
  • 57.
  • 58.
  • 59.
  • 60.
  • 61.
  • 62.
  • 63.
  • 64.
  • 65.  
  • 66.
  • 67.
  • 68.
  • 70.