Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Newsletter Hub
Free Learning
Arrow right icon
timer SALE ENDS IN
0 Days
:
00 Hours
:
00 Minutes
:
00 Seconds
Responsive Media in HTML5
Responsive Media in HTML5

Responsive Media in HTML5: Learn effective administration of responsive media within your website or CMS system using practical techniques

Arrow left icon
Profile Icon Alex Libby Profile Icon Alex Libby
Arrow right icon
$10.99 $16.99
eBook Dec 2014 128 pages 1st Edition
eBook
$10.99 $16.99
Paperback
$26.99
Subscription
Free Trial
Renews at $19.99p/m
Arrow left icon
Profile Icon Alex Libby Profile Icon Alex Libby
Arrow right icon
$10.99 $16.99
eBook Dec 2014 128 pages 1st Edition
eBook
$10.99 $16.99
Paperback
$26.99
Subscription
Free Trial
Renews at $19.99p/m
eBook
$10.99 $16.99
Paperback
$26.99
Subscription
Free Trial
Renews at $19.99p/m

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Table of content icon View table of contents Preview book icon Preview Book

Responsive Media in HTML5

Chapter 2. Adding Responsive Video Content

Throughout the history of the Internet, since its early days, designers and developers have been able to add images to websites—these are great to illustrate points or concepts, but are a static record at a point in time. More and more developers are turning to the power of video to help illustrate something: the themes are varied, from news right through to cooking, or even a step-by-step coding tutorial! With the advent of mobile media comes an increasing need for responsive content—we need to ensure our content can be viewed without issue on more and more devices.

In this chapter, we'll go on a journey through some of the concepts required to make our content responsive, as well as cover some of the tips and tricks to make our content available on multiple platforms. In this chapter, we will cover the following topics:

  • Determining support for the <video> formats and choosing the right format
  • Embedding HTML5 video...

Getting ready

For the purpose of our exercises in this chapter, we'll be using similar markup throughout; it is worth saving the following code as a template file to help you complete each exercise:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8"/>
  <title>XXXXXXXXXX</title>
  <meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0" />
  <link href="css/XXXXXXXX.css" rel="stylesheet">
</head>
<body>
</body>
</html>

Now that we have our groundwork prepared, let's begin our journey into working with responsive video, with a look first at the formats available for use.

We will also be using various videos from the Big Buck Bunny Project by the Blender Foundation, namely the 852 x 480 and 1280 x 720 formats; you can download these from http://www.bigbuckbunny.org/index.php/download/.

Note

The videos used throughout this project...

Determining support for <video> formats

The first step on our journey in creating responsive video content is to determine which video format we're going to use. There are several video formats available for use in the browser, but the two worth noting are WebM and MP4. The former is still supported within Firefox, Chrome, and Opera only; the latter is supported by all of the main desktop browsers, except IE8 and Opera. For the purposes of creating responsive content, we still need to work with both though, as the mobile platform has yet to decide on a common standard:

Browser

Firefox

Chrome

Safari

IE (9+)

Opera

iOS

Android

Format supported

MP4

MP4

MP4

MP4

WebM

MP4, WebM

MP4, WebM

This table can also be referred to at http://www.jwplayer.com/html5/ (in the article "The State of HTML5 Video", by Jeroen Wijering).

As the HTML5 video standard is still in something of a state of flux, it is worth checking the CanIUse.com site, to keep abreast of progress...

Choosing the right format

So far, we've learnt that to work with the HTML5 <video> tags, we need to use either the WebM or MP4 formats (or ideally both, to ensure coverage). It's possible that you may have existing content that isn't in this format; if this is the case, let's look at how we can get it converted.

There are dozens of applications available for download, to convert from one format to another—my personal favorite is XMedia Recode for Windows, which is available at http://www.xmedia-recode.de. This allows conversion to and from a host of different formats, including both WebM and MP4. Let's take a look at how it works using the following steps:

  1. We'll start by downloading a copy of XMedia Recode from http://www.xmedia-recode.de/en/download.html; the latest version is 3.1.9.4 at the time of this writing.
  2. Double-click on the setup executable to launch installation and accept all defaults throughout the wizard.

    At this point, XMedia Recode...

