- PVSM.RU - https://www.pvsm.ru -
В этой статье мы поговорим про использование сертифицированного аудио-кодека Dolby Digital Plus [1] для кодирования медиа-данных по запросу в облаке Windows Azure Media Services [2].
Windows Azure Media Encoder (WAME) — это движок, который содержит набор предустановленных, сертифицированных и готовых к работе кодеков для кодирования видео и аудио контента в облачном сервисе Windows Azure Media Services. Недавно этот движок получил большое обновление, основной новинкой которого стала поддержка сертифицированного кодека Dolby Digital Plus. Кроме того, третья версия движка научилась генерировать сразу несколько выходных файлов с разными аудио-форматами в рамках одной задачи кодирования. Были добавлены и некоторые другие функции.

Dolby Digital Plus [1] (Enhanced AC-3, E-AC-3) — это подвинутый аудио-кодек для кодирования многоканального объемного звука разработанный компанией Dolby Laboratories, Inc. Отличительной особенностью кодека является большое число поддерживаемых аудио-каналов, оптимизация и низкие требования к ширине каналов связи.
Платформа Windows Azure Media Services [2] предлагает встроенный сертифицированный кодек Dolby Digital Plus для кодирования стерео и шестиканального звука. Пользователи могут использовать облачную платформу для построения решений работающих с этим кодеком.
Поддержка кодирования в формат Dolby Digital Plus осуществляется через новый профиль конфигурирования <DolbyDigitalPlusAudioProfile>. Давайте подробнее рассмотрим работу с кодеками в Windows Azure Media Services.
Для создания в облаке задачи кодирования медиа-контента пользователь должен подготовить XML-файл конфигурации, указав требуемые параметры кодирования и перечислив необходимые профили кодеков.
<AudioProfile Condition="SourceContainsAudio">
<DolbyDigitalPlusAudioProfile
Codec="DolbyDigitalPlus"
EncoderMode="DolbyDigitalPlus"
AudioCodingMode="Mode20"
LFEOn="False"
SamplesPerSecond="48000"
DialogNormalization="-31">
<Bitrate>
<ConstantBitrate
Bitrate="128"
IsTwoPass="False"
BufferWindow="00:00:00" />
</Bitrate>
</DolbyDigitalPlusAudioProfile>
</AudioProfile>
На картинке вы можете видеть полностью сконфигурированные настройки для профиля <DolbyDigitalPlusAudioProfile>, который позволяет перекодировать контент с новым кодеком.
По указанным ссылкам вы можете найти готовые XML-файлы настроек для кодирования в стерео- [3] и мультиканальных [4] режимах Dolby Digital Plus.
Давайте рассмотрим их применение в коде демонстрационного проекта.
IJob job = context.Jobs.Create("Encode with Dolby");
IMediaProcessor mediaProcessor = context.MediaProcessors
.Where(x => x.Name == "Windows Azure Media Encoder")
.ToList().OrderBy(x => new Version(x.Version)).LastOrDefault();
На первом шаге мы создаем экземпляры задания для конвертирования контента и медиа-процессора для выполнения этого задания.
var SSConfig = File.ReadAllText(@"C:tempdolby.xml");
Затем мы получаем текст файла конфигурации.
ITask encodeTask = job.Tasks.AddNew("Encoding to Dolby", mediaProcessor, SSConfig, TaskOptions.None);
encodeTask.InputAssets.Add(inputAsset);
encodeTask.OutputAssets.AddNew("Video with Dolby", AssetCreationOptions.None);
Следующим шагом мы создаем для задания конвертирования новый экземпляр задачи кодирования, указывая процессор и конфигурацию кодирования. В задачу кодирования добавляем входной и задаем выходной файлы.
job.StateChanged += Job_StateChanged;
job.Submit();
job.GetExecutionProgressTask(CancellationToken.None).Wait();
Последним шагом мы добавляем обработчик задания для получения уведомлений о прогрессе обработки контента в облаке и отправляем задание на выполнение.
Это все. Как вы можете убедиться, работать с медиа-платформой Windows Azure Media Services очень просто. Напомню, что набор инструментов SDK для работы с платформой есть как для платформы .NET так и для Java [5].

