Windows expression encoder что это

Обновлено: 07.07.2024

Microsoft Expression Encoder [6] (ранее Expression Media Encoder) - это программное обеспечение для транскодирования и нелинейного редактирования видео для Microsoft Windows. Он может создавать видеопотоки для распространения через Microsoft Silverlight . Эта утилита создана для записи экрана для различных целей, таких как YouTube, Twitch, Sharing и т. Д.

4 SP2 (4.0.4276.0) / 2 ноября 2011 г . ; 9 лет назад [1] [2] ( 2011-11-02 )

Expression Encoder - это программа для транскодирования и линейного редактирования видео. Он имеет графический пользовательский интерфейс на основе Windows Presentation Foundation (WPF), а также интерфейс командной строки . Он может экспортировать видео в форматы H.264 или VC-1 или подготовить видеопотоки для распространения через Microsoft Silverlight . Он поддерживает элементы управления проигрывателя Silverlight и шаблоны Silverlight.

Microsoft Expression Encoder доступен в различных редакциях: [5] [7]

  1. Версия Pro, полнофункциональная коммерческая версия продукта, доступна в магазинах розничной торговли или корпоративного лицензирования, а также в рамках программы BizSpark .
  2. Версия Pro без кодеков, в которой отсутствуют кодеки, требующие лицензионных отчислений, и доступна для подписчиков DreamSpark , WebsiteSpark или MSDN . Эта версия не поддерживает форматы H.264 или Advanced Audio Coding (AAC) на выходе, а также не может открывать форматы AVCHD , MPEG-2 и Dolby Digital (AC-3).
  3. Экспресс-версия предоставляется бесплатно, но с ограниченными возможностями. Эта версия имеет те же ограничения, что и версия Pro без кодеков, но также не поддерживает потоковую передачу в реальном времени.

Версия 1.0 была выпущена в производство 6 сентября 2007 года.

В марте 2008 года была выпущена бета-версия версии 2.0, которая включала новые кодеки VC-1 (расширенный, основной и простой профили) и улучшенную поддержку Silverlight. Версия 2 была выпущена в производство в мае 2008 года. Expression Первый пакет обновления добавил поддержку кодирования H.264 + AAC для устройств. Согласно Microsoft, Expression Encoder 2 не заменял Windows Media Encoder , несмотря на то, что он имел много общего. [8]

В Expression Encoder 3 добавлен многоканальный аудиовыход, больше встроенных профилей устройств, таких как поддержка Zune HD , Xbox 360 и iPod Touch , а также профили для онлайн-сервисов, таких как Facebook и YouTube. Он также добавил Expression Encoder 3 Screen Capture, который позволяет пользователям создавать снимки экрана с видео.

Версия 4 добавила плавную потоковую передачу IIS в реальном времени, улучшения захвата экрана и кодировщик H.264 на основе MainConcept SDK. [9] Expression Encoder 4.0 с пакетом обновления 1 (SP1) был выпущен в январе 2011 года и добавил кодирование с поддержкой графического процессора с поддержкой CUDA , HE-AAC, снимки экрана в качестве источника в реальном времени, шаблоны прямых трансляций, выборочное деинтерлейсинг смешивания и другие функции. [10] Пакет обновления 2 (SP2) с исправлением около 300 ошибок был выпущен 2 ноября 2011 года и добавил новые функции, такие как кодирование видео с ускорением на GPU и снятие ограничения на запись экрана в 10 минут. [1] [2]

Некоторые из функций Microsoft Expression Encoder включают:

Microsoft Expression Encoder не может кодировать видеопотоки в форматах Windows Media Video старше версии 9. [13] Expression Encoder требует QuickTime для декодирования контейнерного формата MP4 [3], хотя Media Foundation , компонент Windows 7 , может декодировать этот формат в исходном коде. [14]

Microsoft Expression Encoder (ранее Expression Media Encoder) - это программное обеспечение для транскодирования и нелинейного редактирования видео для Microsoft Windows. Он может создавать видеопотоки для распространения через Microsoft Silverlight . Эта утилита создана для записи экрана для различных целей, таких как YouTube, Twitch, Sharing и т. Д.