Embedding HTML5 video content

As with all projects, we need to start somewhere—we could simply double-click on a video and let it play in any application we have installed, that supports the format. However, this isn't what we're here to do; we want to view the content in a browser and set it to resize automatically!

The following steps will show you how to achieve this using videos I've converted from the open source Big Bunny Project at http://www.bigbuckbunny.org:

  1. Let's start by opening a copy of the template file we created earlier in the book, then alter the <title> tag of our demo, as shown in the following code snippet:
    <title>Demo: Controlling Video sizes using media queries</title>
  2. In the <body> tag of our code, go ahead and add the following lines; these reference the different video formats we can use, depending on which browser we're working with:
      <video controls>
        <source src="video/bigbuckbunny.mp4&quot...

Determining an available viewport for use

If you have spent any time developing content for responsive layouts, you will have no doubt come across media queries. The same applied to videos; you could typically see something akin to the following (simplified) example:

<video controls>
  <source src="the-sky-is-calling-large.mp4" media="screen and (min-width:800px)">
  <source src="the-sky-is-calling-small.mp4" media="screen and (max-width:799px)">
</video>

Unfortunately, most browsers have since removed support for media queries. This is largely due to the poor user experience we get if the video is suddenly interrupted when resizing the screen. Fortunately, we can produce similar effects, although we need to resort to JavaScript or jQuery to achieve this. In this next example, we're going to show a small video if the screen is resized to a small window, or hide it when displayed in full screen. Let's take a look at...

Getting ready


For the purpose of our exercises in this chapter, we'll be using similar markup throughout; it is worth saving the following code as a template file to help you complete each exercise:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8"/>
  <title>XXXXXXXXXX</title>
  <meta name="viewport" content="width=device-width, minimum-scale=1.0, maximum-scale=1.0" />
  <link href="css/XXXXXXXX.css" rel="stylesheet">
</head>
<body>
</body>
</html>

Now that we have our groundwork prepared, let's begin our journey into working with responsive video, with a look first at the formats available for use.

We will also be using various videos from the Big Buck Bunny Project by the Blender Foundation, namely the 852 x 480 and 1280 x 720 formats; you can download these from http://www.bigbuckbunny.org/index.php/download/.

Note

The videos used throughout this project are copyright © 2008, Blender Foundation, available at www.bigbuckbunny...

Determining support for <video> formats


The first step on our journey in creating responsive video content is to determine which video format we're going to use. There are several video formats available for use in the browser, but the two worth noting are WebM and MP4. The former is still supported within Firefox, Chrome, and Opera only; the latter is supported by all of the main desktop browsers, except IE8 and Opera. For the purposes of creating responsive content, we still need to work with both though, as the mobile platform has yet to decide on a common standard:

Browser

Firefox

Chrome

Safari

IE (9+)

Opera

iOS

Android

Format supported

MP4

MP4

MP4

MP4

WebM

MP4, WebM

MP4, WebM

This table can also be referred to at http://www.jwplayer.com/html5/ (in the article "The State of HTML5 Video", by Jeroen Wijering).

As the HTML5 video standard is still in something of a state of flux, it is worth checking the CanIUse.com site, to keep abreast of progress at http://caniuse...

Choosing the right format


So far, we've learnt that to work with the HTML5 <video> tags, we need to use either the WebM or MP4 formats (or ideally both, to ensure coverage). It's possible that you may have existing content that isn't in this format; if this is the case, let's look at how we can get it converted.

There are dozens of applications available for download, to convert from one format to another—my personal favorite is XMedia Recode for Windows, which is available at http://www.xmedia-recode.de. This allows conversion to and from a host of different formats, including both WebM and MP4. Let's take a look at how it works using the following steps:

  1. We'll start by downloading a copy of XMedia Recode from http://www.xmedia-recode.de/en/download.html; the latest version is 3.1.9.4 at the time of this writing.

  2. Double-click on the setup executable to launch installation and accept all defaults throughout the wizard.

    At this point, XMedia Recode will be installed; we now need to run...

Embedding HTML5 video content


As with all projects, we need to start somewhere—we could simply double-click on a video and let it play in any application we have installed, that supports the format. However, this isn't what we're here to do; we want to view the content in a browser and set it to resize automatically!

