Глава 11. Работа с видео
Выбор проигрывателя видео Существует множество форматов видеофайлов, и для каждого формата обычно требуется свой проигрыватель и способ настройки проигрывателя. На веб-страницах ASP.NET можно воспроизводить видеозаписи посредством вспомогательного объекта Video. Вспомогательный объект Video упрощает процесс внедрения видео в веб-страницу, поскольку он автоматически создает элементы HTML object и embed, которые обычно используются для добавления видео на страницу. Вспомогательный объект Video поддерживает следующие проигрыватели видео:
Для данного занятия, мы взяли файл Russia_clip и конвертировали его во все используемые форматы. Вы можете использовать как программное обеспечение для конвертирования видео файлов, так и онлайн конвертеры. Вы можете использовать Microsoft Expression Encoder 4, который можно получить бесплатно по программам DreamSpark, WebsiteSpark и BizSpark. Так же Вы можете скачать его ознакомительную версию. Однако он не поддерживает конвертирование в формат Flash видео. Хелперы Для изучения описанных в данном занятии возможностей, Вам необходимо установить описанным в предыдущих главах способом хелпер Video, входящий в ASP.NET Web Helpers Library 1.15, иначе Вы будете получать подобное сообщение об ошибке: Проигрыватель Flash Вспомогательный объект Video.Flash воспроизводит видеофайлы в формате Flash (SWF-файлы) на веб-страницах. Для этого, как минимум, требуется задать путь к видеофайлу. Если не указать ничего, кроме значения path, проигрыватель использует заданные по умолчанию значения, которые определяются текущей версией Flash. Типичные параметры по умолчанию указаны ниже:
Проигрыватель MediaPlayer Проигрыватель MediaPlayer вспомогательного объекта Video служит для воспроизведения на веб-странице видеофайлов в формате Windows Media Video (WMV-файлы), аудиофайлов в форматах Windows Media Audio (WMA-файлы) иMP3 (MP3-файлы). Для этого необходимо задать параметр path для файла мультимедиа, который требуется воспроизвести; все остальные параметры не являются обязательными. Если задать только path, проигрыватель использует заданные по умолчанию значения, которые определяются текущей версией MediaPlayer, например:
Проигрыватель Silverlight Проигрыватель Video.Silverlight воспроизводит видеофайлы в формате Windows Media Video (WMV-файлы), аудиофайлы Windows Media Audio (WMA-файлы) и MP3 (MP3-файлы). Параметр path следует настроить так, чтобы он указывал на пакет приложения на базе Silverlight (XAP-файл). Необходимо также настроить параметры width и height. Все остальные параметры не являются обязательными. Если при воспроизведении видео в проигрывателе Video.Silverlight настроены только обязательные параметры, видеоизображение в проигрывателе Silverlight отображается без цветного фона.
Видеопроигрыватель Silverlight использует как параметры, заданные пользователем, так и параметры, содержащиеся в XAP-файле. Типы MIME При загрузке файла браузер проверяет соответствие его типа типу MIME, указанному для визуализируемого документа. Тип MIME — это тип содержимого или тип мультимедиа того или иного файла. Вспомогательный объект Video поддерживает следующие типы MIME:
Воспроизведение видео в формате Flash (SWF) Ниже описывается процедура воспроизведения видеофайла Russia_clip.swf в формате Flash. Процедура предполагает наличие на сайте папки Media, в которой находится SWF-файл. 1. Добавьте на веб-сайт страницу с именем FlashVideo.cshtml. 2. Добавьте на страницу следующую разметку:
3. Откройте страницу в браузере. Страница выводится на экран, и воспроизведение видеофайла запускается автоматически: Для параметра quality (качество) видео в формате Flash можно задать значения:
Видео в формате Flash можно изменить для воспроизведения в определенном размере посредством параметра scale, для которого можно задать следующие размеры:
Если не указать значение для параметра scale, видеоизображение будет видно целиком, а соотношение сторон будет сохранено без обрезки. Ниже приведен пример настройки параметра scale:
Проигрыватель Flash поддерживает параметр режима воспроизведения windowMode. Для него можно задать значения window (окно), opaque (непрозрачный) и transparent (прозрачный). По умолчанию для windowMode задано значение window, при котором видео воспроизводится в отдельном окне на веб-странице. В режиме opaque участок веб-страницы позади видеоизображения скрыт. В режиме transparent веб-страница видна как фон сквозь видеоизображение, если какая-либо его часть прозрачна. Проигрыватель Windows Media Перейдем к воспроизведению видео при помощи проигрывателя Windows Media. Для этого нам понадобится поместить файл с расширением WMV в папку Media. Мы будем использовать файл russia_clip.wmv, Вы же можете использовать любой файл, заменив его название в строках кода. Так же, не забудьте, веб хелпер должен быть установлен, если Вы начали новый проект. 1. Создайте страницу с именем MediaPlayerVideo.cshtml. 2. Добавьте на страницу следующую разметку:
3. Откройте страницу в браузере. Видео загружается и воспроизводится автоматически. Параметр path указывает путь к воспроизводимому файлу, а параметры Width и height ширину и высоту изображения в пикселах соответственно. Параметр autostart отвечает за автоматическое воспроизведение видео при загрузке страницы и может принимать значения true или false. Параметру playCount задается целочисленное значение, определяющее, сколько раз видеофайл должен воспроизводиться автоматически. Параметр uiMode служит для указания, какие элементы управления должны отображаться в пользовательском интерфейсе. Параметру uimode можно задавать следующие значения:
Если не указать значение для параметра uiMode, видео будет воспроизведено в окне с окном состояния, полосой поиска, кнопками управления, регуляторами громкости. Эти элементы управления будут отображаться и при воспроизведении аудиофайла в этом проигрывателе. При воспроизведении видеофайла звук включен по умолчанию. Чтобы отключить звук, следует присвоить параметру mute значение true. Управление уровнем громкости при воспроизведении видеофайла в MediaPlayer выполняется посредством задания параметру volume значения в диапазоне от 0 до 100. По умолчанию задано значение 50. В своем примере мы изменили значение до 90. Параметр stretchToFit может принимать значения true или false и отвечает за заполнение воспроизводимым видео окна воспроизведения. Параметр enableContextMenu так же может принимать значения true или false и позволяет нам отключить или разрешить использование контекстного меню при воспроизведении видео. Воспроизведение Silverlight видео Ниже описывается процедура воспроизведения видеофайла, содержащегося в пакете XAP Silverlight , находящегося в папке Media. 1. Создайте страницу SilverlightVideo.cshtml. 2. Добавьте на нее следующую разметку:
Откройте страницу в браузере и Вы увидите полноценный плеер, с возможностью полноэкранного воспроизведения и множеством других функций, заданных при конвертировании в XAP файле. При конвертировании мы использовали Microsoft Expression Encoder 4, доступный во множестве специальных программ Microsoft бесплатно. Данный пакет позволяет установить множество параметров при конвертировании файла и выбрать один из многочисленных скинов.
Этот код похож на код страницы Flip.cshtml в прежнем примере (хотя на этот раз используется файл Photo3.jpg). Чтобы добавить водяной знак, во вспомогательном объекте WebImage вызывают метод AddTextWatermark до сохранения изображения. При вызове метода AddTextWatermark передают текст "Мой водяной знак", задают цвет шрифта — желтый и семейство шрифтов — Arial (здесь это не показано, однако вспомогательный объект WebImage также позволяет задать прозрачность, семейство и размер шрифтов, положение текста водяного знака). Как демонстрировалось ранее, изображение показывается на странице с помощью элемента <img> с атрибутом src, которому присвоено значение @imagePath. 2. Откройте страницу в браузере: Использование изображения в качестве водяного знака Вместо текста в качестве водяного знака можно использовать другое изображение. Порой в качестве водяных знаков используются изображения, например эмблема компании, либо изображение в виде водяного знака используется вместо текста для отображения информации об авторских правах. 1. Добавьте новую страницу с именем ImageWatermark.cshtml. 2. Добавьте в папку images изображение, которое можно использовать как эмблему, и переименуйте его в MyCompanyLogo.jpg. Это изображение должно сохранять четкость, будучи уменьшенным до 80 пикселей в ширину и 20 — в высоту. 3. Замените существующую разметку следующим кодом:
Это еще одно видоизменение кода, встречавшегося в прежних примерах. В данном случае для добавления изображения в качестве водяного знака к целевому изображению (Photo4.jpg) до его сохранения вызывают метод AddImageWatermark. При вызове метода AddImageWatermark задаются размеры водяного знака: 80 пикселей в ширину и 20 пикселей в высоту. Изображение MyCompanyLogo.jpg по горизонтали расположено по центру, а по вертикали — у нижнего края целевого изображения. Для водяного знака задана прозрачность 100% и отбивка в 10 пикселей. Если водяной знак больше целевого изображения, операция не будет выполнена. Если водяной знак больше целевого изображения, а отбивка равна нулю, водяной знак игнорируется. Как и прежде, для показа изображения применяется элемент <img> с динамическим атрибутом src. 4. Откройте страницу в браузере: Благодарности Благодарим Виталия Коробцева, руководителя инновационных проектов “ООО Валькирия”, за неоценимую помощь в подготовке этого руководства. |