Windows expression encoder что это



Кодирование видеофайлов и Expression Encoder

Silverlight 5 — Кодирование видеофайлов и Expression Encoder

Кодирование видеофайлов

Для получения оптимальных результатов нужно подготовить видеофайлы с учетом требований Silverlight. Например, необходимо использовать такие видеофайлы, которые не будут перегружать пользовательские каналы. Это особенно важно, если в приложении планируется использовать большие медиафайлы, такие как получасовая лекция.

Обычно файлы WMV, используемые в приложении Silverlight, представляют собой конечный продукт, подготовленный на основе больших, высококачественных исходных видеофайлов. Часто исходные файлы хранятся в форматах, отличных от WMV. Эти подробности исключительно важны, потому что в любом случае вы должны каким-либо образом перекодировать исходные видеофайлы, чтобы уменьшить их размеры и сделать их пригодными для размещения в Интернете.

Для подготовки видеофайлов к размещению в Интернете существует ряд специальных инструментов. Компания Microsoft предоставляет два инструмента:

Windows Movie Maker

Эта программа включена в последние версии Windows (в частности, Windows Vista) и предназначена для личного использования. Для профессиональных целей она слишком ограниченная. Вследствие простоты и ограниченности эта программа больше подходит для редактирования домашнего видео, чем для подготовки видеофайлов к размещению в Интернете.

Expression Encoder

Эта программа доступна как дополнительная часть пакета Expression Suite, разработанного компанией Microsoft. Содержит мощные средства редактирования видеофайлов и специально предназначена для Silverlight, предоставляя такие ценные средства, как автоматическая генерация пользовательских обложек для видеопроигрывателей Silverlight. Бесплатная версия Expression Encoder доступна по адресу: Expression Encoder

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

В платную версию Expression Encoder добавлены поддержка формата Н.264, средства неограниченного копирования с экрана (бесплатная версия копирует лишь 10 минут) и процедура IIS Smooth Streaming, позволяющая веб-серверам настраивать качество потокового видео на основе изменения условий передачи и ресурсов клиентского компьютера. Если указанные средства вам не нужны, пользуйтесь бесплатной версией, вполне пригодной для решения остальных задач.

Использование программы Expression Encoder

Эта программа предоставляет те же возможности, что и Windows Media Encoder, плюс несколько дополнительных возможностей:

Средства редактирования видеофайлов. С помощью программы Expression Encoder можно вырезать и вставлять фрагменты содержимого, а также выполнять другие простые операции редактирования.

Наложение водяных знаков. На основное содержимое можно накладывать водяные знаки в виде неподвижных или анимированных логотипов. Водяные знаки могут быть наложены постоянно или отключаться в заданные моменты времени.

Средства сравнения. Чтобы протестировать эффект, полученный в результате изменения или перекодирования видеофайла, можно воспроизвести исходный и новый варианты одновременно. Программа Expression Encoder автоматически синхронизирует оба варианта, что дает возможность визуально ощутить разницу.

Готовность видеофайла для Silverlight. Программа Expression Encoder поставляется с набором предопределенных профилей, приспособленных для приложений Silverlight (некоторые из этих профилей доступны также в Windows Media Encoder). Кроме того, данная программа позволяет создавать для Silverlight видеопроигрыватели с пользовательскими обложками.

Чтобы закодировать видеофайл с помощью программы Expression Encoder, выполните следующие действия:

После запуска программы выберите значение Silverlight Project (Проект Silverlight) и щелкните на кнопке OK:

Задайте исходный файл. Для этого выберите команду File —> Import, найдите нужный мультимедийный файл, выделите его и щелкните на кнопке Open (Открыть). Возникнет небольшая задержка, в течение которой программа анализирует файл, прежде чем добавить его в список панели Media Content (Мультимедийное содержимое), расположенной в нижней левой части окна. Во время задержки можно выполнять операции редактирования над другими видеофайлами, например отсечь нежелательные фрагменты, вставить маркеры, добавить наложение и т.п. Все эти операции выполняются во вкладке Enhance (Расширенные средства), корешок которой приведен в правой части окна.