The following steps will show you how to achieve this using videos I've converted from the open source Big Bunny Project at http://www.bigbuckbunny.org:

  1. Let's start by opening a copy of the template file we created earlier in the book, then alter the <title> tag of our demo, as shown in the following code snippet:

    <title>Demo: Controlling Video sizes using media queries</title>
  2. In the <body> tag of our code, go ahead and add the following lines; these reference the different video formats we can use, depending on which browser we're working with:

      <video controls>
        <source src="video/bigbuckbunny.mp4" type="video/mp4">
        <source src="video...

Determining an available viewport for use


If you have spent any time developing content for responsive layouts, you will have no doubt come across media queries. The same applied to videos; you could typically see something akin to the following (simplified) example:

<video controls>
  <source src="the-sky-is-calling-large.mp4" media="screen and (min-width:800px)">
  <source src="the-sky-is-calling-small.mp4" media="screen and (max-width:799px)">
</video>

Unfortunately, most browsers have since removed support for media queries. This is largely due to the poor user experience we get if the video is suddenly interrupted when resizing the screen. Fortunately, we can produce similar effects, although we need to resort to JavaScript or jQuery to achieve this. In this next example, we're going to show a small video if the screen is resized to a small window, or hide it when displayed in full screen. Let's take a look at how we can achieve this:

  1. We'll begin with extracting...

Catering to fallback support


So far, we've produced HTML5-formatted video content and seen how to embed it in our pages. There may be occasions, though, when we are working on a device that doesn't support a certain type of video format.

While support for HTML5 video is improving all the time, we're still at a stage where not every platform supports the same formats. This leaves us with two choices. We can either try to incorporate a different format, or we can simply set the content to degrade gracefully. We've looked at providing different formats, so let's switch track and see how we can gracefully degrade our content using Modernizr as the basis for our test. The following steps will guide us through the process of content degrading:

  1. Let's begin by adding the following code to a new file and save it as modernizr.html:

    <!DOCTYPE html>
    <html class="no-js">
    <head>
      <meta charset="utf-8"/>
      <title> Demo: Detecting support with Modernizr</title>
      <meta...
Left arrow icon Right arrow icon

Description

If you are a web designer with a good understanding of CSS, jQuery, and HTML, but new to creating responsive sites, then this book is for you. The prerequisite is a good understanding of CSS and HTML; the demos will suit those who have some prior knowledge of Less CSS, WordPress, or Bootstrap.

What you will learn

  • Add responsive images and video content to your site
  • Understand some of the pitfalls of mixing responsive images and videos, and how to alter your development to ensure both cooperate together
  • Incorporate responsive media in popular frameworks such as WordPress, Less CSS, and Bootstrap
  • Test responsive sites to ensure content displays correctly on different iOS and Android devices
  • Discover how to make allowances for mobile devices, and use tools to improve speed of access
  • Utilize tools such as YSlow and other online tools to determine speed of the sites
  • Employ preloaders to counter delays in loading

Product Details

Country selected
Publication date, Length, Edition, Language, ISBN-13
Publication date : Dec 26, 2014
Length: 128 pages
Edition : 1st
Language : English
ISBN-13 : 9781849696975
Languages :
Tools :

What do you get with eBook?

Product feature icon Instant access to your Digital eBook purchase
Product feature icon Download this book in EPUB and PDF formats
Product feature icon Access this title in our online reader with advanced features
Product feature icon DRM FREE - Read whenever, wherever and however you want
OR
Modal Close icon
Payment Processing...
tick Completed

Billing Address

Product Details

Publication date : Dec 26, 2014
Length: 128 pages
Edition : 1st
Language : English
ISBN-13 : 9781849696975
Languages :
Tools :

Packt Subscriptions

See our plans and pricing
Modal Close icon
$19.99 billed monthly
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Simple pricing, no contract
$199.99 billed annually
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts
$279.99 billed in 18 months
Feature tick icon Unlimited access to Packt's library of 7,000+ practical books and videos
Feature tick icon Constantly refreshed with 50+ new titles a month
Feature tick icon Exclusive Early access to books as they're written
Feature tick icon Solve problems while you work with advanced search and reference features
Feature tick icon Offline reading on the mobile app
Feature tick icon Choose a DRM-free eBook or Video every month to keep
Feature tick icon PLUS own as many other DRM-free eBooks or Videos as you like for just $5 each
Feature tick icon Exclusive print discounts