СОДЕРЖАНИЕ

Обзор

Expression Encoder - это программа для транскодирования и линейного редактирования видео. Он имеет графический пользовательский интерфейс на основе Windows Presentation Foundation (WPF), а также интерфейс командной строки . Он может экспортировать видео в форматы H.264 или VC-1 или подготовить видеопотоки для распространения через Microsoft Silverlight . Он поддерживает элементы управления проигрывателя Silverlight и шаблоны Silverlight.

Microsoft Expression Encoder доступен в разных редакциях:

  1. Версия Pro, полнофункциональная коммерческая версия продукта, доступна в магазинах розничной торговли или корпоративного лицензирования, а также в рамках программы BizSpark .
  2. Версия Pro без кодеков, в которой отсутствуют кодеки, требующие лицензионных отчислений, и доступна для подписчиков DreamSpark , WebsiteSpark или MSDN . Эта версия не поддерживает форматы H.264 или Advanced Audio Coding (AAC) на выходе, а также не может открывать форматы AVCHD , MPEG-2 и Dolby Digital (AC-3).
  3. Экспресс-версия предоставляется бесплатно, но с ограниченными возможностями. Эта версия имеет те же ограничения, что и версия Pro без кодеков, но также не поддерживает потоковую передачу в реальном времени.

История

Версия 1.0 была выпущена в производство 6 сентября 2007 года.

В марте 2008 года была выпущена бета-версия версии 2.0, которая включала новые кодеки VC-1 (расширенный, основной и простой профили) и улучшенную поддержку Silverlight. Версия 2 была выпущена в производство в мае 2008 года. Expression Первый пакет обновления добавил поддержку кодирования H.264 + AAC для устройств. Согласно Microsoft, Expression Encoder 2 не заменял Windows Media Encoder , несмотря на то, что он имел много общего.

В Expression Encoder 3 добавлен многоканальный аудиовыход, больше встроенных профилей устройств, таких как поддержка Zune HD , Xbox 360 и iPod Touch , а также профили для онлайн-сервисов, таких как Facebook и YouTube. Он также добавил Expression Encoder 3 Screen Capture, который позволяет пользователям создавать снимки экрана с видео.

Версия 4 добавила плавную потоковую передачу IIS в реальном времени, улучшения захвата экрана и кодировщик H.264 на основе MainConcept SDK. Expression Encoder 4.0 с пакетом обновления 1 (SP1) был выпущен в январе 2011 года и добавил кодирование с использованием графического процессора с поддержкой CUDA , HE-AAC, снимки экрана в качестве источника в реальном времени, шаблоны прямой трансляции, селективное смешивание с деинтерлейсингом и другие функции. 2 ноября 2011 г. был выпущен пакет обновления 2 (SP2), содержащий около 300 исправлений ошибок. В него были добавлены новые функции, такие как кодирование видео с ускорением на GPU и снятие ограничения на запись экрана в 10 минут.

Функции

Некоторые функции Microsoft Expression Encoder включают:

Системные Требования

Ограничения

Microsoft Expression Encoder не может кодировать видеопотоки в форматах Windows Media Video старше версии 9. Expression Encoder требует QuickTime для декодирования формата контейнера MP4, хотя Media Foundation , компонент Windows 7 , может декодировать этот формат изначально.

Один из моих самых любимых эпизодов — сцена в фильме, где Кларк Гризвулд — его роль в фильме «Рождество семейки придурков» («Christmas Vacation») исполняет актер Чеви Чейз (Chevy Chase), — оказывается запертым на своем чердаке при попытке спрятать там рождественские подарки. Чтобы согреться, он надевает розовые перчатки, зеленую шапку и меховую накидку, вытащенные из пыльного сундука. На дне сундука он обнаруживает кинопленки из семейного архива и, коротая время, просматривает их со слезами на глазах на старом кинопроекторе.

