Makha Катастрофически тебя не хватает мне...

четверг, 01 марта 2012

Все в порядке... Во всяком случае, в конечном итоге все будет в полном порядке!

15:31 video - местами работаем, местами нет...
читать дальше

@темы: HTML5

URL
http://yellow.spider.ru/gloom/ban_468.jpg
У блин, оказыватся, один из моих друзей работает стриптиз...
Недавно один человек, ничего особо не подозревая, назвал ...
"Во время кризиса самое главное - не потерять голову...
"Алло" по-корейски Ёбосэё, а "красивый/кра...
:mdsw: Как я мог упустить описание совершенно замечател...

01.03.2012 в 16:46

01.03.2012 в 16:46
Вот пример видео, которое начинает загрузку (но не воспроизведение), как только загрузится страница.



А вот пример видео, которое не будет загружаться при загрузке страницы.



Атрибут autoplay делает именно то, как и звучит: говорит браузеру, что вы хотели бы начать загрузку видеофайла при загрузке страницы, и желаете воспроизвести видео автоматически при возможности.


А вот скрипт Greasemonkey, который можно установить в вашей локальной копии Firefox для предотвращения автоматического воспроизведения HTML5-видео. Он использует DOM-атрибут autoplay определенный в HTML5 и эквивалентный атрибуту autoplay в коде HTML.


Но подождите секунду... Если вы следовали этой главе, то у вас есть не один видеофайл, а три. Один это OGV-файл, второй MP4- файл, третий WebM-файл. HTML5 обеспечивает способ сделать ссылки на все три файла с помощью элемента . Каждый элемент может содержать более одного тега . Ваш браузер пройдется по списку источников видео по порядку и выберет первым то, что он в состоянии воспроизвести.

Возникает другой вопрос: как браузер узнает, какое видео он сможет воспроизвести? Ну, в худшем случае он загружает каждое видео и пытается его сыграть, однако это большая трата пропускной способности. Вы сэкономите много трафика, если сообщите браузеру информацию о каждом видео. Это можно сделать атрибутом type тега .

Элемент < video> определяет ширину и высоту видео, но не ссылку на видеофайл. Внутри < video> три элемента < source>. Каждый элемент < source> ссылается на отдельный видеофайл (с атрибутом src), а также дает информацию о видеоформате (в атрибуте type).
URL

01.03.2012 в 16:52

01.03.2012 в 16:52
Тип атрибута выглядит сложным, адски сложным. Это комбинация из трех блоков информации: формат файла, видеокодек и аудиокодек. Давайте начнем с самого последнего. Для видеофайла .ogv формат контейнера это Ogg, представленный здесь как video/ogg, строго говоря, это MIME-тип для видеофайлов Ogg. Видеокодек Theora и аудиокодек Vorbis. Это достаточно просто, кроме формата значение атрибута, он немного странный. Само значение должно быть заключено в кавычки, поэтому вы должны использовать различные виды кавычек, чтобы окружить значение целиком.

С WebM почти так же, но с другим MIME-типом (video/webm вместо video/ogg) и другим видеокодеком (vp8 вместо theora) написанным в параметре codecs.

Видео H.264 является более сложным. Помните, я говорил, что видео H.264 и аудио AAC может быть в разных «профилях»? Мы кодируем H.264 с помощью «базового» профиля и AAC с профилем «низкая сложность» и все это внутри контейнера MPEG-4. Вся информация, включенная в атрибут type.

Преимуществом всех этих сложностей является то, что браузер проверяет атрибут type первым и смотрит, может ли он воспроизвести видеофайл. Если браузер решает, что он не может этого сделать, то не будет скачивать файл даже частично. Вы сэкономите на пропускной способности, а ваши посетители увидят видео, за которым они пришли, быстрее.

На момент написания (20 мая 2010 года), iPad содержит ошибку, из-за которой он не замечает ничего, кроме первого источника видео в списке. К сожалению, это означает, что вы должны указать ваш MP4-файл первым, а затем остальные видеоформаты. Эх.

Вы уже видели его как часть значения атрибута type у тега . Но добавление атрибута type не является достаточным, вы также должны убедиться, что ваш веб-сервер включает в HTTP-заголовок Content-Type соответствующий MIME-тип.

Если вы применяете веб-сервер Apache или его производные, то можете использовать директиву AddType в httpd.conf или файле .htaccess расположенный в той директории, где вы храните ваши видеофайлы. Если вы используете другой веб-сервер, обратитесь к документации вашего сервера о том, как установить HTTP-заголовок Content-Type для определенных типов файлов.

AddType video/ogg .ogv
AddType video/mp4 .mp4
AddType video/webm .webm

Первая строка предназначена для видео в контейнере Ogg. Вторая строка для видео в контейнере MPEG-4. Третья для WebM. Установите это один раз и забудьте. Если вы не указали эти директивы, ваше видео может не играть в некоторых браузерах, даже если включены MIME-типы в атрибуте type вашего HTML-кода.

Для суровых подробностей по настройке веб-сервера, я обращаю ваше внимание на эту прекрасную статью в Mozilla Developer Center: Configuring servers for Ogg media. Советы в этой статье также относятся к видео MP4 и WebM.
URL

01.03.2012 в 16:55

01.03.2012 в 16:55
Но HTML5 хорошо продуман, чтобы обойти проблему IE, поэтому вы можете вложить элемент < object> внутрь < video>. Браузеры, которые не поддерживают HTML5-видео, будут игнорировать элемент и просто отображать вложенный < object> который ссылается на плагин Flash и показывает кино через FlowPlayer. Браузеры, поддерживающие HTML5-видео, обнаружат источник видео, который они могут воспроизвести и проигнорируют вложенный элемент < object>...
URL

01.03.2012 в 16:57

01.03.2012 в 16:57
Проблемы с iPhone и iPad

iOS это операционная система Apple для iPhone, iPod Touche и iPad. iOS 3.2 имеет ряд проблем с HTML5-видео.

1 iOS не распознает видео, если вставлен атрибут poster. Этот атрибут тега позволяет отображать произвольное изображение при загрузке видео или пока пользователь нажимает на кнопку «играть». Эта ошибка исправлена в iOS 4.0, но пройдет какое-то время пока пользователи обновятся.
2 Если у вас несколько элементов , iOS признает лишь первый в списке. Устройства с iOS поддерживают только H.264 + AAC + MP4, это фактически означает, что вы всегда должны указывать MP4-файл в первую очередь. Эта ошибка также исправлена в iOS 4.0.

Проблемы с устройствами на базе Android

Android это операционная система Google для разных телефонов и карманных устройств. Android (до версии 2.2 включительно, последняя версия на момент написания) имеет ряд проблем с HTML5-видео.

1 Атрибут type тега порядочно «смущает» Android. Единственный способ заставить его признать источник видео это по иронии судьбы вообще опустить атрибут type и убедиться, что имя вашего видеофайла H.264 + AAC + MP4 заканчивается расширением .mp4. Это, кажется, не влияет на способность любого другого браузера определять поддержку видео; при отсутствии атрибута type другие браузеры смотрят на расширение файла. Вы еще можете включить атрибут type для других источников видео, так как H.264 является единственным форматом видео, который поддерживается устройствами Android на данный момент.
2 Атрибут controls не поддерживается, и Android не будет отображать любые элементы управления для видео. Вам будет нужно обеспечить собственные элементы управления пользовательского интерфейса. Как минимум, вы должны сделать скрипт, который начинает проигрывать видео, когда пользователь на него нажимает.
URL