Задайте целевой файл. Для этого откройте вкладку Output, в группе Job Output выберите папку и введите имя нового файла:

Выберите значение битрейта. Для этого откройте вкладку Presets, расположенную в правом верхнем углу окна, и разверните раздел Encoding for Silverlight. Если применяется прогрессивная загрузка, выберите формат в группе Variable bitrate. При использовании потоковой загрузки и программы Windows Media Services выберите формат в группе Constant bitrate. При разных форматах будут созданы видеофайлы с разными битрейтами, качеством изображения и размерами. Подробные параметры выбранного формата выводятся во всплывающей подсказке при наведении указателя на формат:

Выбрав нужный формат, щелкните на кнопке Apply в нижней части вкладки Presets.

После задания способа кодирования будет выведена необходимая информация в группе Video вкладки Encode. Можете, например, настроить размеры выходного видеосодержимого с помощью текстового поля Size. Слева находится окно предварительного просмотра, позволяющее визуально оценить результат кодирования:

Щелкните на кнопке Encode, расположенной в нижней части окна на панели Media Content. По необходимости сохраните набор параметров кодирования для использования в будущем с другими видеофайлами (например, с обновленной версией закодированного файла). Запустится процесс кодирования:

Методы сжатия CBR и VBR

В зависимости от параметров приложения Silverlight и режима загрузки (потоковый или прогрессивный) необходимо выбрать метод сжатия видеофайлов. В Silverlight доступны два метода сжатия:

CBR (Constant Bit-Rate Encoding — кодирование с постоянным битрейтом)

Этот метод используется, когда нужно разрешить потоковую загрузку видеофайлов. При использовании данного метода среднее и пиковое значения битрейта одинаковые, поэтому интенсивность потока данных остается постоянной в каждый момент времени. Однако качество кодирования может отличаться для поддержания постоянного битрейта. Это обеспечивает плавное воспроизведение видеофайла на клиентском устройстве. При прогрессивной загрузке битрейт может быть непостоянным, потому что приложение кэширует необходимый объем содержимого.

VBR (Variable Bit-Rate Encoding — кодирование с переменным битрейтом)

Данный метод используется при прогрессивной загрузке. При его применении текущий битрейт изменяется в зависимости от сложности содержимого. Более сложное содержимое кодируется с увеличенными значениями битрейта. Качество остается постоянным, но скорость передачи изменяется.

Обычно скорость передачи ограничивается наихудшими частями содержимого, поэтому при использовании метода VBR размер видеофайла при том же качестве в общем случае меньше, чем при использовании метода CBR. Максимальное значение битрейта в Silverlight ограничивается методом VBR.

Например, если выбрать профиль VC-1 Web Server 512k DSL, будет создан видеофайл со средним значением битрейта, равным 350 Кбит/с (что меньше пропускной способности соединения, равной 512 Кбит/с), и с максимальным значением 750 Кбит/с.

Маркеры

Маркер — это текстовое примечание, внедренное в мультимедийный файл и связанное с определенным временем. Формат WMV поддерживает текстовые маркеры и команды сценариев (используемые, например, для открытия веб-страницы во время воспроизведения), однако Silverlight интерпретирует оба этих средства как одно и то же — как текстовые закладки, связанные со временем.

Маркеры предоставляют интересные возможности для создания проигрывателей на основе страниц Silverlight. Например, можно внедрить в файл набор маркеров, используемых в качестве заголовков, и выводить их в определенное время. Можно также внедрить в видеофайл инструкции для надстройки Silverlight, которые приложение будет читать и выполнять.

Платформа Silverlight предоставляет в элементе MediaElement два инструмента реагирования на маркеры: событие MarkerReached и коллекцию Markers. Однако сначала рассмотрим добавление маркера в мультимедийный файл.