Домашние видеозаписи с тех пор сильно изменились, но перед людьми встает все та же проблема: как показывать свои записи семье и друзьям? Сайты вроде YouTube, Vimeo и Facebook позволяют легко сделать эти записи доступными для просмотра многим людям, но заливка на такие сайты видеозаписей высокой четкости с потоком хорошо за 100 Мб/мин требует слишком много времени. Все шансы за то, что ваше мобильное устройство, игровая приставка или домашний кинотеатр даже не сумеют воспроизвести файл с таким видеопотоком. Для решения этих проблем нужно преобразовать видео в другой формат. Этот процесс называют кодированием (encoding).

Об Expression Encoder

Инструмент кодирования видео от Microsoft, Expression Encoder 3, является частью семейства продуктов Expression для создания впечатляющих UI для настольных и веб-приложений. Expression Encoder поставляется в бесплатной и платной версиях; платная версия входит в состав как Expression Studio 3 Suite (599 долларов США), так и Expression Web 3 Suite (149 долларов США). Бесплатная версия не поддерживает кодирование в форматах Silverlight Smooth Streaming и H.264, а также использование видео формата H.264 в качестве источника, но она, тем не менее, позволяет кодировать в файлы Windows Media Video и содержит неплохой SDK. Многие из примеров кода в этой статье требуют наличия платной версии программы; тем не менее все примеры кода будут компилироваться и в бесплатной версии SDK. Просто при запуске скомпилированного кода вы получите исключение InvalidMediaException или FeatureNotAvailableException.

Какую бы версию вы ни выбрали, вы захотите установить Encoder 3 QFE. Он обеспечивает поддержку дополнительных типов файлов и устройств ввода, повышает скорость работы в определенных ситуациях и включает исправления ряда несущественных ошибок. Установщик QFE можно найти на странице Expression Encoder веб-сайта Microsoft Expression.

Поддерживаемые форматы

Поддерживаются следующие входные форматы видео:

  • Windows Media Video (.wmv);
  • DVD-видео (.vob);
  • MPEG (.mpg, .mpeg);
  • Audio Video Interleave (.avi);
  • Microsoft Digital Video Recording (.dvr-ms).

Платная версия дополнительно поддерживает следующие форматы (плюс целый ряд других форматов):

  • MPEG-4 (.mp4, .m4v);
  • Quicktime (.mov);
  • AVC HD (.mts);
  • Mobile Device Video (.3gp, .3g2).

Бесплатная версия Expression Encoder поддерживает в качестве выходного кодека только Microsoft VC-1. Однако это все равно позволяет кодировать видео для Silverlight (только с одним битрейтом), Xbox 360, Zune и Zune HD. Кроме того, кодек VC-1 вовсе не плох: он обеспечивает сжатие не хуже (а иногда и лучше), чем H.264. Обновление до платной версии даст вам выходные форматы Silverlight Smooth Streaming (с несколькими битрейтами) и H.264, т. е. вы сможете кодировать видео для воспроизведения на iPhone, PS3, Flash-плеере (версия 10 поддерживает H.264/.mp4) и множестве других устройств.

Кодирование номер 101

Поддержка определенных устройств вывода требует изменения некоторых параметров профиля видео, поэтому вы должны понимать основы кодирования видео. Перекодирование — это фактически процесс декомпрессии видео и его повторное сжатие с использованием другого кодека или с ручным изменением таких атрибутов, как размер, соотношение сторон или скорости кадров. Хотя существуют методы сжатия без потерь, они применяются редко, так как получаемые в итоге файлы все равно остаются слишком большими. Поэтому, чтобы уменьшить объем пространства, необходимого для хранения видео (и соответственно ускорить его передачу), для сжатия и декомпрессии видео используют некий алгоритм, или кодек. После этого сжатый видеопоток сохраняется согласно спецификации контейнера (например, WMV или MP4). Контейнеры и кодеки зачастую не образуют эксклюзивных контрактов, поэтому, хотя H.264 является наиболее распространенным кодеком для контейнера MP4, можно использовать и другие кодеки.