Frequently bought together


Stars icon
Total $ 108.97
Responsive Media in HTML5
$26.99
Responsive Web Design by Example : Beginner's Guide - Second Edition
$48.99
Responsive Design High Performance
$32.99
Total $ 108.97 Stars icon

Table of Contents

6 Chapters
1. Working with Responsive Images Chevron down icon Chevron up icon
2. Adding Responsive Video Content Chevron down icon Chevron up icon
3. Mixing Content Chevron down icon Chevron up icon
4. Testing Responsive Media Chevron down icon Chevron up icon
5. Using Frameworks Chevron down icon Chevron up icon
Index Chevron down icon Chevron up icon
Get free access to Packt library with over 7500+ books and video courses for 7 days!
Start Free Trial

FAQs

How do I buy and download an eBook? Chevron down icon Chevron up icon

Where there is an eBook version of a title available, you can buy it from the book details for that title. Add either the standalone eBook or the eBook and print book bundle to your shopping cart. Your eBook will show in your cart as a product on its own. After completing checkout and payment in the normal way, you will receive your receipt on the screen containing a link to a personalised PDF download file. This link will remain active for 30 days. You can download backup copies of the file by logging in to your account at any time.

If you already have Adobe reader installed, then clicking on the link will download and open the PDF file directly. If you don't, then save the PDF file on your machine and download the Reader to view it.

Please Note: Packt eBooks are non-returnable and non-refundable.

Packt eBook and Licensing When you buy an eBook from Packt Publishing, completing your purchase means you accept the terms of our licence agreement. Please read the full text of the agreement. In it we have tried to balance the need for the ebook to be usable for you the reader with our needs to protect the rights of us as Publishers and of our authors. In summary, the agreement says:

  • You may make copies of your eBook for your own use onto any machine
  • You may not pass copies of the eBook on to anyone else
How can I make a purchase on your website? Chevron down icon Chevron up icon

If you want to purchase a video course, eBook or Bundle (Print+eBook) please follow below steps:

  1. Register on our website using your email address and the password.
  2. Search for the title by name or ISBN using the search option.
  3. Select the title you want to purchase.
  4. Choose the format you wish to purchase the title in; if you order the Print Book, you get a free eBook copy of the same title. 
  5. Proceed with the checkout process (payment to be made using Credit Card, Debit Cart, or PayPal)
Where can I access support around an eBook? Chevron down icon Chevron up icon
  • If you experience a problem with using or installing Adobe Reader, the contact Adobe directly.
  • To view the errata for the book, see www.packtpub.com/support and view the pages for the title you have.
  • To view your account details or to download a new copy of the book go to www.packtpub.com/account
  • To contact us directly if a problem is not resolved, use www.packtpub.com/contact-us
What eBook formats do Packt support? Chevron down icon Chevron up icon

Our eBooks are currently available in a variety of formats such as PDF and ePubs. In the future, this may well change with trends and development in technology, but please note that our PDFs are not Adobe eBook Reader format, which has greater restrictions on security.

You will need to use Adobe Reader v9 or later in order to read Packt's PDF eBooks.

What are the benefits of eBooks? Chevron down icon Chevron up icon
  • You can get the information you need immediately
  • You can easily take them with you on a laptop
  • You can download them an unlimited number of times
  • You can print them out
  • They are copy-paste enabled
  • They are searchable
  • There is no password protection
  • They are lower price than print
  • They save resources and space
What is an eBook? Chevron down icon Chevron up icon

Packt eBooks are a complete electronic version of the print edition, available in PDF and ePub formats. Every piece of content down to the page numbering is the same. Because we save the costs of printing and shipping the book to you, we are able to offer eBooks at a lower cost than print editions.

When you have purchased an eBook, simply login to your account and click on the link in Your Download Area. We recommend you saving the file to your hard drive before opening it.

For optimal viewing of our eBooks, we recommend you download and install the free Adobe Reader version 9.