Добавление маркеров с помощью программы Expression Encoder

Программа Expression Encoder содержит встроенные средства добавления маркеров. Чтобы добавить маркеры, выполните следующие действия:

После импорта мультимедийного файла откройте вкладку Metadata.

Перетащите ползунок в позицию, в которой нужно разместить маркер.

На панели Markers щелкните на кнопке Add, чтобы создать новый маркер. Маркер будет добавлен в список:

По необходимости отредактируйте время и добавьте текст маркера в поле Value (Значение).

Если планируется использовать маркер для индексной навигации, установите рядом с маркером флажки Key Frame (Ключевой кадр) и Thumbnail (Эскиз). Если в данной позиции создать ключевой кадр, воспроизведение будет начинаться с этого места с минимальной задержкой. Эскиз можно отобразить на экране. Когда пользователь щелкнет на эскизе, приложение перейдет к маркеру. Оба эти средства применимы, только если Expression Encoder используется для генерации видеостраницы Silverlight, хотя их можно создать и для собственной страницы.

Вернитесь к п. 2 и добавьте другие маркеры. При этом можете редактировать существующие маркеры или щелкнуть на кнопке Remove (Удалить), чтобы удалить выделенный маркер.

Программа Expression Encoder может создать для закодированного видеофайла проигрыватель Silverlight. Откройте вкладку Output и область Job Output. В списке Template выберите пункт, начиная с Silverlight 3. Шаблон определяет версию Silverlight и обложку проигрывателя. При выделенном шаблоне отображается область предварительного просмотра интерфейса проигрывателя. Если выбрать пункт None, программа не создаст проигрыватель.

Создав нужные маркеры, щелкните на кнопке Encode (Кодировать), чтобы начать кодирование видеофайла.

Когда программа Expression Encoder генерирует мультимедийный проигрыватель на основе шаблона, она автоматически создает входную HTML-страницу и несколько скомпилированных файлов ХАР. Программа не генерирует исходный код и файлы проекта, поэтому вы не сможете приступить к точной настройке проигрывателя сразу после его создания.

Однако можно воспользоваться существующим шаблоном и применить его в качестве базиса для своего пользовательского шаблона, который затем можно будет применить совместно с любым проектом Expression Encoder. Для этого найдите подходящий шаблон и задайте его в качестве начального на вкладке Templates. Затем щелкните на значке с шестеренкой в нижнем правом углу вкладки и выберите значение Edit Copy of Template in Visual Studio (Редактировать копию шаблона в Visual Studio).

Использование маркера в приложении Silverlight

Отобразить информацию о маркере на экране можно с помощью события MarkerReached элемента MediaElement. Свойство TimelineMarkerRoutedEventArgs.Marker предоставляет объект TimelineMarker, содержащий текст маркера (в свойстве Text) и время маркера (в свойстве Time).

Извлечь коллекцию Markers из элемента MediaElement можно в любой момент времени, не дожидаясь события MarkerReached. Это особенно полезно, если маркер используется для навигации. Например, можно создать реакцию на событие MediaOpened (в это время коллекция Markers заполняется) и вывести информацию о маркерах в список:

В данном примере код считывает маркеры из мультимедийного файла. Объекты TimelineMarker можно также создать программно и добавить в коллекцию Markers при загрузке файла и возникновении события MediaOpened. В этом случае маркер ведет себя как обычно, например объект MediaElement при его достижении генерирует событие MarkerReached. Однако маркер не сохраняется в видеофайле после его закрытия и повторной загрузки. Это дает возможность загружать информацию маркера из другого источника, например из текстового файла.

Программа Expression Encoder позволяет создавать эскизы изображений для маркеров. Эскизы внедрены в видеофайл или связаны с ним каким-либо способом. Эскиз можно отобразить на странице и применить в коде для навигации. Программа Expression Encoder жестко кодирует имена эскизов и позиции маркеров, что позволяет автоматически генерировать код приложения. Однако такой подход усложняет поддержку приложения.