Битрейт (bitrate), выражаемый в Кбит/с, определяет, сколько данных требуется для хранения сжатого видео. Уменьшение битрейта сообщает кодировщику сжимать видео с более высокой степенью компрессии, что приводит к ухудшению качества видео. Существуют разные способы, с помощью которых можно указывать кодировщику, как определять битрейт видео. Самый простой — использовать постоянный битрейт (constant bitrate, CBR), при котором кодировщик использует одинаковый объем данных для каждой секунды видео. Переменный битрейт (variable bitrate, VBR) позволяет сообщить кодировщику, каким должен быть общий битрейт конечного файла, но разрешить ему самостоятельно увеличивать или понижать битрейт для конкретного раздела видео, исходя из необходимого для него объема данных. Переменный ограниченный битрейт аналогичен неограниченному VBR с тем исключением, что вы указываете не только средний битрейт, но и максимальный, который нельзя превышать.

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

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

Использование SDK

Первым создается экземпляр объекта MediaItem. Его конструктор принимает строку как единственный параметр. Передайте путь к файлу, который вы используете в качестве источника в проекте кодирования:

Создание объекта MediaItem занимает одну-две секунды. SDK при этом выполняет «за кулисами» весьма приличный объем работы, собирая такую информацию об исходном видео, как его высота, ширина, скорость кадров (частота, с которой на экране должны отображаться индивидуальные изображения) и длительность. попутно собираются сведения и об аудиопотоке.

Затем вы создаете экземпляр класса Job (в котором всего один конструктор без параметров) и добавляете свой MediaItem в его список MediaItems. Класс Job выступает в роли диспетчера желательных форматов вывода (также называемых профилями):

Теперь вам нужно сообщить объекту Job, какие профили аудио и видео следует использовать при кодировании; самый простой способ — выбрать один из профилей, определенных в UI. Чтобы создать видео, например для Zune HD, вы можете использовать пресет VC1ZuneHD:

Наконец, укажите каталог вывода и запустите процесс кодирования:

Ваш файл Program.cs должен выглядеть примерно так, как показано на рис. 1.

Рис. 1. Создание видео для Zune HD

Осталось сделать лишь одно, прежде чем запускать приложение: если вы используете 64-разрядную версию Windows, вам нужно модифицировать проект для компиляции под x86. В строке меню Visual Studio выберите Project | (Имя_проекта) Properties. В открывшемся диалоговом окне выберите вкладку Build и смените значение Platform Target с «Any CPU» на «x86».

Теперь вы готовы запустить приложение и создать видео, которое можно будет просматривать на Zune HD. Процесс кодирования займет несколько минут и будет очень сильно нагружать процессор. Кодирование видео значительно выигрывает от распараллеливания, поэтому на многоядерных процессорах эта операция будет выполнена намного быстрее.

В Expression Encoder также включены пресеты для кодирования под сетевые сервисы наподобие YouTube, Vimeo и Facebook. Видео с разрешением 720p, записанное моей цифровой камерой Panasonic Lumix DMC-ZS3, расходует 110 Мб на минуту видеозаписи. Преобразование видео с применением пресета YouTube HD (тоже с разрешением 720p) уменьшает этот объем до 16 Мб. Благодаря этому его можно гораздо эффективнее закачивать на сервис и хранить на локальном диске. Преобразование в файл .mp4 также делает его совместимым с многими другими программами редактирования видео.

Пользовательские настройки

Чтобы вручную создать такой же вывод, как и при использовании пресета VC1ZuneHD, вам пришлось бы написать код, показанный на рис. 2, чтобы задать профили видео и аудио. Чтобы скомпилировать код на рис. 2, вы должны добавить ссылки на Microsoft.Expression.Encoder.Utilities и System.Drawing. Также добавьте выражения using для Microsoft.Expression.Encoder.Profiles и System.Drawing. OutputFormat фактически указывает контейнер для выходного файла. Я сказал «фактически», потому что кодирование для Silverlight работает слегка иначе (как именно — я расскажу чуть позже).

