Windows Media Audio ( WMA ) — это серия аудиокодеков и соответствующих им форматов аудиокодирования , разработанных корпорацией Microsoft . Это запатентованная технология, которая является частью платформы Windows Media . WMA состоит из четырех отдельных кодеков. Оригинальный кодек WMA, известный просто как WMA , был задуман как конкурент популярным кодекам MP3 и RealAudio . [2] [3] WMA Pro , более новый и продвинутый кодек, поддерживает многоканальный звук и звук высокого разрешения . [4] Кодек без потерь , WMA Lossless , сжимает аудиоданные без потери точности звука (обычный формат WMA сжимает с потерями ). [4] WMA Voice , ориентированный на голосовой контент, применяет сжатие с использованием диапазона низких скоростей передачи данных . [4] Microsoft также разработала цифровой контейнерный формат под названием Advanced Systems Format для хранения звука, закодированного с помощью WMA.
Первый кодек WMA был основан на более ранней работе Энрике Малвара и его команды, которая была передана команде Windows Media в Microsoft. [5] Малвар был старшим исследователем и менеджером группы обработки сигналов в Microsoft Research , [6] чья команда работала над проектом MSAudio . [7] Первый завершенный кодек изначально назывался MSAudio 4.0 . [8] [9] Позднее он был официально выпущен как Windows Media Audio , [1] как часть Windows Media Technologies 4.0. Microsoft утверждала, что WMA может создавать файлы, которые были вдвое меньше файлов MP3 эквивалентного качества; [10] Microsoft также утверждала, что WMA обеспечивает звук «почти CD-качества» на скорости 64 кбит/с. [10] Однако первое утверждение было отвергнуто некоторыми аудиофилами [11] , и оба утверждения были опровергнуты с помощью общедоступных тестов прослушивания кодеков . RealNetworks также оспорила заявления Microsoft относительно превосходного качества звука WMA по сравнению с RealAudio. [3]
Стали доступны новые версии WMA: Windows Media Audio 2 в 1999 году, [12] Windows Media Audio 7 в 2000 году, [13] Windows Media Audio 8 в 2001 году, [14] и Windows Media Audio 9 в 2003 году. [4] Microsoft впервые объявила о своих планах лицензировать технологию WMA третьим лицам в 1999 году. [15] До Windows XP файлы WMA в основном передавались потоком с использованием Windows Media Source Filter ( кодек DirectShow ), позже он был удален в Windows Vista с добавлением Media Foundation. [16] Хотя более ранние версии Windows Media Player воспроизводили файлы WMA, поддержка создания файлов WMA не была добавлена до седьмой версии. [17] В 2003 году Microsoft выпустила новые аудиокодеки, которые были несовместимы с исходным кодеком WMA. Этими кодеками были Windows Media Audio 9 Professional , [4] Windows Media Audio 9 Lossless , [4] и Windows Media Audio 9 Voice . [4]
Все версии WMA, выпущенные после версии 9.0, а именно 9.1, 9.2 и 10, были обратно совместимы с оригинальным декодером v9 и, следовательно, не считаются отдельными кодеками. Единственным исключением является кодек WMA 10 Professional, режим Low Bit Rate (LBR) которого обратно совместим только со старыми декодерами WMA Professional при половинной частоте дискретизации (аналогично тому, как HE-AAC обратно совместим с AAC-LC). Для полного декодирования битовых потоков WMA 10 Professional LBR требуется декодер WMA версии 10 или более поздней.
Файл WMA в большинстве случаев содержится в Advanced Systems Format (ASF), фирменном контейнерном формате Microsoft для цифрового аудио или цифрового видео . [18] Формат контейнера ASF определяет, как должны быть закодированы метаданные о файле, аналогично тегам ID3 , используемым файлами MP3. Метаданные могут включать название песни, номер трека, имя исполнителя, а также значения нормализации звука . Этот контейнер может опционально поддерживать управление цифровыми правами (DRM) с использованием комбинации обмена ключами криптографии эллиптических кривых , блочного шифра DES , пользовательского блочного шифра, потокового шифра RC4 и функции хеширования SHA-1 . См. Windows Media DRM для получения дополнительной информации.
С 2008 года Microsoft также использует WMA Professional в своем защищенном формате файлов PIFF (Protected Interoperable File Format), основанном на базовом формате файлов мультимедиа ISO и наиболее часто используемом для Smooth Streaming, формы адаптивной потоковой передачи битрейта по HTTP. Связанные отраслевые стандарты, такие как DECE UltraViolet и MPEG-DASH, не стандартизировали WMA как поддерживаемый аудиокодек, сделав выбор в пользу более распространенных в отрасли аудиокодеков MPEG и Dolby.
Каждый файл WMA содержит одну звуковую дорожку в одном из четырех подформатов: WMA, WMA Pro, WMA Lossless или WMA Voice. Эти форматы реализованы по-разному, поэтому они технически различимы и взаимно несовместимы; то есть устройство или программное обеспечение, совместимое с одним подформатом, не поддерживает автоматически ни один из других кодеков. Каждый кодек подробно описан ниже.
Windows Media Audio (WMA) — наиболее распространённый кодек из четырёх кодеков WMA. Разговорное использование термина WMA , особенно в маркетинговых материалах и спецификациях устройств, обычно относится только к этому кодеку. Первая версия кодека, выпущенная в 1999 году, считается WMA 1. В том же году синтаксис битового потока , или алгоритм сжатия , был изменён незначительно и стал WMA 2. [12] С тех пор были выпущены более новые версии кодека, но процесс декодирования остался прежним, что обеспечивает совместимость между версиями кодека. [12] WMA — это аудиокодек с потерями, основанный на изучении психоакустики . Аудиосигналы, которые считаются невоспринимаемыми человеческим ухом, кодируются с пониженным разрешением в процессе сжатия.
WMA может кодировать аудиосигналы с частотой дискретизации до 48 кГц с двумя дискретными каналами ( стерео ). WMA 9 ввел методы кодирования с переменной скоростью передачи данных (VBR) и средней скоростью передачи данных (ABR) в кодер MS, хотя оба они технически поддерживались исходным форматом. [12] WMA 9.1 также добавил поддержку звука с малой задержкой, [19] что снижает задержку при кодировании и декодировании.
По сути, WMA — это кодер преобразования, основанный на модифицированном дискретном косинусном преобразовании (MDCT), несколько похожий на AAC , Cook и Vorbis . Битовый поток WMA состоит из суперкадров, каждый из которых содержит 1 или более кадров по 2048 сэмплов. Если резервуар битов не используется, кадр равен суперкадру. Каждый кадр содержит несколько блоков, которые представляют собой 128, 256, 512, 1024 или 2048 сэмплов, долгое время после преобразования в частотную область с помощью MDCT. В частотной области определяется маскирование для преобразованных сэмплов, а затем используется для повторного квантования сэмплов. Наконец, сэмплы с плавающей точкой разлагаются на коэффициентную и экспоненциальную части и независимо кодируются по методу Хаффмана . Стереоинформация обычно кодируется посередине/сбоку . При низких скоростях передачи данных для улучшения качества также можно использовать линейные спектральные пары (обычно менее 17 кбит/с) и форму шумового кодирования (обычно менее 33 кбит/с).
Как и AAC и Ogg Vorbis, WMA был призван устранить предполагаемые недостатки стандарта MP3. Учитывая их общие цели проектирования, три формата в конечном итоге сделали схожие выборы дизайна. Все три являются чистыми кодеками преобразования. Более того, реализация MDCT, используемая в WMA, по сути, является надмножеством тех, которые используются в Ogg и AAC, так что WMA iMDCT и процедуры оконной обработки могут использоваться для декодирования AAC и Ogg Vorbis практически без изменений. Однако квантование и стереокодирование обрабатываются по-разному в каждом кодеке. Основной отличительной чертой формата WMA Standard является его уникальное использование 5 различных размеров блоков по сравнению с MP3, AAC и Ogg Vorbis, каждый из которых ограничивает файлы всего двумя размерами. WMA Pro расширяет это, добавляя 6-й размер блока, используемый при частоте дискретизации 88,2/96 кГц.
Сертифицированные PlaysForSure устройства, а также большое количество несертифицированных устройств, начиная от портативных ручных музыкальных плееров и заканчивая DVD-плеерами , поддерживают воспроизведение файлов WMA. Большинство сертифицированных PlaysForSure интернет-магазинов распространяют контент, используя только этот кодек. В 2005 году Nokia объявила о своих планах по поддержке воспроизведения WMA в будущих телефонах Nokia. [20] В том же году было выпущено обновление для PlayStation Portable (версия 2.60), которое впервые позволило воспроизводить файлы WMA на устройстве. [21]
Windows Media Audio Professional (WMA Pro) — это улучшенный кодек с потерями, тесно связанный со стандартами WMA. Он сохраняет большинство общих функций кодирования, но также обладает улучшенными стратегиями энтропийного кодирования и квантования, а также более эффективным стереокодированием. Примечательно, что многие из функций стандарта WMA с низким битрейтом были удалены, поскольку основной кодек разработан для эффективного кодирования при большинстве битрейтов. Его основными конкурентами являются AAC , HE-AAC , Vorbis , Dolby Digital и DTS. Он поддерживает 16-битную и 24-битную глубину дискретизации, частоту дискретизации до 96 кГц и до восьми дискретных каналов ( 7.1-канальный объемный звук ). [22] WMA Pro также поддерживает сжатие динамического диапазона , что уменьшает разницу громкости между самыми громкими и самыми тихими звуками в звуковой дорожке. По словам Амира Маджидимехра из Microsoft, WMA Pro теоретически может выйти за рамки объемного звука 7.1 и поддерживать «неограниченное количество каналов»; Однако Microsoft решила ограничить свои текущие возможности восемью (7.1 дискретных каналов). [23]
Синтаксис потока битов кодека был заморожен в первой версии, WMA 9 Pro. [24] Более поздние версии WMA Pro представили кодирование с низкой скоростью передачи данных, аудио с низкой задержкой, [25] режим частотной интерполяции, [26] а также расширенный диапазон параметров частоты дискретизации и глубины кодирования. Файл WMA 10 Pro, сжатый в режиме частотной интерполяции, содержит дорожку WMA 9 Pro, закодированную с половиной исходной частоты дискретизации, которая затем восстанавливается с использованием нового алгоритма сжатия. [27] В этой ситуации проигрыватели WMA 9 Pro, которые не были обновлены до кодека WMA 10 Pro, могут декодировать только поток WMA 9 Pro более низкого качества. Начиная с WMA 10 Pro, восьмиканальное кодирование начинается со 128 кбит/с, и дорожки могут быть закодированы с собственным разрешением аудио CD (44,1 кГц, 16 бит), ранее являвшимся областью стандарта WMA.
Несмотря на растущее число поддерживаемых устройств и его превосходство над WMA, WMA Pro по-прежнему имеет слабую аппаратную и программную поддержку. Некоторые заметные исключения из этого правила включают Microsoft Zune (ограничено стерео), [28] Xbox 360 , [29] устройства на базе Windows Mobile с Windows Media Player 10 Mobile, [30] более новые устройства Toshiba Gigabeat и Motorola , [31] [32] и устройства, работающие под управлением последних версий альтернативной прошивки Rockbox . [33] Кроме того, WMA Pro является требованием для программы сертификации WMV HD . [34] Что касается программного обеспечения, Verizon использует WMA 10 Pro для своего музыкального сервиса V CAST, [35] а Windows Media Player 11 продвигает кодек как альтернативу WMA для копирования дорожек аудио CD. [36] WMA Pro поддерживается в Silverlight, начиная с версии 2 (хотя только в стереорежиме). При отсутствии соответствующего аудиооборудования WMA Pro может автоматически преобразовывать многоканальный звук в стерео или моно , а также 24-битное разрешение в 16-битное во время воспроизведения.
Ярким примером использования WMA Pro вместо WMA Standard является сайт NBC Olympics, который использует WMA 10 Pro в режиме низкого битрейта 48 кбит/с. [ необходима ссылка ]
Windows Media Audio 9 Lossless — это безпотерьное воплощение Windows Media Audio, аудиокодека от Microsoft , выпущенного в начале 2003 года. Он сжимает аудио CD до диапазона от 206 до 411 МБ с битрейтом от 470 до 940 кбит/с. Результатом является побитовая копия исходного аудиофайла; другими словами, качество звука на CD будет таким же, как и у файла при воспроизведении. WMA Lossless использует то же расширение файла .WMA, что и другие форматы Windows Media Audio. Он поддерживает 6 дискретных каналов и до 24 бит/96 кГц безпотерьного звука. Формат никогда не был публично документирован, хотя декодер с открытым исходным кодом был реверс-инжинирингом для платформ, отличных от Microsoft, в проектах libav и ffmpeg .
Windows Media Audio Lossless (WMA Lossless) — это аудиокодек без потерь, который конкурирует с ATRAC Advanced Lossless, Dolby TrueHD , DTS-HD Master Audio , Shorten , Monkey's Audio , FLAC , Apple Lossless и WavPack (с конца 2011 года [37] [38] [39] последние три имеют преимущество в том, что являются программным обеспечением с открытым исходным кодом и доступны практически для любой операционной системы .) Разработанный для архивных целей, [40] он сжимает аудиосигналы без потери качества от оригинала с помощью VBR. После распаковки аудиосигнал является точной копией оригинала. Первая версия кодека, WMA 9 Lossless, и ее версии поддерживают до 96 кГц, 24-битный звук для до 6 дискретных каналов ( 5.1-канальный объемный звук ) с управлением компрессией динамического диапазона. Типичный коэффициент сжатия для музыки варьируется от 1,7:1 до 3:1. [40] [41] [42]
Аппаратная поддержка кодека доступна на Cowon A3, [43] Cowon S9, Bang & Olufsen Serenata [44] Sony Walkman серий NWZ-A и NWZ-S, Zune 4, 8 , 80 30 , Zune 120 (с версией прошивки 2.2 или более поздней) и Zune HD , Xbox 360 , [29] устройствах на базе Windows Mobile с Windows Media Player 10 Mobile, [30] Windows Phone (версии 8 и выше), моделях Toshiba Gigabeat S и V, Toshiba T-400, Meizu M3 и музыкальных проигрывателях Insignia NS-DV, Pilot и Sport от Best Buy . Logitech Squeezebox Touch теперь поддерживает формат изначально, хотя ранее поддерживал его только через транскодирование. Как и WMA Standard, WMA Lossless используется несколькими интернет-магазинами для распространения музыки в Интернете. [45] [46] Подобно WMA Pro, декодер WMA Lossless может выполнять понижающее микширование, когда отсутствует подходящее аудиооборудование. [ необходима ссылка ] По состоянию на 2012 год проекты ffmpeg и libav имеют декодеры WMA Lossless с открытым исходным кодом, основанные на обратном проектировании официального декодера. По состоянию на 20 июня 2012 года ffmpeg может успешно декодировать только 16-битные файлы WMA.
Windows Media Audio Voice (WMA Voice) — это аудиокодек с потерями, который конкурирует со Speex (используется в собственном онлайн-сервисе Xbox Live от Microsoft [47] ), ACELP и другими кодеками. Разработанный для приложений с низкой пропускной способностью, воспроизведения голоса, [48] он использует низкочастотную и высокочастотную фильтрацию звука за пределами диапазона частот человеческой речи для достижения более высокой эффективности сжатия, чем WMA. Он может автоматически определять разделы звуковой дорожки, содержащие как голос, так и музыку, и использовать вместо этого стандартный алгоритм сжатия WMA. [24] WMA Voice поддерживает только до 22,05 кГц для одного канала (моно). [48] Кодирование ограничено постоянной скоростью передачи данных (CBR) и до 20 кбит/с. Первая и единственная версия кодека — WMA 9 Voice.
Устройства на базе Windows Mobile с Windows Media Player 10 Mobile имеют встроенную поддержку воспроизведения WMA 9 Voice. [30] Кроме того, BBC World Service использует WMA Voice для своего сервиса потокового вещания интернет-радио . [49]
Microsoft утверждает, что аудио, закодированное с помощью WMA, звучит лучше, чем MP3 при той же скорости передачи данных; Microsoft также утверждает, что аудио, закодированное с помощью WMA при более низкой скорости передачи данных, звучит лучше, чем MP3 при более высокой скорости передачи данных. [50] Двойные слепые тесты прослушивания с другими аудиокодеками с потерями показали разные результаты: от неспособности подтвердить заявления Microsoft о его превосходном качестве до превосходства над другими кодеками. Один независимый тест, проведенный в мае 2004 года при 128 кбит/с, показал, что WMA был примерно эквивалентен LAME MP3; уступал AAC и Vorbis; и превосходил ATRAC3 (программная версия). [51]
Некоторые исследования пришли к выводу:
Заявления Microsoft о качестве звука WMA часто вызывали жалобы. «Некоторые аудиофилы оспаривают заявления Microsoft относительно качества WMA», согласно опубликованной статье EDN. [11] В другой статье MP3 Developments было написано, что заявление Microsoft о качестве звука CD при 64 кбит/с с WMA было «очень далеко от истины». [52] На ранних стадиях разработки WMA представитель RealNetworks утверждал, что WMA был «явной и тщетной попыткой Microsoft догнать RealAudio 8». [53]
Microsoft иногда заявляла, что качество звука WMA на 64 кбит/с равно или превосходит качество звука MP3 на 128 кбит/с (и WMA, и MP3 считаются почти прозрачными на 192 кбит/с большинством слушателей). В исследовании 1999 года, финансируемом Microsoft, Национальная лаборатория тестирования программного обеспечения (NSTL) обнаружила, что слушатели предпочитают WMA на 64 кбит/с MP3 на 128 кбит/с (как закодировано MusicMatch Jukebox ). [54]
Кодеры MP3 и WMA активно развивались и совершенствовались на протяжении многих лет, поэтому их относительное качество может со временем меняться.
Помимо Windows Media Player, большинство форматов сжатия WMA можно воспроизводить с помощью ALLPlayer , VLC media player , [55] Media Player Classic , [56] MPlayer , RealPlayer , Winamp , Zune Software (с некоторыми ограничениями — поддержка плагина DSP и вывод DirectSound отключены при использовании плагина WMA по умолчанию), [ нужна ссылка ] и многих других программных медиаплееров. Программное обеспечение для управления медиафайлами Microsoft Zune поддерживает большинство кодеков WMA, но использует вариацию Windows Media DRM , которую использует PlaysForSure.
Проект FFmpeg провел обратную разработку и повторно реализовал кодеки WMA, чтобы разрешить их использование в операционных системах, совместимых с POSIX, таких как Linux . Проект Rockbox дополнительно расширил этот кодек, сделав его пригодным для встроенных ядер, что позволило воспроизводить его на портативных MP3-плеерах и сотовых телефонах с открытым исходным кодом. RealNetworks объявила о планах по поддержке воспроизведения файлов WMA без DRM в RealPlayer для Linux. [57] На платформе Macintosh Microsoft выпустила версию Windows Media Player для Mac OS X на PowerPC в 2003 году, [58] но дальнейшая разработка программного обеспечения прекратилась. В настоящее время Microsoft поддерживает сторонний Flip4Mac WMA, компонент QuickTime , который позволяет пользователям Macintosh воспроизводить файлы WMA в любом проигрывателе, использующем фреймворк QuickTime. [59] Однако Flip4Mac в настоящее время не поддерживает кодек Windows Media Audio Voice. [60]
Основная платформа Android сама по себе не поддерживает WMA, но существует стороннее программное обеспечение WMA для устройств Android. [61]
Формат WMA воспроизводится практически на всех устройствах Windows Mobile и более поздних версиях Windows Phone.
Существует множество фирменных и открытых программных пакетов, которые могут экспортировать аудио в формат WMA, включая, среди прочего, Windows Media Player, Windows Movie Maker , Microsoft Expression Encoder , Sony Sound Forge , GOM Player , RealPlayer , [62] Adobe Premiere Pro , [63] Adobe Audition , [64] Adobe Soundbooth и VLC media player . [65] Microsoft Office OneNote поддерживает кодирование во всех кодеках WMA, [66] а Windows Media Encoder также поддерживает все доступные параметры битрейта и разрешения.
Кодеки WMA чаще всего используются с форматом контейнера ASF, который имеет дополнительную функцию DRM. Windows Media DRM, который может использоваться совместно с WMA, поддерживает ограниченные по времени музыкальные подписные сервисы, такие как предлагаемые неограниченными сервисами загрузки, включая MTV URGE , Napster , Rhapsody , Yahoo! Music Unlimited и Virgin Digital . Windows Media DRM, компонент PlaysForSure и Windows Media Connect , поддерживается многими современными портативными аудиоустройствами и клиентами потокового мультимедиа, такими как Roku , SoundBridge , Xbox 360 и Wii . Плееры, которые поддерживают формат WMA, но не Windows Media DRM, не могут воспроизводить файлы, защищенные DRM.
некоторые аудиофилы оспаривают заявления Microsoft относительно качества WMA