Источник

Microsoft Expression

Microsoft Expression как семейство программных продуктов было впервые продемонстрировано на Конференции профессиональных разработчиков (PDC — Professional Developers Conference) в 2005 году, но лишь в 2007 году корпорация Microsoft сделала общедоступным первый выпуск инструментальных средств из этого семейства. Семейство программных продуктов Expression представляет собой ряд приложений, предназначенных для тех пользователей, которые профессионально занимаются графическим оформлением, но этими продуктами все чаще стали пользоваться и разработчики программного обеспечения.

На момент написания этой статьи семейство Expression состояло из четырех программных продуктов (Expression Web, Expression Encoder, Expression Design и Expression Blend), которые можно было приобрести вместе с пакетом программ Microsoft Expression Studio Ultimate.

Вам, вероятно, будет приятно узнать, что если у вас или вашей организации имеется подписка на MSDN (собрание документов корпорации Microsoft, содержащее сведения обо всех ее разработках), то Expression Studio Ultimate входит в ваш текущий пакет программ. Но даже если у вас нет законной подписки на MSDN, вам все равно будет приятно узнать, что вы можете загрузить пробную версию Expression Studio Ultimate, действующую в течение 60 дней, по следующему адресу: http://www.microsoft.com/en-us/download/details.aspx?id=5915.

Строго говоря, для изучении материала требуется только копия Expression Blend. Но если вы стремитесь к тому, чтобы научиться внедрять сложную векторную графику в приложения WPF или Silverlight, настоятельно рекомендую установить также копию Expression Design. Все члены семейства Expression кратко рассматриваются ниже.

Назначение Expression Web

Инструментальное средство Expression Web позволяет создавать готовые для эксплуатации и стандартизованные веб-сайты в режиме визуальной разработки. Несмотря на то что это инструментальное средство веб-разработки от корпорации Microsoft, оно не накладывает никаких ограничений на применение только на платформе ASP.NET или ASP.NET AJAX, хотя поддержка платформы NET реализована в Expression Web отлично.

По желанию можете воспользовался интегрированными редакторами страниц и исходного кода для создания веб сайтов средствами PHP, HTML/XHTML, XML/XSLT, CSS, JavaScript, а также с помощью компонентов Adobe Flash и Windows Media.

В состав Expression Web входит также сопутствующий программный продукт Super Preview. Этот компонент Expression Web существенно упрощает тестирование создаваемых веб-сайтов в нескольких наиболее распространенных браузерах, работающих как в Windows, так и в Mac OS. Если у вас имеется некоторый опыт веб-разработки, то вам наверно известно, каких нервов стоит обеспечение правильного функционирования веб-страниц в разных программных средах. Применяя Expression Web и SuperPreview, вы получаете в свое распоряжение солидный набор инструментальных средств, помогающих благополучно справиться с подобной задачей и сберечь свои нервы.

Назначение Expression Encoder

Expression Encoder это инструментальное средство, предоставляющее удобную платформу для импорта, редактирования и усовершенствования видеоматериалов, кодированных и самых разных форматах файлов, включая AVI, WMV, WMA, QuickTime MOV (если установлен проигрыватель QuickTime), MPEG, VC-1 и H.264.

Так, например с помощью Expression Encoder можно создать на профессиональном уровне учебный видеоматериал, настроенный на воспроизведение в потоковом режиме в приложении Silverlight или WPF. Кроме того, Expression Encoder можно использовать для создания мультимедийных средств, плавно интегрируемых в приложения Silverlight или WPF посредством закладок и специально настраиваемых обложек.

Назначение Expression Design