Рис. 2. Параметры профилей видео и аудио для Zune HD

VideoProfile задает применяемый видеокодек наряду с параметрами кодирования. Аналогично AudioProfile указывает аудиокодек вместе с параметрами. При конструировании VariableConstrainedBitrate первый параметр сообщает средний битрейт, а второй — максимальный. Параметр размера задает прямоугольник, в который должно умещаться конечное видео. Для видеоролика Adrenaline Rush я задал конечные размеры 480 × 272, чтобы сохранить соотношение сторон, но если бы я ввел 480 × 480, конечное видео все равно было бы 480 × 272.

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

Silverlight Smooth Streaming

Silverlight Smooth Streaming динамически переключает битрейт воспроизводимого медийного файла в зависимости от текущих условий в сети. Проект Smooth Streaming состоит из индивидуальных видеороликов, хранящихся в файлах .ismv, а также из файлов метаданных .ism и .ismc, которые поддерживают воспроизведение Smooth Streaming.

Чтобы создать проект Silverlight Smooth Streaming, нужно внести целый ряд изменений. Во-первых, измените значение KeyFrameDistance на две секунды. Видеоролик будет по-прежнему проигрываться, если оставить KeyFrameDistance равным четырем секундам, но воспроизведение может оказаться дерганым, когда проигрыватель будет переключать битрейты. Проигрыватель Silverlight будет запрашивать видео порциями длиной по две секунды, поэтому воспроизведение окажется более плавным, если в начале каждого запроса будет находиться ключевой кадр. Вам также понадобится добавить следующую строку:

Установив значение SmoothStreaming в true, вы сообщает кодировщику выводить видео в файлы .ismv и создавать файлы метаданных .ism и .ismc. При наличии только одного битрейта ваш проект на самом деле не будет Smooth Streaming, поэтому, чтобы создать несколько битрейтов выходного видео, вы должны добавить в VideoProfile несколько потоков данных. Для этого используйте код, аналогичный показанному на рис. 3.

Рис. 3. Добавление Silverlight Smooth Streaming

Здесь в коде указаны три различных битрейта и масштабы для кодирования. Для оптимального качества размер видео необходимо сократить, поскольку битрейт сокращен. Указывая собственные битрейты, вы можете использовать настройки IIS Smooth Streaming в Expression Encoder 3 UI. Заметьте, что увеличить качество кодированием видео с более высоким разрешением, чем в исходном файле, нельзя. И вообще кодировать с более высоким, чем в источнике битрейтом имеет смысл только при использовании метода более слабой компрессии. Если SDK смог определить битрейт в исходном файле, он будет присутствовать в свойстве SourceVideoProfile, принадлежащем MediaItem:

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

Примерный битрейт в Кбит/с = (размер файла в Кб * 8 / длительность видео в секундах) – битрейт аудио в Кбит/с

Чтобы получить размер исходного файла, используйте класс System.IO.FileInfo, а с помощью SDK можно узнать длительность (свойство MediaItem.FileDuration) и, возможно, битрейт аудиопотока. Если вы не знаете битрейт аудио, используйте для оценки 128 или 160 (в большинстве случаев битрейты аудиопотоков колеблются в пределах 64–192); вы также можете узнать битрейт аудио в окне свойств Windows Media Player (нажмите Alt, чтобы появилась строка меню, а затем выберите File | Properties).

Отслеживание процесса кодирования

Поскольку кодирование может занимать часы, полезно иметь возможность отслеживать его прогресс. SDK предоставляет простой способ мониторинга процесса кодирования через событие, для которого вы можете добавить обработчик:

Добавьте примерно такой метод для обработки этого события:

