Небольшой ликбез по кодированию видео.
Так как видео и аудио -- разные сущности, то применяются к ним разные алгоритмы и способы хранения существенно отличаются. Но для удобства, разумеется, неплохо было бы поместить все это в один файл. Для этого используют контейнерную технологию, используя один контейнер для нескольких форматов: в файле последовательно либо с чередованием записываются небольшие кусочки видео и аудио. Прогигрыватель, считывает ихпоследовательно, но воспроизводит одновременно, поэтому создается иллюзия параллельных потоков видео и звука.
Однако, из сказанного, думаю, понятно, что говорить, что фильм закодирован wmv некорректно. Тем более, что wmv -- алгоритм кодирования только видео.
Самые распространенные контейнерные форматы, пригодные для одновременного хранения видео и аудио:
- avi -- появился довольно давно и потому морально устарел,
- Matroska (читается -- "матрешка") -- файли хранятся с расширением mkv. Молодой и довольно перспективный формат. Позволяет хранить в файле также субтитры, да и вообще все, что угодно. Насколько мне известно, он использует для кодирования тегов Юникод, что дает ему большие преимущества перед OGM.
- OGM -- формат от Xiph.
- mp4 -- формат, основанный на другом распространенном формате mov, разработанным фирмой Apple для своего проигрывателя QuickTime. Самый перспективный. Позволяет хранить в одном файле все фичи DVD -- от субтитров и нескольких звуковых дорожек до заголовков (chapters). Стандартизарован в рамках MPEG-4.
Следует отличать формат от кодека (алгоритма сжатия). Формат -- это способ хранения данных, кодек -- способ их кодирования. Например, у файла с расширением OGG формат контейнера -- OGM, а кодек -- Vorbis.
Теперь о кодеках.
И звук и видео, конечно, можно хранить несжатыми. Но такой способ требует ОЧЕНЬ много места. Можно использовать так называемые lossless алгоритмы, которые в принципе не могут повлиять на изборажение. (Примером lossless может служить архиватор zip -- что сжали, то и распаковали. ) Но это дасто ОЧЕНЬ НЕБОЛЬШОЙ выигрыш.
Для простого пользователя имеет смысл хранить несжатым разве что звук -- там поток поуже.
Поэтому прибегают к алгоритмам с потерями, в которых используются различные "несовершенства" в восприятии человеком звука или видео. Например, глаз болше чувствителен к яркости, чем к цвету, поэтому чветовую составляющую изображения можно кодировать с гораздо худшим качеством без видимых ухудшений картинки. Кроме того, кодируют не каждый кадр, а только ключевые кадры, а между ними передают лишь список происходящих с картинкой изменений. Есть еще сотни других ухищрений.
Аналогично со звуком.
Внимание! Если переконвертировать звук (видео) из lossy формата в lossless, от так и останется звуком с потерянным качеством. А если "перегонять" из lossy в lossy, то качество уменьшиться еще больше.
Люди! Не увлекайтесь конвертированием!!!
Теперь практическая сторона вопроса. Самыми распростраенными кодеками были и являются кодеки, указанные в стандартах, созданных Группой экспертов по кино и фотографии: MPEG-1, MPEG-2 и MPEG-4.
Первые два имели фиксированные алгоритм сжатия видео и звука. (Кстати, файлы со звуком, сжатым по MPEG-1 и MPEG-2 имеют расширение mp3.)
В стандарте MPEG-4 оговорены лишь принципы построения кодеков. Причем в стандарте есть два уровня: упрощенный и продвинутый.
Примеры кодеков упрощенного уровня:
- DivX
- XviD
- MS MPEG4
- Theora
и т.д.
В последнее время в связи с появлением достаточно мощных компьютеров стал развиваться продвинутый уровень -- AVC (он же h264).
Примеры кодеков:
- Nero h264
- x264
Хороши они тем, что сжимают видео гораздо сильнее при том же качестве. Разумеется, нагрузка на процессор при этом выше. То есть для просмотра фильма с dvd'шным размером кадра и сжатого при помощи видео-кодека x264 400 МГц и 64 МБ ОЗУ уже не хватит.
В дополнение к AVC (Advanced Video Codec) существует алгоритм AAC (в разных инкарнациях, порой не очень совместимых), который при битрейте 96 кб/с имеет качество, сравнимое с mp3'шными 128-196 кб/с.
Итак, оптимальный (имхо) вариант:
контейнер mp4,
P.S. Разумеется, все рекомендации нельзя рассматривать как универсальные.
P.P.S. О кодировании мультимедиа можно рассуждать часами. Люди об этом пишут книги (рекомендую, например, Richardson "H.264 and MPEG-4 video compression"). Так что сразу говорю -- это все ОЧЕНЬ упрощенное (и кое-где неточное) объяснение.
P.P.P.S. В файлах с расширением WMV звук обычно сжат кодеком WMA. Неплохой. Лучше mp3 на малых бирейтах. А свисты, скорее всего, от того, что ты поставил низкий битрейт и намудрил с частотой дискретизации.