Инструментальное средство Expression Design разработано корпорацией Microsoft с целью составить конкуренцию таким программным продуктам компании Adobe Systems, как Illustrator and Photoshop. (На самом деле в Expression Design и Expression Blend можно импортировать файлы изображений в форматах Illustrator и Photoshop — этих двух основных приложений для графического оформления.) По существу, инструментальное средство Expression Design позволяет художникам-оформителям создавать изысканные образцы векторной графики.

Как и следовало ожидать, Expression Design дает художникам-оформителям возможность сохранять результаты своих трудов в самых разных стандартных форматах файлов, включая PNG, JPEG, GIF, TIFF и пр. Но самое интересное, что Expression Design позволяет также сохранять графические данные в формате XAML для приложений WPF и Silverlight.

Вам, вероятно, известно, что расширяемый язык разметки приложений (XAML) основывается на синтаксисе языка XML для описания состояния графического или другого объекта на платформе .NET. Например, в приведенном ниже фрагменте кода разметки на языке XAML описывается внешний вид векторного изображения Данный пример показывает, как с помощью всего лишь нескольких строк кода XAML можно создать привлекательные эффекты падающей тени и сложного радиального градиента, заполняющего участок внутри круга:

Предоставляя возможность сохранять векторную графику в формате XAML, Expression Design существенно упрощает разработчикам задачу внедрения профессионально оформленной графики в существующее приложение и ее взаимодействия с данными посредством кода. В частности, художник-оформитель может создать стилизованный двухмерный лабиринт для видеоигры. Сохранив эти графические данные в формате XAML, он может затем импортировать их в проект Expression Blend (или Visual Studio 2010) и дополнить стилизованной анимацией, поддержкой проверки местоположения курсора мыши и прочими средствами.

Назначение Expression Blend

Expression Blend представляет собой компонент, предназначенный для разработки приложений WPF или Silverlight на промышленном уровне. Это инструментальное средство генерирует большой объем кода XAML, требующегося для прикладных программ. И хотя аналогичную разметку можно выполнить вручную, используя разнообразные средства разработки, начиная с текстового редактора WordPad и кончая интегрированной средой Visual Studio 2010, вы можете избавить себя от хронических судорог в кистях рук, воспользовавшись многословным характером синтаксиса XAML, основанного на языке XML.

Возможности Expression Blend выходят далеко за рамки относительно простой поддержки редактирования кода XAML в Visual Studio 2010, предоставляя развитые инструментальные средства для компоновки и настройки элементов управления, создания анимационных последовательностей, специальных стилей оформления и шаблонов, построения новых классов UserControl из имеющейся векторной графики, визуальной разработки шаблонов данных, назначения различных режимов работы и визуальных состояний для элементов пользовательского интерфейса и выполнения многих других полезных операций.

Несмотря на то что в состав Expression Blend входит упрощенный редактор кода C# и VB, вы вряд ли будете разрабатывать весь свой код на платформе .NET в подобной интегрированной среде в силу ее довольно ограниченных в этом отношении возможностей.

В частности, в ней не поддерживается отладка кода. Правда, проект в Expression Blend имеет тот же самый формат, что и родственный ему проект в Visual Studio 2010. Следовательно, работу над новым проектом можно начать в Expression Blend с разработки пользовательского интерфейса, а затем открыть этот проект в Visual Studio 2010 для реализации, отладки, тестирования и компоновки сложного кода приложения.

Как правило, подавляющая часть приложений WPF или Silverlight строится в каждой из упомянутых выше интегрированных сред в цикле их разработки.

Помимо инструментальных средств, предоставляемых для построения изящно оформленных пользовательских интерфейсов, в состав Expression Blend входит набор инструментов, позволяющих оперативно создавать прототипы приложений средствами SketchFlow. Этот компонент Expression Blend дает возможность быстро и эффективно имитировать и определять последовательность операций в пользовательском интерфейсе приложения, компоновку экранов и переход из одного состояния приложения в другое.

На рисунке приведен пример проекта SketchFlow:

Источник

You may also like...