Многопроходное кодирование — новая концепция, представленная в этом примере кода. При кодировании с переменным битрейтом процесс выполняется в два этапа, называемых проходами. На первом проходе исходное видео анализируется, чтобы определить, какие части самые сложные и получат преимущество от более высокого битрейта. На втором проходе видео кодируется с использованием информации, полученной на первом проходе. Таким образом, если вы применяете постоянный битрейт, вам незачем использовать свойство CurrentPass или TotalPasses класса EncodeProgressEventArgs.

Комбинирование видеороликов

Если вам нужно кодировать только часть видеоролика или скомбинировать несколько видеороликов в один, соответствующая поддержка в SDK есть. Чтобы модифицировать время начала и конца исходного медийного элемента (source media item), вы можете изменить свойство Clips. Чтобы закодировать только первые шесть секунд видеоролика, используйте примерно такой код:

Для добавления других видеороликов в качестве исходных файлов можно подписать их имена к значению свойства Sources вашего MediaItem. Это приведет к кодированию исходных файлов по порядку в один выходной файл:

Кодирование «на лету»

Expression Encoder также поддерживает кодирование из источников видео реального времени, например веб-камер. Концепция (и код) похожа на применяемую при кодировании видеофайлов, но используется другой набор классов. Они находятся в пространстве имен Microsoft.Expression.Encoder.Live.

Первый класс, который вы должны задействовать, — LiveJob. Он работает подобно Encoder.Job — выполняет работу по кодированию видео. Однако в данном случае OutputFormat — это свойство LiveJob, а не объекта MediaItem (который не нужен). Когда создается экземпляр объекта LiveJob, он ищет устройства ввода видео, подключенные к компьютеру, и заполняет свойства VideoDevices и AudioDevices. После этого вы можете пользоваться ими как входным источником для кодировщика. Пример показан на рис. 4.

Рис. 4. Кодирование видео «на лету»

Этот код начнет сеанс кодирования «на лету», используя веб-камеру (если она у вас подключена) и транслировать полученное видео на вашей локальной машине через порт 8080. Для просмотра кодируемого потока «в прямом эфире» откройте Windows Media Player и выберите File | Open URL, а затем введите mms://localhost:8080. После буферизации какой-то части видеопотока вы должны увидеть видео, передаваемое веб-камерой, хоть и с лагом в 20–30 секунд из-за времени, уходящего на кодирование и передачу потока данных. Потенциально это видео можно было бы использовать как источник для Windows Media Services или IIS Media Services для широковещательной передачи всему миру.

Дополнительные инструменты

Если вы не уверены, что выбранные вами параметры кодирования дадут нужное качество вывода, воспользуйтесь удобным инструментом в Expression Encoder 3 UI — A/B Compare. Он позволяет кодировать пять секунд видео вокруг текущей позиции воспроизведения. Это видео появится рядом с исходным (рис. 5), и вы сможете легко сравнить качество сжатого видео с оригинальным.

Рис. 5. A/B Compare в Expression Encoder 3

image: A/B Compare in Expression Encoder

Затем вы можете сохранить текущие параметры как пользовательский пресет, выбрав Edit | Save current settings as preset. Этот пресет будет храниться как XML-файл, который можно использовать с SDK:

Надеюсь, теперь вы понимаете базовую терминологию, связанную с кодированием видео, и можете принимать обоснованные решения по выбору кодеков и битрейтов. Вы также знаете, как использовать Expression Encoder 3 SDK, чтобы кодировать видеоролики под конкретные платформы вроде Xbox 360, iPhone и Silverlight, а также обрабатывать потоковое видео. Так что не ждите, когда вы окажетесь запертым на чердаке подобно Кларку Гризвулду, чтобы осознать ценность домашнего видеоархива и забытых воспоминаний. Преобразуйте их в формат, который сделает их доступными всему миру.

Выражаю благодарность за рецензирование статьи эксперту: Бену Рашу (Ben Rush)

В предыдущей статье данного цикла мы начали изучение продуктов семейства Microsoft Expression, рассмотрев продукты Expression Blend и Expression Web. В настоящей статье мы ознакомимся с оставшимися продуктами этого семейства, а также с некоторыми дополнительными компонентами Expression Studio 3.

