SlideShare a Scribd company logo
HTML5
Multimedia
Streaming
Niall Munro
EDINA
niall.munro@ed.ac.uk
@DevNiall
jiscmediahub.ac.uk
HTML5 VIDEO BROWSER SUPPORT
H.264 9+ - 3.0+ 2 3.1+ -
Theora - 3.5+ 3.0+ - 10.5+
WebM 9+ 1 4.0+ 6.0+
3
10.6+
1. WebM support via video element if codec is installed on the
system
2. H.264 to be dropped in order to further open standards
3. WebM QuickTime plugin available
HTML5 MEDIA FORMATS
File Format Video Codec Audio Codec
H.264 AAC
Theora Vorbis
VP8 Vorbis
VIDEO COMPRESSION FORMATS
● H.264 – Industry standard for video
compression, most widely supported codec of
the lot. Commercial users are required to pay
royalties
● Theora – originally put forward as the default
video technology for HTML5 video,
predecessor to WebM
● WebM/VP8 – open sourced by Google after
their acquisition of On2 Technologies
AUDIO COMPRESSION FORMATS
● Advanced Audio Coding (AAC) – industry
standard for audio compression,
successor to MP3? Royalty free for
distributors
● Ogg Vorbis – open source audio codec
developed by Xiph.org Foundation
ENCODING YOUR MEDIA
● FFmpeg – cross-platform multimedia
framework, supports many codecs
● ffmpeg2theora – tweaked fork of FFmpeg
● qt-faststart – Tool for optimising MP4 files for
streaming
● flvtool2 – Tool for optimising FLV files for
streaming
ENCODING YOUR MEDIA (CONT.)
Output 640x360 video at ~1024k:
MP4:
ffmpeg –i INPUT.avi –vpre libx264-baseline –s 640x360 –ac 128k –vb 896k TMP.mp4
qt-faststart TMP.mp4 OUTPUT.mp4
WebM:
ffmpeg –i INPUT.avi -vpre libvpx-360p –s 640x360 OUTPUT.webm
Theora:
ffmpeg2theora INPUT.avi –o OUTPUT.ogv –v 9
FLV:
ffmpeg -i INPUT.avi -s 640x360 -vb 896k -acodec libfaac –ab 128k –vb 896k OUTPUT.flv
flvtool2 –U OUTPUT.flv
HTML NATIVE VIDEO EXAMPLE
<video poster=“poster.png“ tabindex="0“ controls=“controls” preload="none">
<source src=“video.mp4“ type='video/mp4; codecs="avc1.4D401E, mp4a.40.2"' />
<source src=“video.webm“ type='video/webm; codecs="vp8.0, vorbis"' />
<source src=“video.ogv“ type='video/ogg; codecs="theora, vorbis"' />
</video>
HTML FLASH VIDEO EXAMPLE
<video id=“videoplayer” poster=“poster.png“ tabindex="0“ controls=“controls” preload="none">
<!-- INCLUDE SOURCES FROM PREVIOUS SLIDE -->
<object width="640" height=“360" type="application/x-shockwave-flash” data=“flowplayer-3.2.7.swf">
<param name="movie" value="flowplayer-3.2.7.swf" />
<param name="allowfullscreen" value="true" />
<param name="flashvars" value='config={"playlist":[“poster.png",
{"url": “video.mp4","autoPlay":false,"autoBuffering":true}]}' />
</object>
</video>
HTML AUDIO EXAMPLE
<audio id="audioplayer" tabindex="0" controls="controls" preload="none">
<source src="audio.m4a" type="audio/mp4" />
<source src="autiod.oga" type="audio/ogg" />
<object width=“30" height=“360" type="application/x-shockwave-flash” data=“flowplayer-3.2.7.swf">
<param name="movie" value="flowplayer-3.2.7.swf" />
<param name="allowfullscreen" value="true" />
<param name="flashvars" value='config={"playlist":[“poster.png",
{"url": “audio.m4a","autoPlay":false,"autoBuffering":true}]}' />
</object>
</audio>
HTML5 (PSEUDO-)STREAMING
● HTTP based delivery solution, no special
control protocol required e.g. RTSP
● Byte-range requests work out of the box on
most web servers, same functionality is used
to resume downloads
● Seek points are calculated from the file
header metadata where keyframes are
mapped to byte offsets rather than time based
FLASH (PSEUDO)-STREAMING
● Flash pseudo-streaming enabled via
server modules, YouTube uses this
method to deliver their videos
● Supporting clients requests playback
offset via a URL parameter
e.g. http://example.com/media/video.mp4?start=120
FLASH (PSEUDO)-STREAMING (CONT.)
● Server reads keyframe metadata information from
resource file header to determine the byte-range
request
● Server modules available for Apache HTTP,
Lighthttpd & Nginx, IIS solutions available too
● PHP script implementations are also available,
resource heavy!
● Supporting Flash players include Flowplayer & JW
Player
FLASH (PSEUDO)-STREAMING (CONT.)
● H264 Streaming Module – includes
support for virtual video clips & adaptive
streaming
http://h264.code-shop.com/trac
● mod_flvx
http://journal.paul.querna.org/articles/2006/07/11/mod_flvx/
APACHE SERVER CONFIGURATION
LoadModule h264_streaming_module modules/mod_h264_streaming.so
AddHandler h264-streaming.extensions .mp4 .m4a
LoadModule flvx_module modules/mod_flvx.so
AddHandler flv-stream .flv
<!-- VIDEO MIMETYPES -->
AddType video/mp4 .mp4
AddType video/ogg .ogv
AddType video/webm .webm
<!-- AUDIO MIMETYPES -->
AddType audio/mp4 .m4a
AddType audio/ogg .oga
● Nginx – high performance HTTP server
developed by Igor Sysoev
● Publicly available since 2004
● Event based architecture rather than
traditional thread based architecture
● Solves C10K problem
● Supports MP4 (module) & FLV (native)
pseudo-streaming
Example configuration file:
location /demo {
limit_rate 1500k;
limit_rate_after 500k;
alias /path/to/media;
location ~ .flv$ {
flv;
}
location ~ .mp4$ {
mp4;
}
location ~ .m4a$ {
mp4;
}
}
Securing Media with X-Accel-Redirect:
location /protected/ { # /protected, only available to internal redirects
internal;
root /hidden/path/to/media/;
}
PHP example:
$file = $_GET['file'];
if( authenticated )
header('X-Accel-Redirect: /protected/' . $file); // serves /hidden/path/to/media/$file
else
print '<p>Cheeky unauthenticated fool!</p>';
HTML5 MEDIA JAVASCRIPT API
var v = document.getElementsByTagName("video")[0];
v.play();
v.pause();
v.currentTime = 120; //seek to 120 seconds
//Seek attempt before media initialisation
if( v.readyState > = v.HAVE_FUTURE_DATA ) {
v.currentTime = 120;
} else {
v.play();
v.onloadedmetadata = function() { //event
v.currentTime = 120;
}
}
HTML5
Multimedia
Streaming
Niall Munro
EDINA
niall.munro@ed.ac.uk
@DevNiall

More Related Content

What's hot

Managing Installations and Provisioning of OSGi Applications - Carsten Ziegeler
Managing Installations and Provisioning of OSGi Applications - Carsten ZiegelerManaging Installations and Provisioning of OSGi Applications - Carsten Ziegeler
Managing Installations and Provisioning of OSGi Applications - Carsten Ziegeler
mfrancis
 
Running PHP on Windows Technical Overview
Running PHP on Windows Technical OverviewRunning PHP on Windows Technical Overview
Running PHP on Windows Technical Overview
Wes Yanaga
 
voip2day 2016: mediasoup, powerful WebRTC SFU for Node.js
voip2day 2016: mediasoup, powerful WebRTC SFU for Node.jsvoip2day 2016: mediasoup, powerful WebRTC SFU for Node.js
voip2day 2016: mediasoup, powerful WebRTC SFU for Node.js
Iñaki Baz Castillo
 
Nginx 0.8.x + php 5.2.13 (fast cgi) setup web server
Nginx 0.8.x + php 5.2.13 (fast cgi) setup web serverNginx 0.8.x + php 5.2.13 (fast cgi) setup web server
Nginx 0.8.x + php 5.2.13 (fast cgi) setup web server
wruben
 
Apache Street Smarts Presentation (SANS 99)
Apache Street Smarts Presentation (SANS 99)Apache Street Smarts Presentation (SANS 99)
Apache Street Smarts Presentation (SANS 99)Michael Dobe, Ph.D.
 
Advanced Kurento Real Time Media Stream Processing
Advanced Kurento Real Time Media Stream ProcessingAdvanced Kurento Real Time Media Stream Processing
Advanced Kurento Real Time Media Stream Processing
FIWARE
 
HKG18-203 - Overview of Linaro DRM
HKG18-203 - Overview of Linaro DRMHKG18-203 - Overview of Linaro DRM
HKG18-203 - Overview of Linaro DRM
Linaro
 
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
Linaro
 
WebRTC & Asterisk 11
WebRTC & Asterisk 11WebRTC & Asterisk 11
WebRTC & Asterisk 11
Sanjay Willie
 
HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & Chromium
HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & ChromiumHKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & Chromium
HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & Chromium
Linaro
 
4. open mano set up and usage
4. open mano set up and usage4. open mano set up and usage
4. open mano set up and usage
videos
 
[ElastixWorld 2016] mediasoup: Powerful WebRTC SFU for Node.js
[ElastixWorld 2016] mediasoup: Powerful WebRTC SFU for Node.js[ElastixWorld 2016] mediasoup: Powerful WebRTC SFU for Node.js
[ElastixWorld 2016] mediasoup: Powerful WebRTC SFU for Node.js
Iñaki Baz Castillo
 
Jonathan Corbet - Keynote: The Kernel Report
Jonathan Corbet - Keynote: The Kernel ReportJonathan Corbet - Keynote: The Kernel Report
Jonathan Corbet - Keynote: The Kernel Report
linuxlab_conf
 
Prizm Installation Guide
Prizm Installation GuidePrizm Installation Guide
Prizm Installation Guide
vjvarenya
 
Running open source PHP applications on you IBM i
Running open source PHP applications on you IBM iRunning open source PHP applications on you IBM i
Running open source PHP applications on you IBM i
Proximity Group
 
Install dev stack
Install dev stackInstall dev stack
OpenWRT manual
OpenWRT manualOpenWRT manual
OpenWRT manualfosk
 
TYPO3 Neos - the compendium (version 1.0.2)
TYPO3 Neos - the compendium (version 1.0.2)TYPO3 Neos - the compendium (version 1.0.2)
TYPO3 Neos - the compendium (version 1.0.2)
die.agilen GmbH
 
5. hands on - building local development environment with Open Mano
5. hands on - building local development environment with Open Mano5. hands on - building local development environment with Open Mano
5. hands on - building local development environment with Open Mano
videos
 
BKK16-212: What's broken on ARM64?
BKK16-212: What's broken on ARM64?BKK16-212: What's broken on ARM64?
BKK16-212: What's broken on ARM64?
Linaro
 

What's hot (20)

Managing Installations and Provisioning of OSGi Applications - Carsten Ziegeler
Managing Installations and Provisioning of OSGi Applications - Carsten ZiegelerManaging Installations and Provisioning of OSGi Applications - Carsten Ziegeler
Managing Installations and Provisioning of OSGi Applications - Carsten Ziegeler
 
Running PHP on Windows Technical Overview
Running PHP on Windows Technical OverviewRunning PHP on Windows Technical Overview
Running PHP on Windows Technical Overview
 
voip2day 2016: mediasoup, powerful WebRTC SFU for Node.js
voip2day 2016: mediasoup, powerful WebRTC SFU for Node.jsvoip2day 2016: mediasoup, powerful WebRTC SFU for Node.js
voip2day 2016: mediasoup, powerful WebRTC SFU for Node.js
 
Nginx 0.8.x + php 5.2.13 (fast cgi) setup web server
Nginx 0.8.x + php 5.2.13 (fast cgi) setup web serverNginx 0.8.x + php 5.2.13 (fast cgi) setup web server
Nginx 0.8.x + php 5.2.13 (fast cgi) setup web server
 
Apache Street Smarts Presentation (SANS 99)
Apache Street Smarts Presentation (SANS 99)Apache Street Smarts Presentation (SANS 99)
Apache Street Smarts Presentation (SANS 99)
 
Advanced Kurento Real Time Media Stream Processing
Advanced Kurento Real Time Media Stream ProcessingAdvanced Kurento Real Time Media Stream Processing
Advanced Kurento Real Time Media Stream Processing
 
HKG18-203 - Overview of Linaro DRM
HKG18-203 - Overview of Linaro DRMHKG18-203 - Overview of Linaro DRM
HKG18-203 - Overview of Linaro DRM
 
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
BKK16-201 Play Ready OPTEE Integration with Secure Video Path lhg-1
 
WebRTC & Asterisk 11
WebRTC & Asterisk 11WebRTC & Asterisk 11
WebRTC & Asterisk 11
 
HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & Chromium
HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & ChromiumHKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & Chromium
HKG18-217 - OpenCDM/CDMi (Multi DRM) work with WPE & Chromium
 
4. open mano set up and usage
4. open mano set up and usage4. open mano set up and usage
4. open mano set up and usage
 
[ElastixWorld 2016] mediasoup: Powerful WebRTC SFU for Node.js
[ElastixWorld 2016] mediasoup: Powerful WebRTC SFU for Node.js[ElastixWorld 2016] mediasoup: Powerful WebRTC SFU for Node.js
[ElastixWorld 2016] mediasoup: Powerful WebRTC SFU for Node.js
 
Jonathan Corbet - Keynote: The Kernel Report
Jonathan Corbet - Keynote: The Kernel ReportJonathan Corbet - Keynote: The Kernel Report
Jonathan Corbet - Keynote: The Kernel Report
 
Prizm Installation Guide
Prizm Installation GuidePrizm Installation Guide
Prizm Installation Guide
 
Running open source PHP applications on you IBM i
Running open source PHP applications on you IBM iRunning open source PHP applications on you IBM i
Running open source PHP applications on you IBM i
 
Install dev stack
Install dev stackInstall dev stack
Install dev stack
 
OpenWRT manual
OpenWRT manualOpenWRT manual
OpenWRT manual
 
TYPO3 Neos - the compendium (version 1.0.2)
TYPO3 Neos - the compendium (version 1.0.2)TYPO3 Neos - the compendium (version 1.0.2)
TYPO3 Neos - the compendium (version 1.0.2)
 
5. hands on - building local development environment with Open Mano
5. hands on - building local development environment with Open Mano5. hands on - building local development environment with Open Mano
5. hands on - building local development environment with Open Mano
 
BKK16-212: What's broken on ARM64?
BKK16-212: What's broken on ARM64?BKK16-212: What's broken on ARM64?
BKK16-212: What's broken on ARM64?
 

Viewers also liked

Location Based Services Without the Cocoa
Location Based Services Without the CocoaLocation Based Services Without the Cocoa
Location Based Services Without the Cocoa
EDINA, University of Edinburgh
 
Using data from Digimap in ArcGIS
Using data from Digimap in ArcGISUsing data from Digimap in ArcGIS
Using data from Digimap in ArcGIS
EDINA, University of Edinburgh
 
Digital maps: past, present; on your desktop and in the palm of your hand
Digital maps: past, present; on your desktop and in the palm of your handDigital maps: past, present; on your desktop and in the palm of your hand
Digital maps: past, present; on your desktop and in the palm of your hand
EDINA, University of Edinburgh
 
RDM Programme @ Edinburgh: Data Librarian Experience
RDM Programme @ Edinburgh: Data Librarian ExperienceRDM Programme @ Edinburgh: Data Librarian Experience
RDM Programme @ Edinburgh: Data Librarian Experience
EDINA, University of Edinburgh
 
EPSRC research data expectations and PURE for datasets
EPSRC research data expectations and PURE for datasetsEPSRC research data expectations and PURE for datasets
EPSRC research data expectations and PURE for datasets
EDINA, University of Edinburgh
 
Research Data Services @ Edinburgh: MANTRA & Edinburgh DataShare
Research Data Services @ Edinburgh: MANTRA & Edinburgh DataShareResearch Data Services @ Edinburgh: MANTRA & Edinburgh DataShare
Research Data Services @ Edinburgh: MANTRA & Edinburgh DataShare
Historic Environment Scotland
 
Attention Citizens! Presentation as part of the Citizen Science Workshop - Ni...
Attention Citizens! Presentation as part of the Citizen Science Workshop - Ni...Attention Citizens! Presentation as part of the Citizen Science Workshop - Ni...
Attention Citizens! Presentation as part of the Citizen Science Workshop - Ni...
COBWEB Project
 
Digimap Essentials
Digimap EssentialsDigimap Essentials
Digimap Essentials
EDINA, University of Edinburgh
 
Preserving the Integrity of the Scholarly Record
Preserving the Integrity of the Scholarly RecordPreserving the Integrity of the Scholarly Record
Preserving the Integrity of the Scholarly Record
EDINA, University of Edinburgh
 
RJ Broker: Automating Delivery of Research Output to Repositories
RJ Broker: Automating Delivery of Research Output to RepositoriesRJ Broker: Automating Delivery of Research Output to Repositories
RJ Broker: Automating Delivery of Research Output to Repositories
EDINA, University of Edinburgh
 
What’s Different about the Digital: Community Action via UK LOCKSS Alliance
What’s Different about the Digital: Community Action via UK LOCKSS AllianceWhat’s Different about the Digital: Community Action via UK LOCKSS Alliance
What’s Different about the Digital: Community Action via UK LOCKSS Alliance
EDINA, University of Edinburgh
 
Licence to Share: Research and Collaboration through Go-Geo! and ShareGeo
Licence to Share: Research and Collaboration through Go-Geo! and ShareGeoLicence to Share: Research and Collaboration through Go-Geo! and ShareGeo
Licence to Share: Research and Collaboration through Go-Geo! and ShareGeo
EDINA, University of Edinburgh
 
IGIBS - BDB Research Forum, May 2011
IGIBS - BDB Research Forum, May 2011IGIBS - BDB Research Forum, May 2011
IGIBS - BDB Research Forum, May 2011
EDINA, University of Edinburgh
 
AddressingHistory: crowdsourcing the past
AddressingHistory: crowdsourcing the pastAddressingHistory: crowdsourcing the past
AddressingHistory: crowdsourcing the past
Historic Environment Scotland
 
Insight into using digital media - Jisc MediaHub
Insight into using digital media - Jisc MediaHubInsight into using digital media - Jisc MediaHub
Insight into using digital media - Jisc MediaHub
Jisc RSC East Midlands
 
Creating a Data Management Plan for your Grant Application
Creating a Data Management Plan for your Grant ApplicationCreating a Data Management Plan for your Grant Application
Creating a Data Management Plan for your Grant Application
EDINA, University of Edinburgh
 
A Importância da IDE-a no Reino-Unido
A Importância da IDE-a no Reino-UnidoA Importância da IDE-a no Reino-Unido
A Importância da IDE-a no Reino-Unido
EDINA, University of Edinburgh
 

Viewers also liked (20)

Location Based Services Without the Cocoa
Location Based Services Without the CocoaLocation Based Services Without the Cocoa
Location Based Services Without the Cocoa
 
Using data from Digimap in ArcGIS
Using data from Digimap in ArcGISUsing data from Digimap in ArcGIS
Using data from Digimap in ArcGIS
 
Digital maps: past, present; on your desktop and in the palm of your hand
Digital maps: past, present; on your desktop and in the palm of your handDigital maps: past, present; on your desktop and in the palm of your hand
Digital maps: past, present; on your desktop and in the palm of your hand
 
RDM Programme @ Edinburgh: Data Librarian Experience
RDM Programme @ Edinburgh: Data Librarian ExperienceRDM Programme @ Edinburgh: Data Librarian Experience
RDM Programme @ Edinburgh: Data Librarian Experience
 
EPSRC research data expectations and PURE for datasets
EPSRC research data expectations and PURE for datasetsEPSRC research data expectations and PURE for datasets
EPSRC research data expectations and PURE for datasets
 
An Introduction to 2011 Census Geography
An Introduction to 2011 Census GeographyAn Introduction to 2011 Census Geography
An Introduction to 2011 Census Geography
 
Research Data Services @ Edinburgh: MANTRA & Edinburgh DataShare
Research Data Services @ Edinburgh: MANTRA & Edinburgh DataShareResearch Data Services @ Edinburgh: MANTRA & Edinburgh DataShare
Research Data Services @ Edinburgh: MANTRA & Edinburgh DataShare
 
Attention Citizens! Presentation as part of the Citizen Science Workshop - Ni...
Attention Citizens! Presentation as part of the Citizen Science Workshop - Ni...Attention Citizens! Presentation as part of the Citizen Science Workshop - Ni...
Attention Citizens! Presentation as part of the Citizen Science Workshop - Ni...
 
EDINA / Data Library Overview
EDINA / Data Library OverviewEDINA / Data Library Overview
EDINA / Data Library Overview
 
Digimap Essentials
Digimap EssentialsDigimap Essentials
Digimap Essentials
 
Preserving the Integrity of the Scholarly Record
Preserving the Integrity of the Scholarly RecordPreserving the Integrity of the Scholarly Record
Preserving the Integrity of the Scholarly Record
 
Discover edina programmefinalmeeting-28-sep-2012
Discover edina programmefinalmeeting-28-sep-2012Discover edina programmefinalmeeting-28-sep-2012
Discover edina programmefinalmeeting-28-sep-2012
 
RJ Broker: Automating Delivery of Research Output to Repositories
RJ Broker: Automating Delivery of Research Output to RepositoriesRJ Broker: Automating Delivery of Research Output to Repositories
RJ Broker: Automating Delivery of Research Output to Repositories
 
What’s Different about the Digital: Community Action via UK LOCKSS Alliance
What’s Different about the Digital: Community Action via UK LOCKSS AllianceWhat’s Different about the Digital: Community Action via UK LOCKSS Alliance
What’s Different about the Digital: Community Action via UK LOCKSS Alliance
 
Licence to Share: Research and Collaboration through Go-Geo! and ShareGeo
Licence to Share: Research and Collaboration through Go-Geo! and ShareGeoLicence to Share: Research and Collaboration through Go-Geo! and ShareGeo
Licence to Share: Research and Collaboration through Go-Geo! and ShareGeo
 
IGIBS - BDB Research Forum, May 2011
IGIBS - BDB Research Forum, May 2011IGIBS - BDB Research Forum, May 2011
IGIBS - BDB Research Forum, May 2011
 
AddressingHistory: crowdsourcing the past
AddressingHistory: crowdsourcing the pastAddressingHistory: crowdsourcing the past
AddressingHistory: crowdsourcing the past
 
Insight into using digital media - Jisc MediaHub
Insight into using digital media - Jisc MediaHubInsight into using digital media - Jisc MediaHub
Insight into using digital media - Jisc MediaHub
 
Creating a Data Management Plan for your Grant Application
Creating a Data Management Plan for your Grant ApplicationCreating a Data Management Plan for your Grant Application
Creating a Data Management Plan for your Grant Application
 
A Importância da IDE-a no Reino-Unido
A Importância da IDE-a no Reino-UnidoA Importância da IDE-a no Reino-Unido
A Importância da IDE-a no Reino-Unido
 

Similar to HTML5 Multimedia Streaming

Webvideo, FFmpeg und Drupal
Webvideo, FFmpeg und DrupalWebvideo, FFmpeg und Drupal
Webvideo, FFmpeg und Drupal
Walter Ebert
 
HTML5 Multimedia Streaming
HTML5 Multimedia StreamingHTML5 Multimedia Streaming
HTML5 Multimedia Streaming
Niall Munro
 
Flash and HTML5 Video
Flash and HTML5 VideoFlash and HTML5 Video
Flash and HTML5 Video
Yoss Cohen
 
HTML5 video & Amazon elastic transcoder - FCIP August 2014
HTML5 video & Amazon elastic transcoder - FCIP August 2014HTML5 video & Amazon elastic transcoder - FCIP August 2014
HTML5 video & Amazon elastic transcoder - FCIP August 2014
RZasadzinski
 
HTML5 Multimedia Support
HTML5 Multimedia SupportHTML5 Multimedia Support
HTML5 Multimedia Support
Henry Osborne
 
Html5 Open Video Tutorial
Html5 Open Video TutorialHtml5 Open Video Tutorial
Html5 Open Video Tutorial
Silvia Pfeiffer
 
Nuxeo - Digital Asset Management
Nuxeo - Digital Asset ManagementNuxeo - Digital Asset Management
Nuxeo - Digital Asset ManagementThomas Roger
 
Looking into HTML5 + CSS3
Looking into HTML5 + CSS3Looking into HTML5 + CSS3
Looking into HTML5 + CSS3
Christopher Schmitt
 
Internet Archive Video Presentation
Internet Archive Video Presentation Internet Archive Video Presentation
Internet Archive Video Presentation
tracey jaquith
 
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
brucelawson
 
Mm sys 2013-demo
Mm sys 2013-demoMm sys 2013-demo
Mm sys 2013-demo
Cyril Concolato
 
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
brucelawson
 
Vietnam Mobile Day 2013: How to build video streaming server in 15 mins
Vietnam Mobile Day 2013: How to build video streaming server in 15 minsVietnam Mobile Day 2013: How to build video streaming server in 15 mins
Vietnam Mobile Day 2013: How to build video streaming server in 15 mins
GameLandVN
 
[Vietnam Mobile Day 2013] - How to build video streaming server in 15 minutes
[Vietnam Mobile Day 2013] - How to build video streaming server in 15 minutes[Vietnam Mobile Day 2013] - How to build video streaming server in 15 minutes
[Vietnam Mobile Day 2013] - How to build video streaming server in 15 minutes
AiTi Education
 
HTML5 Multimedia Accessibility
HTML5 Multimedia AccessibilityHTML5 Multimedia Accessibility
HTML5 Multimedia Accessibility
brucelawson
 
WebRTC and the Codec War
WebRTC and the Codec WarWebRTC and the Codec War
WebRTC and the Codec War
Weemo, Inc.
 
Upgrade to HTML5 Video
Upgrade to HTML5 VideoUpgrade to HTML5 Video
Upgrade to HTML5 Videosteveheffernan
 
HTML5 Video Presentation
HTML5 Video PresentationHTML5 Video Presentation
HTML5 Video Presentationsith33
 
Html5 Theora
Html5 TheoraHtml5 Theora

Similar to HTML5 Multimedia Streaming (20)

Webvideo, FFmpeg und Drupal
Webvideo, FFmpeg und DrupalWebvideo, FFmpeg und Drupal
Webvideo, FFmpeg und Drupal
 
HTML5 Multimedia Streaming
HTML5 Multimedia StreamingHTML5 Multimedia Streaming
HTML5 Multimedia Streaming
 
Html5video
Html5videoHtml5video
Html5video
 
Flash and HTML5 Video
Flash and HTML5 VideoFlash and HTML5 Video
Flash and HTML5 Video
 
HTML5 video & Amazon elastic transcoder - FCIP August 2014
HTML5 video & Amazon elastic transcoder - FCIP August 2014HTML5 video & Amazon elastic transcoder - FCIP August 2014
HTML5 video & Amazon elastic transcoder - FCIP August 2014
 
HTML5 Multimedia Support
HTML5 Multimedia SupportHTML5 Multimedia Support
HTML5 Multimedia Support
 
Html5 Open Video Tutorial
Html5 Open Video TutorialHtml5 Open Video Tutorial
Html5 Open Video Tutorial
 
Nuxeo - Digital Asset Management
Nuxeo - Digital Asset ManagementNuxeo - Digital Asset Management
Nuxeo - Digital Asset Management
 
Looking into HTML5 + CSS3
Looking into HTML5 + CSS3Looking into HTML5 + CSS3
Looking into HTML5 + CSS3
 
Internet Archive Video Presentation
Internet Archive Video Presentation Internet Archive Video Presentation
Internet Archive Video Presentation
 
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
 
Mm sys 2013-demo
Mm sys 2013-demoMm sys 2013-demo
Mm sys 2013-demo
 
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
 
Vietnam Mobile Day 2013: How to build video streaming server in 15 mins
Vietnam Mobile Day 2013: How to build video streaming server in 15 minsVietnam Mobile Day 2013: How to build video streaming server in 15 mins
Vietnam Mobile Day 2013: How to build video streaming server in 15 mins
 
[Vietnam Mobile Day 2013] - How to build video streaming server in 15 minutes
[Vietnam Mobile Day 2013] - How to build video streaming server in 15 minutes[Vietnam Mobile Day 2013] - How to build video streaming server in 15 minutes
[Vietnam Mobile Day 2013] - How to build video streaming server in 15 minutes
 
HTML5 Multimedia Accessibility
HTML5 Multimedia AccessibilityHTML5 Multimedia Accessibility
HTML5 Multimedia Accessibility
 
WebRTC and the Codec War
WebRTC and the Codec WarWebRTC and the Codec War
WebRTC and the Codec War
 
Upgrade to HTML5 Video
Upgrade to HTML5 VideoUpgrade to HTML5 Video
Upgrade to HTML5 Video
 
HTML5 Video Presentation
HTML5 Video PresentationHTML5 Video Presentation
HTML5 Video Presentation
 
Html5 Theora
Html5 TheoraHtml5 Theora
Html5 Theora
 

More from EDINA, University of Edinburgh

The Making of the English Landscape:
The Making of the English Landscape: The Making of the English Landscape:
The Making of the English Landscape:
EDINA, University of Edinburgh
 
Spatial Data, Spatial Humanities
Spatial Data, Spatial HumanitiesSpatial Data, Spatial Humanities
Spatial Data, Spatial Humanities
EDINA, University of Edinburgh
 
Land Cover Map 2015
Land Cover Map 2015Land Cover Map 2015
Land Cover Map 2015
EDINA, University of Edinburgh
 
We have the technology... We have the data... What next?
We have the technology... We have the data... What next?We have the technology... We have the data... What next?
We have the technology... We have the data... What next?
EDINA, University of Edinburgh
 
Reference Rot in Theses: A HiberActive Pilot - 10x10 session for Repository F...
Reference Rot in Theses: A HiberActive Pilot - 10x10 session for Repository F...Reference Rot in Theses: A HiberActive Pilot - 10x10 session for Repository F...
Reference Rot in Theses: A HiberActive Pilot - 10x10 session for Repository F...
EDINA, University of Edinburgh
 
GeoForum EDINA report 2017
GeoForum EDINA report 2017GeoForum EDINA report 2017
GeoForum EDINA report 2017
EDINA, University of Edinburgh
 
If I Googled You, What Would I Find? Managing your digital footprint - Nicola...
If I Googled You, What Would I Find? Managing your digital footprint - Nicola...If I Googled You, What Would I Find? Managing your digital footprint - Nicola...
If I Googled You, What Would I Find? Managing your digital footprint - Nicola...
EDINA, University of Edinburgh
 
Moray housemarch2017
Moray housemarch2017Moray housemarch2017
Moray housemarch2017
EDINA, University of Edinburgh
 
Uniof stirlingmarch2017secondary
Uniof stirlingmarch2017secondaryUniof stirlingmarch2017secondary
Uniof stirlingmarch2017secondary
EDINA, University of Edinburgh
 
Uniof glasgow jan2017_secondary
Uniof glasgow jan2017_secondaryUniof glasgow jan2017_secondary
Uniof glasgow jan2017_secondary
EDINA, University of Edinburgh
 
Managing your Digital Footprint : Taking control of the metadata and tracks a...
Managing your Digital Footprint : Taking control of the metadata and tracks a...Managing your Digital Footprint : Taking control of the metadata and tracks a...
Managing your Digital Footprint : Taking control of the metadata and tracks a...
EDINA, University of Edinburgh
 
Social media and blogging to develop and communicate research in the arts and...
Social media and blogging to develop and communicate research in the arts and...Social media and blogging to develop and communicate research in the arts and...
Social media and blogging to develop and communicate research in the arts and...
EDINA, University of Edinburgh
 
Enhancing your research impact through social media - Nicola Osborne
Enhancing your research impact through social media - Nicola OsborneEnhancing your research impact through social media - Nicola Osborne
Enhancing your research impact through social media - Nicola Osborne
EDINA, University of Edinburgh
 
Social Media in Marketing in Support of Your Personal Brand - Nicola Osborne
Social Media in Marketing in Support of Your Personal Brand - Nicola OsborneSocial Media in Marketing in Support of Your Personal Brand - Nicola Osborne
Social Media in Marketing in Support of Your Personal Brand - Nicola Osborne
EDINA, University of Edinburgh
 
Best Practice for Social Media in Teaching & Learning Contexts - Nicola Osborne
Best Practice for Social Media in Teaching & Learning Contexts - Nicola OsborneBest Practice for Social Media in Teaching & Learning Contexts - Nicola Osborne
Best Practice for Social Media in Teaching & Learning Contexts - Nicola Osborne
EDINA, University of Edinburgh
 
SCURL and SUNCAT serials holdings comparison service
SCURL and SUNCAT serials holdings comparison serviceSCURL and SUNCAT serials holdings comparison service
SCURL and SUNCAT serials holdings comparison service
EDINA, University of Edinburgh
 
Big data in Digimap
Big data in DigimapBig data in Digimap
Big data in Digimap
EDINA, University of Edinburgh
 
Introduction to Edinburgh University Data Library and national data services
Introduction to Edinburgh University Data Library and national data servicesIntroduction to Edinburgh University Data Library and national data services
Introduction to Edinburgh University Data Library and national data services
EDINA, University of Edinburgh
 
Digimap for Schools: Introduction to an ICT based cross curricular resource f...
Digimap for Schools: Introduction to an ICT based cross curricular resource f...Digimap for Schools: Introduction to an ICT based cross curricular resource f...
Digimap for Schools: Introduction to an ICT based cross curricular resource f...
EDINA, University of Edinburgh
 
Digimap Update - Geoforum 2016 - Guy McGarva
Digimap Update - Geoforum 2016 - Guy McGarvaDigimap Update - Geoforum 2016 - Guy McGarva
Digimap Update - Geoforum 2016 - Guy McGarva
EDINA, University of Edinburgh
 

More from EDINA, University of Edinburgh (20)

The Making of the English Landscape:
The Making of the English Landscape: The Making of the English Landscape:
The Making of the English Landscape:
 
Spatial Data, Spatial Humanities
Spatial Data, Spatial HumanitiesSpatial Data, Spatial Humanities
Spatial Data, Spatial Humanities
 
Land Cover Map 2015
Land Cover Map 2015Land Cover Map 2015
Land Cover Map 2015
 
We have the technology... We have the data... What next?
We have the technology... We have the data... What next?We have the technology... We have the data... What next?
We have the technology... We have the data... What next?
 
Reference Rot in Theses: A HiberActive Pilot - 10x10 session for Repository F...
Reference Rot in Theses: A HiberActive Pilot - 10x10 session for Repository F...Reference Rot in Theses: A HiberActive Pilot - 10x10 session for Repository F...
Reference Rot in Theses: A HiberActive Pilot - 10x10 session for Repository F...
 
GeoForum EDINA report 2017
GeoForum EDINA report 2017GeoForum EDINA report 2017
GeoForum EDINA report 2017
 
If I Googled You, What Would I Find? Managing your digital footprint - Nicola...
If I Googled You, What Would I Find? Managing your digital footprint - Nicola...If I Googled You, What Would I Find? Managing your digital footprint - Nicola...
If I Googled You, What Would I Find? Managing your digital footprint - Nicola...
 
Moray housemarch2017
Moray housemarch2017Moray housemarch2017
Moray housemarch2017
 
Uniof stirlingmarch2017secondary
Uniof stirlingmarch2017secondaryUniof stirlingmarch2017secondary
Uniof stirlingmarch2017secondary
 
Uniof glasgow jan2017_secondary
Uniof glasgow jan2017_secondaryUniof glasgow jan2017_secondary
Uniof glasgow jan2017_secondary
 
Managing your Digital Footprint : Taking control of the metadata and tracks a...
Managing your Digital Footprint : Taking control of the metadata and tracks a...Managing your Digital Footprint : Taking control of the metadata and tracks a...
Managing your Digital Footprint : Taking control of the metadata and tracks a...
 
Social media and blogging to develop and communicate research in the arts and...
Social media and blogging to develop and communicate research in the arts and...Social media and blogging to develop and communicate research in the arts and...
Social media and blogging to develop and communicate research in the arts and...
 
Enhancing your research impact through social media - Nicola Osborne
Enhancing your research impact through social media - Nicola OsborneEnhancing your research impact through social media - Nicola Osborne
Enhancing your research impact through social media - Nicola Osborne
 
Social Media in Marketing in Support of Your Personal Brand - Nicola Osborne
Social Media in Marketing in Support of Your Personal Brand - Nicola OsborneSocial Media in Marketing in Support of Your Personal Brand - Nicola Osborne
Social Media in Marketing in Support of Your Personal Brand - Nicola Osborne
 
Best Practice for Social Media in Teaching & Learning Contexts - Nicola Osborne
Best Practice for Social Media in Teaching & Learning Contexts - Nicola OsborneBest Practice for Social Media in Teaching & Learning Contexts - Nicola Osborne
Best Practice for Social Media in Teaching & Learning Contexts - Nicola Osborne
 
SCURL and SUNCAT serials holdings comparison service
SCURL and SUNCAT serials holdings comparison serviceSCURL and SUNCAT serials holdings comparison service
SCURL and SUNCAT serials holdings comparison service
 
Big data in Digimap
Big data in DigimapBig data in Digimap
Big data in Digimap
 
Introduction to Edinburgh University Data Library and national data services
Introduction to Edinburgh University Data Library and national data servicesIntroduction to Edinburgh University Data Library and national data services
Introduction to Edinburgh University Data Library and national data services
 
Digimap for Schools: Introduction to an ICT based cross curricular resource f...
Digimap for Schools: Introduction to an ICT based cross curricular resource f...Digimap for Schools: Introduction to an ICT based cross curricular resource f...
Digimap for Schools: Introduction to an ICT based cross curricular resource f...
 
Digimap Update - Geoforum 2016 - Guy McGarva
Digimap Update - Geoforum 2016 - Guy McGarvaDigimap Update - Geoforum 2016 - Guy McGarva
Digimap Update - Geoforum 2016 - Guy McGarva
 

Recently uploaded

Template Jadual Bertugas Kelas (Boleh Edit)
Template Jadual Bertugas Kelas (Boleh Edit)Template Jadual Bertugas Kelas (Boleh Edit)
Template Jadual Bertugas Kelas (Boleh Edit)
rosedainty
 
Sectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdfSectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdf
Vivekanand Anglo Vedic Academy
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
bennyroshan06
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
Jisc
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
Steve Thomason
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
DeeptiGupta154
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
Vivekanand Anglo Vedic Academy
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
GeoBlogs
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
Celine George
 
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Thiyagu K
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
Balvir Singh
 
Fish and Chips - have they had their chips
Fish and Chips - have they had their chipsFish and Chips - have they had their chips
Fish and Chips - have they had their chips
GeoBlogs
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
RaedMohamed3
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
Delapenabediema
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
Jisc
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
Thiyagu K
 
Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
joachimlavalley1
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
MIRIAMSALINAS13
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
kaushalkr1407
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
EugeneSaldivar
 

Recently uploaded (20)

Template Jadual Bertugas Kelas (Boleh Edit)
Template Jadual Bertugas Kelas (Boleh Edit)Template Jadual Bertugas Kelas (Boleh Edit)
Template Jadual Bertugas Kelas (Boleh Edit)
 
Sectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdfSectors of the Indian Economy - Class 10 Study Notes pdf
Sectors of the Indian Economy - Class 10 Study Notes pdf
 
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptxMARUTI SUZUKI- A Successful Joint Venture in India.pptx
MARUTI SUZUKI- A Successful Joint Venture in India.pptx
 
The approach at University of Liverpool.pptx
The approach at University of Liverpool.pptxThe approach at University of Liverpool.pptx
The approach at University of Liverpool.pptx
 
The Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve ThomasonThe Art Pastor's Guide to Sabbath | Steve Thomason
The Art Pastor's Guide to Sabbath | Steve Thomason
 
Overview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with MechanismOverview on Edible Vaccine: Pros & Cons with Mechanism
Overview on Edible Vaccine: Pros & Cons with Mechanism
 
The French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free downloadThe French Revolution Class 9 Study Material pdf free download
The French Revolution Class 9 Study Material pdf free download
 
The geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideasThe geography of Taylor Swift - some ideas
The geography of Taylor Swift - some ideas
 
Model Attribute Check Company Auto Property
Model Attribute  Check Company Auto PropertyModel Attribute  Check Company Auto Property
Model Attribute Check Company Auto Property
 
Unit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdfUnit 2- Research Aptitude (UGC NET Paper I).pdf
Unit 2- Research Aptitude (UGC NET Paper I).pdf
 
Operation Blue Star - Saka Neela Tara
Operation Blue Star   -  Saka Neela TaraOperation Blue Star   -  Saka Neela Tara
Operation Blue Star - Saka Neela Tara
 
Fish and Chips - have they had their chips
Fish and Chips - have they had their chipsFish and Chips - have they had their chips
Fish and Chips - have they had their chips
 
Palestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptxPalestine last event orientationfvgnh .pptx
Palestine last event orientationfvgnh .pptx
 
The Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official PublicationThe Challenger.pdf DNHS Official Publication
The Challenger.pdf DNHS Official Publication
 
How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...How libraries can support authors with open access requirements for UKRI fund...
How libraries can support authors with open access requirements for UKRI fund...
 
Unit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdfUnit 8 - Information and Communication Technology (Paper I).pdf
Unit 8 - Information and Communication Technology (Paper I).pdf
 
Additional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdfAdditional Benefits for Employee Website.pdf
Additional Benefits for Employee Website.pdf
 
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXXPhrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
Phrasal Verbs.XXXXXXXXXXXXXXXXXXXXXXXXXX
 
The Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdfThe Roman Empire A Historical Colossus.pdf
The Roman Empire A Historical Colossus.pdf
 
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...TESDA TM1 REVIEWER  FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
TESDA TM1 REVIEWER FOR NATIONAL ASSESSMENT WRITTEN AND ORAL QUESTIONS WITH A...
 

HTML5 Multimedia Streaming

  • 3. HTML5 VIDEO BROWSER SUPPORT H.264 9+ - 3.0+ 2 3.1+ - Theora - 3.5+ 3.0+ - 10.5+ WebM 9+ 1 4.0+ 6.0+ 3 10.6+ 1. WebM support via video element if codec is installed on the system 2. H.264 to be dropped in order to further open standards 3. WebM QuickTime plugin available
  • 4. HTML5 MEDIA FORMATS File Format Video Codec Audio Codec H.264 AAC Theora Vorbis VP8 Vorbis
  • 5. VIDEO COMPRESSION FORMATS ● H.264 – Industry standard for video compression, most widely supported codec of the lot. Commercial users are required to pay royalties ● Theora – originally put forward as the default video technology for HTML5 video, predecessor to WebM ● WebM/VP8 – open sourced by Google after their acquisition of On2 Technologies
  • 6. AUDIO COMPRESSION FORMATS ● Advanced Audio Coding (AAC) – industry standard for audio compression, successor to MP3? Royalty free for distributors ● Ogg Vorbis – open source audio codec developed by Xiph.org Foundation
  • 7. ENCODING YOUR MEDIA ● FFmpeg – cross-platform multimedia framework, supports many codecs ● ffmpeg2theora – tweaked fork of FFmpeg ● qt-faststart – Tool for optimising MP4 files for streaming ● flvtool2 – Tool for optimising FLV files for streaming
  • 8. ENCODING YOUR MEDIA (CONT.) Output 640x360 video at ~1024k: MP4: ffmpeg –i INPUT.avi –vpre libx264-baseline –s 640x360 –ac 128k –vb 896k TMP.mp4 qt-faststart TMP.mp4 OUTPUT.mp4 WebM: ffmpeg –i INPUT.avi -vpre libvpx-360p –s 640x360 OUTPUT.webm Theora: ffmpeg2theora INPUT.avi –o OUTPUT.ogv –v 9 FLV: ffmpeg -i INPUT.avi -s 640x360 -vb 896k -acodec libfaac –ab 128k –vb 896k OUTPUT.flv flvtool2 –U OUTPUT.flv
  • 9. HTML NATIVE VIDEO EXAMPLE <video poster=“poster.png“ tabindex="0“ controls=“controls” preload="none"> <source src=“video.mp4“ type='video/mp4; codecs="avc1.4D401E, mp4a.40.2"' /> <source src=“video.webm“ type='video/webm; codecs="vp8.0, vorbis"' /> <source src=“video.ogv“ type='video/ogg; codecs="theora, vorbis"' /> </video>
  • 10. HTML FLASH VIDEO EXAMPLE <video id=“videoplayer” poster=“poster.png“ tabindex="0“ controls=“controls” preload="none"> <!-- INCLUDE SOURCES FROM PREVIOUS SLIDE --> <object width="640" height=“360" type="application/x-shockwave-flash” data=“flowplayer-3.2.7.swf"> <param name="movie" value="flowplayer-3.2.7.swf" /> <param name="allowfullscreen" value="true" /> <param name="flashvars" value='config={"playlist":[“poster.png", {"url": “video.mp4","autoPlay":false,"autoBuffering":true}]}' /> </object> </video>
  • 11. HTML AUDIO EXAMPLE <audio id="audioplayer" tabindex="0" controls="controls" preload="none"> <source src="audio.m4a" type="audio/mp4" /> <source src="autiod.oga" type="audio/ogg" /> <object width=“30" height=“360" type="application/x-shockwave-flash” data=“flowplayer-3.2.7.swf"> <param name="movie" value="flowplayer-3.2.7.swf" /> <param name="allowfullscreen" value="true" /> <param name="flashvars" value='config={"playlist":[“poster.png", {"url": “audio.m4a","autoPlay":false,"autoBuffering":true}]}' /> </object> </audio>
  • 12. HTML5 (PSEUDO-)STREAMING ● HTTP based delivery solution, no special control protocol required e.g. RTSP ● Byte-range requests work out of the box on most web servers, same functionality is used to resume downloads ● Seek points are calculated from the file header metadata where keyframes are mapped to byte offsets rather than time based
  • 13. FLASH (PSEUDO)-STREAMING ● Flash pseudo-streaming enabled via server modules, YouTube uses this method to deliver their videos ● Supporting clients requests playback offset via a URL parameter e.g. http://example.com/media/video.mp4?start=120
  • 14. FLASH (PSEUDO)-STREAMING (CONT.) ● Server reads keyframe metadata information from resource file header to determine the byte-range request ● Server modules available for Apache HTTP, Lighthttpd & Nginx, IIS solutions available too ● PHP script implementations are also available, resource heavy! ● Supporting Flash players include Flowplayer & JW Player
  • 15. FLASH (PSEUDO)-STREAMING (CONT.) ● H264 Streaming Module – includes support for virtual video clips & adaptive streaming http://h264.code-shop.com/trac ● mod_flvx http://journal.paul.querna.org/articles/2006/07/11/mod_flvx/
  • 16. APACHE SERVER CONFIGURATION LoadModule h264_streaming_module modules/mod_h264_streaming.so AddHandler h264-streaming.extensions .mp4 .m4a LoadModule flvx_module modules/mod_flvx.so AddHandler flv-stream .flv <!-- VIDEO MIMETYPES --> AddType video/mp4 .mp4 AddType video/ogg .ogv AddType video/webm .webm <!-- AUDIO MIMETYPES --> AddType audio/mp4 .m4a AddType audio/ogg .oga
  • 17. ● Nginx – high performance HTTP server developed by Igor Sysoev ● Publicly available since 2004 ● Event based architecture rather than traditional thread based architecture ● Solves C10K problem ● Supports MP4 (module) & FLV (native) pseudo-streaming
  • 18. Example configuration file: location /demo { limit_rate 1500k; limit_rate_after 500k; alias /path/to/media; location ~ .flv$ { flv; } location ~ .mp4$ { mp4; } location ~ .m4a$ { mp4; } }
  • 19. Securing Media with X-Accel-Redirect: location /protected/ { # /protected, only available to internal redirects internal; root /hidden/path/to/media/; } PHP example: $file = $_GET['file']; if( authenticated ) header('X-Accel-Redirect: /protected/' . $file); // serves /hidden/path/to/media/$file else print '<p>Cheeky unauthenticated fool!</p>';
  • 20. HTML5 MEDIA JAVASCRIPT API var v = document.getElementsByTagName("video")[0]; v.play(); v.pause(); v.currentTime = 120; //seek to 120 seconds //Seek attempt before media initialisation if( v.readyState > = v.HAVE_FUTURE_DATA ) { v.currentTime = 120; } else { v.play(); v.onloadedmetadata = function() { //event v.currentTime = 120; } }