chapter 15 html 5 video and audio intro to html5 1

30
CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Upload: solomon-malone

Post on 13-Dec-2015

236 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

CHAPTER 15HTML 5 VIDEO AND AUDIOIntro to HTML5

1

Page 2: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

In this lecture, you will learn:• A list of new features in HTML5

• Key differences between HTML5 and XHTML

• Basic structure of an HTML5 document

2

Page 3: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

HTML 5• Latest revision of HTML

• Backward compatible

• New key features:• video and audio tags• content-specific tags• tags for form elements• canvas element• storage of user data

3

http://www.w3schools.com/html/html5_intro.asp

Page 4: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

HTML 5 Basic Structure

<!doctype html>

<html lang="en">

<head>

<meta charset="utf-8" />

<title>This is a title of the page</title>

</head>

<body>

<p>This is the content of the Web page <br /> </p>

</body>

</html>

4

Page 5: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

An HTML 5 Document

OK to still follow the rules of XHTML

<!doctype html><html lang="en"><head><meta charset="utf-8" /><title>This is a title of the page</title>

</head><body><p>This is the content of the Web page.<br>

<img src="images/demo.png" alt="demo">

</p></body></html>

Arbitrary: cases for tags, pairing tags, uses of quotation marks.

Still a valid HTML 5 document.

<!doctype html><HtML lang=en><hEAd><meta charset=utf-8><TITLe>This is a title of the page</tiTLE>

<boDY><P>This is the content of the Web page.<br>

<IMg src=images/demo.png alt=demo>

5

Easy to read Hard to read

Page 6: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Traditional methods of adding video and audio on Web pages vs.HTML5 <video> and <audio>

Key difference: What applications play the media

• Traditional method (non-HTML5):browser plug-in (such as Flash Player and QuickTime) or external application (such as QuickTime player)

• Using HTML5 <video> and <audio>:browser's built-in player

6

Page 7: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Video and Audio Tags• Allow simple code for adding video and audio on Web

pages

• Video and audio are played back by the Web browser's built-in player, not plug-ins

• Main focus of this chapter

7

Page 8: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Video

http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_video_bear

8

<!DOCTYPE html><html><body>

<video width="320" height="240" controls="controls" autoplay="autoplay"> <source src="movie.mp4" type="video/mp4"> <source src="movie.ogg" type="video/ogg"> <source src="movie.webm" type="video/webm">

Your browser does not support the video tag.

</video>

</body></html>

Page 9: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Canvas• Allows drawing graphics and placing images dynamically

inside canvas using JavaScript

• Visual content inside the canvas can be scripted to change over time (hence animation) and in response to the user interaction (mouse clicks and key presses)

• The canvas element together with JavaScript is used for animation and game development

<canvas id="myCanvas" width="200" height="100">

</canvas>

9

Page 10: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Canvas with JavaScript

http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_canvas_first

10

<!DOCTYPE html><html><body>

<canvas id="myCanvas" width="200" height="100" style="border:1px solid #c3c3c3;">Your browser does not support the HTML5 canvas tag.

</canvas>

<script>var c=document.getElementById("myCanvas");var ctx=c.getContext("2d");ctx.fillStyle="#FF0000";ctx.fillRect(0,0,150,75);</script>

</body></html>

Page 11: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Content-Specific Tags• Tag examples: <footer>, <header>, <nav>, <article>,

<section>, <figure>, <summary>, <aside>

• Provide a standardized system to classify the information on Web pages by semantics

• This facilitates computers to process the information by its meaning and thereby potentially help users to find the right information.

http://dev.opera.com/articles/view/new-structural-elements-in-html5/

11

Page 12: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Form Elements• New form controls examples: date picker, color picker,

numeric stepper, new input types (email, url, and search)

• To enhance user experience of filling out forms

12

Page 13: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Storage of User Data• Before HTML5, user data is stored at cookies and server-

side storage.

• Web storage feature of HTML5 allows storage and retrieval of data on the user machine without user login or servers; i.e., no need for server-side databases or user accounts set up on the server

• Approx. 5 MB storage limit depending on browsers

• Larger data limit than cookies (4 KB limit)

13

Page 14: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Geolocation• GetCurrentPosition() method to get the user’s position

14

http://www.w3schools.com/html/tryit.asp?filename=tryhtml5_geolocation