Expression Design 3

Expression Design 3 — это профессиональный редактор для создания и обработки векторных изображений в различных форматах. Expression Design 3 является отличным дополнением к Expression Blend 3, который позволяет осуществлять основанный на XAML процесс разработки дизайна в течение всего периода создания проекта. Поддерживается возможность использования существующего графического материала путем внедрения графики из других приложений с помощью стандартных форматов файлов, таких как JPEG, PNG и GIF, открытых векторных изображений из других популярных графических инструментов, а также быстрого создания сложных векторных изображений с помощью интуитивных и гибких инструментов для рисования.

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

Expression Design поддерживает работу со следующими графическими форматами: Photoshop 7 или более ранних версий (PSD), TIFF, JPEG (или JPG/JFIF), GIF, PNG, BMP (или DIB/RLE). Adobe Illustrator (AI), Windows Media Photo (WDP, HD Photo или HDP) и ICO. Сохранение результатов редактирования возможно в XAML-файлах для применения в приложениях на WPF или Silverlight, векторных форматах или форматах PNG, JPEG, GIF, TIFF, BMP, WDP (HD Photo) и PSD. В версии 3 появилась поддержка файлов формата Adobe Photoshop (PSD), которая может быть выполнена либо с помощью команд импорта, либо непосредственным открытием PSD-файла, либо перетаскиванием соответствующего файла непосредственно на рабочую поверхность Expression Design.

Еще одна новинка в Expression Design 3 — поддержка экспорта эффектов Silverlight и Windows Presentation Foundation. Если вы используете эффекты отбрасывания тени или гауссовского затемнения в ваших изображениях, создаваемых средствами Expression Design 3, то их можно экспортировать как эффекты, совместимые с Windows Presentation Foundation и Silverlight 3.

Включенные в состав Expression Design средства для экспорта и разделения на слои легко передают графические изображения в Expression Web и Expression Blend. Поддерживается возможность работы с отдельными фрагментами как с отдельными форматами, включая холст Silverlight, холст WPF, словарь ресурсов WPF, коды HTML, PSD и PDFК.

Рисунок

Для использования Microsoft Expression Design 3 необходимы:

Expression Encoder 3

Expression Encoder 3 (предыдущее название — Expression Media Encoder) — это профессиональное средство для обработки видео в форматах VC-1 и H.264|MPEG-4 AVC. Данный продукт можно использовать для подготовки видеофайлов, записанных традиционными средствами, непосредственно с веб­камеры или с экрана (с помощью входящей в состав продукта утилиты Microsoft Expression Screen Capture), встраивания защитной или рекламной информации, расширенных метаданных и дальнейшей публикации полученных видеоматериалов средствами Microsoft Silverlight.

Применение Expression Encoder включает следующие шаги:

  1. Импорт существующего видеоматериала:
    • поддерживаются следующие видеоформаты: 3G2, 3GP, ASF, AVI, AVS, DV, DVR-MS, ISMV (Adaptive Streaming file format), M2V, M4V, MOD, MOV, MP4, MPEG, MPG, MTS/M2TS (AVCHD), TS, VOB, WMV, WTV (Windows Television), XESC (Expression Encoder screen capture format);
    • можно использовать графические изображения в форматах: animated GIF, BMP, GIF, JPEG, JPG, PNG, TIF, XAML;
    • поддерживаются следующие аудиоформаты: AC3, AIFF, M4A, M4B, BWF, MP3, MP4, WAV, WMA;
    • для работы с некоторыми форматами может потребоваться установка Apple QuickTime, декодера MPEG-2 или AviSynth. Установленные на компьютере кодеки можно посмотреть с помощью команды Tools>Options >Compatibility.