Доступ к результатам задания кодирования контента может быть произведен как из кода, так и из портала управления. Все данные сохраняются в хранилище блобов Windows Azure Storage.
Еще одной новинкой в Windows Azure Media Services стала возможность кодировать контент в одной задачи сразу в несколько отдельных форматов аудио.
<Preset Version="5.0">
<Job />
<MediaFile
DeinterlaceMode="AutoPixelAdaptive"
ResizeQuality="Super"
NormalizeAudio="True"
AudioGainLevel="1"
VideoResizeMode="Stretch">
<OutputFormat>
<MP4OutputFormat
StreamCompatibility="Standard">
<AudioProfile Condition="SourceContainsAudio">
<DolbyDigitalPlusAudioProfile>
<!-- attributes not shown for brevity -->
</DolbyDigitalPlusAudioProfile>
</AudioProfile>
</MP4OutputFormat>
</OutputFormat>
</MediaFile>
</Preset>
Для этой цели в файле конфигурации добавлены новые разделы <presets> и <preset>, которые позволяют задать перечисление требуемых форматов.
Вы можете найти пример подобной конфигурации по указанной ссылке [6].
Кроме основных нововведений в новый движок WAME 3.0, были представлены и некоторые другие менее существенные функции. Среди них:
Стоит напомнить о том, что такое Windows Azure Media Services [2].
Windows Azure Media Services — это медиа-платформа с готовой инфраструктурой для решения задач потребления, хранения, защиты, обработки и конвертации, распространения контента на все устройства и платформы.
Media Services — это платформа, которая содержит все необходимое для построения своих собственных медиа-решений без каких-либо затрат на собственную инфраструктуру, ее настройку и сопровождение.
Media Services позволяет организовать как решения для доступа к видео по требованию (Video on Demand) так и решения с живыми трансляциями. Живые трансляции были опробованы в ряде крупнейших мероприятий, в том числе в ходе Олимпиады в Лондоне, когда трансляция для миллионов зрителей в десятках стран велась через платформу Windows Azure Media Services.
Подробности о платформе можно найти по указанной ссылке [2].
Не пропустите предыдущие анонсы обновлений платформы Windows Azure, которые выходят практически каждую неделю:
Ниже вы найдете ссылки на ресурсы, которые помогут вам в использовании облачной платформы Microsoft:
А если вы уже разрабатываете на Windows Azure или хотите найти разработчиков своего сервиса, посетите сервис appprofessionals.ru [24].
Мы будем рады ответить на ваши вопросы по адресу azurerus@microsoft.com [25]. И ждем вас в Сообществе Windows Azure на Facebook [26]. Здесь вы найдете экспертов (не забудьте задать им вопросы), фотографии и много-много новостей.
Видео-записи докладов Windows Azure Summit и видео-интервью [27], которые были проведены во время большой облачной конференции. Доклады конференции DevCon 2013 на тему Windows Azure вы можете найти тут [28].
Автор: XaocCPS
Источник [29]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/audio/38457
Ссылки в тексте:
[1] Dolby Digital Plus: http://en.wikipedia.org/wiki/Dolby_Digital_Plus
[2] Windows Azure Media Services: https://www.windowsazure.com/ru-ru/services/media-services/
[3] стерео-: http://msdn.microsoft.com/en-us/library/dn296428.aspx
[4] мультиканальных: http://msdn.microsoft.com/en-us/library/dn296427.aspx
[5] .NET так и для Java: http://www.windowsazure.com/ru-ru/downloads/?sdk=media
[6] указанной ссылке: http://msdn.microsoft.com/en-us/library/dn296425.aspx
[7] дополнительного файла: http://msdn.microsoft.com/en-us/library/dn303381.aspx
[8] формат: http://msdn.microsoft.com/en-us/library/dn303341.aspx
[9] Анонс: http://blogs.msdn.com/b/vyunev/archive/2013/07/09/windows-azure-alerts.aspx
[10] Анонс: http://blogs.msdn.com/b/vyunev/archive/2013/07/08/windows-azure-autoscale.aspx
[11] Анонсы: http://blogs.msdn.com/b/vyunev/archive/2013/07/01/windows-azure-web-sites.aspx
[12] Доступность: http://blogs.msdn.com/b/vyunev/archive/2013/06/30/windows-server-2012-r2-sql-server-2014-visual-studio-2013-ultimate-windows-azure.aspx
[13] Облачный бэкенд как сервис: http://blogs.msdn.com/b/vyunev/archive/2013/06/30/windows-ios-windows-phone-android-html5.aspx
[14] в блоге: http://blogs.msdn.com/b/vyunev/
[15] Бесплатный 30-дневный триал: http://bit.ly/15aTMQF
[16] Бесплатный доступ: http://msdn.microsoft.com/ru-ru/jj950243
[17] стартапов: http://bit.ly/1cHYypt
[18] партнеров: http://bit.ly/13hmgdI
[19] подписчиков MSDN: http://bit.ly/12z1cMA
[20] Центр разработки: http://www.azurehub.ru/
[21] Windows Azure TV на русском языке: http://www.youtube.com/user/AzureRusTV
[22] Twitter.com/windowsazure_ru: http://www.twitter.com/windowsazure_ru
[23] http://wazurr.ru: http://wazurr.ru/
[24] appprofessionals.ru: http://www.appprofessionals.ru/
[25] azurerus@microsoft.com: mailto:azurerus@microsoft.com
[26] Сообществе Windows Azure на Facebook: http://www.facebook.com/groups/azurerus/
[27] Видео-записи докладов Windows Azure Summit и видео-интервью: http://www.techdays.ru/series/windows_azure_summit_2013
[28] можете найти тут: http://www.techdays.ru/videos/Windows%20Azure
[29] Источник: http://habrahabr.ru/post/186206/
Нажмите здесь для печати.