<!DOCTYPE html><html><body><p id="demo">Click the button to get your coordinates:</p><button onclick="getLocation()">Try It</button><script> var x=document.getElementById("demo"); function getLocation() { if (navigator.geolocation) { navigator.geolocation.getCurrentPosition(showPosition); } else{ x.innerHTML="Geolocation is not supported by this browser."; } } function showPosition(position) { x.innerHTML="Latitude: " + position.coords.latitude + "<br>Longitude: " + position.coords.longitude; }</script></body></html>

Page 15: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Effects on User Experience• HTML5 Video and Audio

• Each Web browser may support different features of video and audio playback

• Each Web browser has its own visual design of the player controller

• Traditional non-HTML5• The same plug-in or external application has the same interface

across Web browsers

15

Page 16: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Screenshot of Video Player: Firefox 3.6

16

Controller: Overlaid on the video; appears when mouse over the video

current time total time

Page 17: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Screenshot of Video Player: Safari 5

17

Controller: Added at the bottom; always showing

current time full screen

Page 18: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Screenshot of Video Player: Chrome 13

18

Controller: Overlaid on the video; appears when mouse over the video

current time

Page 19: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Screenshot of Video Player: IE 9

19

Controller: Overlaid on the video; appears when mouse over the video

audio volumecurrent time

Page 20: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Use of <video> Tag

The simplest form of <video> tag to add an HTML5 video on a Web page:

<video src="demo.ogv" controls> </video>

20

source attribute file path of the media

controls attribute:to show the controller

Page 21: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Use of <audio> Tag

The simplest form of <audio> tag to add an HTML5 audio on a Web page:

<audio src="demo.oga" controls> </audio>

21

source attribute file path of the media

controls attribute:to show the controller

Page 22: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

HTML 5 Video Formats• H.264 MPEG-4/AVC:

.mp4

• OGG:.ogg, .ogv

• WebM:.webm

22

Page 23: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

HTML 5 Audio Formats• WAV:

.wav

• OGG Vorbis:.ogg, .oga

• MP3:.mp3

• AAC:.m4a

23

Page 24: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Browser Support for HTML 5 VideoH.264 MPEG/AVC OGG WebM

Firefox 3.5+ 4.0+

Safari 3.0+

IE 9.0+

Chrome Yes, but will discontinue

support

5.0+ 6.0+

Opera 10.5+ 10.6+

24

Note:• No one browser supports all three video formats• No one video format is supported by all browsers

Page 25: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Browser Support for HTML 5 AudioWAV OGG Vorbis MP3 AAC

Firefox x x

Safari x x x

IE x x

Chrome x x x x

Opera x x

25

Note:• No one audio format is supported by all browsers

Page 26: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Why Fallback Strategies?• Not all browsers support HTML5 video and audio

• Use fallback strategies to provide alternatives for those browsers

26

Page 27: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Basic Idea of Fallback Strategies• In <video> element, add extra HTML code, which is not

HTML5 specific

• This extra code tells the browser what to display

• If the browser does not support HTML5 video and audio, it will:• ignore the <video> and <audio> tags• use that extra code intended for fallback <video src="demo.ogv" controls> <p> Your browser does not support HTML5 video. </p> </video>

27

Page 28: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Fallback Strategies• Use of Flash Video

• Has been widely used on the Web• Almost all browsers have Flash Video Player• <object> tag to embed an alternative video

• Use of links to download video• Simply add links for users to download the video• Also a fallback for devices that do not support Flash video playback• <a> tag to present links to video

• Use of a static image• Simply use an image (often a representative frame of the video) in

place of the video• Also a fallback for devices that do not support Flash video playback

28

Page 29: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Creating HTML5 Video and Audio

If your video/audio editor does not support exporting all or any of the HTML5 video/audio formats, you can:

1. Export your video/audio to a common format, e.g.• Video: QuickTime (.mov), Flash Video (.f4v)• Audio: WAV (.wav)

2. Convert your video/audio to HTML5 formats

29

Page 30: CHAPTER 15 HTML 5 VIDEO AND AUDIO Intro to HTML5 1

Free Tools for Converting Video/Audio to HTML5 Video/Audio Formats

Tool Web Site Supported OS Output

MediaCoder http://www.mediacoderhq.com/ Windows, Mac OS, Linux

Video: MP4, WebM, OggAudio: MP3, Ogg, AAC

HandBrake http://handbrake.fr/ Windows, Mac OS, Linux

Video: MP4

Firefogg http://firefogg.org/ (As a Firefox 6+ plug-in)

Video: WebM, Ogg

VLC Media Player

http://www.videolan.org/vlc/ Windows, Mac OS, Linux

Audio: MP3, AAC, Ogg

30