Рисунок

  1. Внесение необходимых модификаций. На этом шаге можно изменять длину клипов, вырезать фрагменты, добавлять субтитры, маркеры, скрипты, графические изображения, управлять уровнем аудио и т.п.
  2. Настройка опций кодирования и предварительного просмотра:
    • на этом шаге создается так называемый профиль кодирования, описывающий такие настройки, как битрейт, размер видео, тип кодека и т.п. Можно как применять уже входящие в состав продукта профили, так и создавать самостоятельные;
    • если планируется публикация видео средствами Microsoft Windows Server 2008 и Microsoft Internet Information Services (IIS) 7, можно использовать технологию Smooth Streaming.
  3. Выбор формата сохранения видео. Здесь вам предоставляется возможность выбора одного из двух вариантов — с применением шаблонов Silverlight или без них. Выбор зависит от планов по дальнейшему использованию результатов кодирования: если вы планируете веб­публикацию средствами Silverlight, применяйте соответствующие шаблоны, для создания WMV/WMA-файлов для локального просмотра шаблоны Silverlight использовать не нужно. Шаблоны Silverlight представляют собой приложения-проигрыватели (XAP-файлы) с поддержкой плейлистов, разбиения на главы, проигрывания в режиме офлайн и в отдельном окне.
  4. Сохранение результатов. После того как файл создан, он может быть опубликован в веб, сохранен на локальном компьютере или на мобильном устройстве — телефоне, проигрывателе и т.п.

Рисунок

Помимо создания файлов поддерживается возможность так называемого живого кодирования (Live Encoding) — в этом случае вы вещаете видео со своего компьютера или с сервера с установленным на нем компонентом Windows Media.

Версии Expression Encoder

Существуют две версии Expression Encoder: с поддержкой IIS Smooth Streaming и без таковой. Версия Expression Encoder с поддержкой IIS Smooth Streaming представляет собой полную версию продукта, поддерживающую все возможности продукта и все кодеки, необходимые для поддержки широкого набора сценариев кодирования и потокового воспроизведения.

Версия без поддержки IIS Smooth Streaming содержит практически все возможности полного продукта, за исключением некоторых кодеков: H.264, декодер MP4/H.264, декодер TS (Transport Stream)/MPEG2/AC3 и поддержки Smooth Streaming. В этой версии захват экрана возможен только в течение 10 мин.

Требования к системе

Для использования Microsoft Expression Encoder 3 необходимы:

Дополнительные компоненты

Вместе с Expression Studio устанавливается ряд дополнительных компонентов: Microsoft Expression Blend 3 SDK и Microsoft Expression Encoder 3 SDK, которые разработчики могут применять для расширения возможностей соответствующих продуктов.

Рисунок

Expression Studio и дополнительные компоненты

Microsoft Expression Blend 3 SDK

В Expression Blend 3 появилось понятие behaviors — повторно используемых фрагментов кода, которые могут применяться совместно с объектами для изменения их свойств. Использование этих компонентов позволяет добавлять приложениям элементы интерактивности без написания кода. Набор средств для разработчиков Expression Blend Software Development Kit обеспечивает расширение возможностей behaviors, применяемых в Expression Blend.

Рисунок

Expression Blend 3 SDK

Программные интер­фейсы состоят из трех основных классов: Trig-ger, Action и Behavior. В Expression Blend 3 SDK приведены описания способов использования этих классов, их свойств, событий и методов, а также ряд практических примеров, которые могут служить основой для собственных разработок.

Microsoft Expression Encoder 3 SDK

Объектная модель Expression Encoder содержит классы, отражающие основные действия по обработке видеофайлов: Job, MediaItem, OutputFormat, VideoProfile, AudioProfile и Bitrate.

Рисунок

Expression Encoder 3 SDK

Expression Encoder 3 Software Development Kit содержит описание классов, составляющих объектный модуль Expression Encoder, их методов, событий и свойств, а также ряд практических примеров применения этих классов для решения различных задач по обработке видеофайлов.

Microsoft Silverlight 3 Software Development Kit

Полезные ссылки

Microsoft Expression: основные ресурсы

Windows Presentation Foundation: основные ресурсы

Microsoft Silverlight: основные ресурсы

На этом мы завершаем рассмотрение семейства продуктов Microsoft Expression 3.

Читайте также: