О форматах видео
Скрытый текст
В настоящий момент существует огромное количество форматов, предназначенных для хранения цифровой видеоинформации. Многие, наверное, уже наслышаны о них: это всем известные DivX, MPEG-4, XviD и многие другие. Наиболее популярными являются форматы: DivX, XviD, MPEG-4 (MPEG-4 ASP), MPEG-1, MPEG-2, H.264 (MPEG-4 AVC), MJPEG, WMV (Windows Media Video), Bink Video, RealVideo. Каждый обычно выбирает тот или иной формат для каких-то определённых целей. Выбор того или иного формата при конвертировании обычно напрямую зависит о того, где будет воспроизводиться получаемый видеофайл: на компьютере, на бытовом DVD-плеере и т.д. Поэтому, перед конвертированием видео файлов, желательно заранее узнать, какие видеоформаты поддерживает устройство, на котором впоследствии будет воспроизводиться конвертируемый файл.
Обычно существует некий алгоритм кодирования видео (например, всем известный MPEG-4 ASP), а на его основе разные разработчики делают свои кодеры (или кодировщики, т.е. программы и библиотеки, которые, на основе того или иного алгоритма, выполняют кодирование). Для MPEG-4 ASP таких кодеров весьма много: это и всем известный DivX, XviD, Microsoft MPEG-4 и т.д.
Отдельно рассматривать каждый формат я не буду, ибо информацию о каждом формате можно найти в Википедии.
Обычно существует некий алгоритм кодирования видео (например, всем известный MPEG-4 ASP), а на его основе разные разработчики делают свои кодеры (или кодировщики, т.е. программы и библиотеки, которые, на основе того или иного алгоритма, выполняют кодирование). Для MPEG-4 ASP таких кодеров весьма много: это и всем известный DivX, XviD, Microsoft MPEG-4 и т.д.
Отдельно рассматривать каждый формат я не буду, ибо информацию о каждом формате можно найти в Википедии.
О звуковых форматах и дорожках
Скрытый текст
В любом видеофайле помимо видеодорожки, как правило, присутствует ещё одна или несколько звуковых дорожек. При воспроизведении видео файла одновременно (синхронно) считываются видеодорожка и одна из звуковых дорожек, таким образом мы видим картинку и слышим соответствующие ей звуки. Как я уже сказал, звуковых дорожек в одном видеофайле может быть несколько. Это используется в основном в тех случаях, когда хотят записать в одном видеофайле сразу несколько видов озвучки, чтобы потом при воспроизведении можно было выбрать нужную.
Звуковые дорожки в видеофайлах также имеют свой формат. Форматов этих тоже существует огромное количество. Наиболее популярными являются: PCM, MP3 (MPEG-1 Layer 3), AC3 (Dolby Digital), FLAC, RealAudio, DTS, WMA, Vorbis и др. Все они разделяются на так называемые форматы без потери качества (lossless) (например, это форматы PCM и FLAC) и форматы с потерями (MP3, AC3, DTS и др.).
При кодировании звука в loseless-форматы не происходит сжатия и удаления какой-либо информации из файла. Т.е. перекодированный звук остаётся с таким же качеством, как и исходный.
При кодировании с использованием звуковых форматов с потерями используется сжатие, из звука удаляется неслышимая человеческому уху информация, что позволяет значительно уменить размер получаемого в итоге звукового файла, но и снизить (пускай и практически незаметно) качество звука. Уровень такого сжатия можно регулировать, таким образом можно достигнуть минимальных потерь качества и при этом уменьшить размер звукового файла. Поэтому обычно используют форматы с потерями качества, часто используют формат MP3 из-за его совместимости со многими бытовыми плеерами (однако тот же MP3 не поддерживает звук в формате 5.1, поэтому на его смену пришли более современные форматы - AC3 и DTS).
В итоге получаемый видеофайл можеть иметь, например, такую структуру:
Звуковые дорожки в видеофайлах также имеют свой формат. Форматов этих тоже существует огромное количество. Наиболее популярными являются: PCM, MP3 (MPEG-1 Layer 3), AC3 (Dolby Digital), FLAC, RealAudio, DTS, WMA, Vorbis и др. Все они разделяются на так называемые форматы без потери качества (lossless) (например, это форматы PCM и FLAC) и форматы с потерями (MP3, AC3, DTS и др.).
При кодировании звука в loseless-форматы не происходит сжатия и удаления какой-либо информации из файла. Т.е. перекодированный звук остаётся с таким же качеством, как и исходный.
При кодировании с использованием звуковых форматов с потерями используется сжатие, из звука удаляется неслышимая человеческому уху информация, что позволяет значительно уменить размер получаемого в итоге звукового файла, но и снизить (пускай и практически незаметно) качество звука. Уровень такого сжатия можно регулировать, таким образом можно достигнуть минимальных потерь качества и при этом уменьшить размер звукового файла. Поэтому обычно используют форматы с потерями качества, часто используют формат MP3 из-за его совместимости со многими бытовыми плеерами (однако тот же MP3 не поддерживает звук в формате 5.1, поэтому на его смену пришли более современные форматы - AC3 и DTS).
В итоге получаемый видеофайл можеть иметь, например, такую структуру:
Цитата
1. Видеодорожка (формат XviD)
2. Аудиодорожка-1 (формат MP3)
3. Аудиодорожка-2 (формат AC3)
4. Аудиодорожка-3 (формат MP3)
2. Аудиодорожка-1 (формат MP3)
3. Аудиодорожка-2 (формат AC3)
4. Аудиодорожка-3 (формат MP3)
О контейнерах
Скрытый текст
Контейнеров существует тоже достаточно немалое количество. Наиболее популярными являются: AVI, MPG, MKV, MPEG, 3GP, FLV, MOV, MP4, M4V, WMV и др.
Очень часто неопытные пользователи называют тот же контейнер AVI форматом сжатия или спрашивают, например: "А как сжать вот этот фильм в AVI?". На самом деле, к сжатию контейнеры не имеют никакого отношения. Контейнер - с точки зрения пользователя, лишь расширение имени видеофайла (иначе говоря, то что пишется в имени файла в конце после точки). С технической точки зрения, контейнер определяет способ хранения звуковых и видеопотоков (дорожек) в видеофайле. По сути контейнер - это архив, содержащий набор видео и звуковых дорожек, дорожек с субтитрами, а также другую служебную информацию. Любой видеофайл содержит одну видеодорожку и одну или более аудиодорожек. Контейнер определяет структуру записи этих дорожек в видеофайле. Расширение имени (AVI, MKV и т.д.) при этом указывает на тип контейнера. При этом у каждого контейнера есть свои ограничения в максимальном количестве потоков в одном видео файле, в форматах потоков (например, контейнер AVI не позволяет хранить звуковые дорожки в формате OGG Vorbis) и т.д.
Контейнер AVI является наиболее популярным. Хотя в последнее время его всё больше вытесняет контейнер MKV, который имеет менее жёсткие ограничения на количество потоков (дорожек) и несколько дополнительных фитч (таких как, например, возможность давать собственные названия аудиодорожкам и т.д.). На сотовых телефонах чаще всего используется контейнер 3GP, который тоже хранит потоки по-своему и имеет свои ограничения.
Очень часто неопытные пользователи называют тот же контейнер AVI форматом сжатия или спрашивают, например: "А как сжать вот этот фильм в AVI?". На самом деле, к сжатию контейнеры не имеют никакого отношения. Контейнер - с точки зрения пользователя, лишь расширение имени видеофайла (иначе говоря, то что пишется в имени файла в конце после точки). С технической точки зрения, контейнер определяет способ хранения звуковых и видеопотоков (дорожек) в видеофайле. По сути контейнер - это архив, содержащий набор видео и звуковых дорожек, дорожек с субтитрами, а также другую служебную информацию. Любой видеофайл содержит одну видеодорожку и одну или более аудиодорожек. Контейнер определяет структуру записи этих дорожек в видеофайле. Расширение имени (AVI, MKV и т.д.) при этом указывает на тип контейнера. При этом у каждого контейнера есть свои ограничения в максимальном количестве потоков в одном видео файле, в форматах потоков (например, контейнер AVI не позволяет хранить звуковые дорожки в формате OGG Vorbis) и т.д.
Контейнер AVI является наиболее популярным. Хотя в последнее время его всё больше вытесняет контейнер MKV, который имеет менее жёсткие ограничения на количество потоков (дорожек) и несколько дополнительных фитч (таких как, например, возможность давать собственные названия аудиодорожкам и т.д.). На сотовых телефонах чаще всего используется контейнер 3GP, который тоже хранит потоки по-своему и имеет свои ограничения.
О конвертировании видеофайлов
Скрытый текст
При конвертировании (сжатии) видео, помимо форматов видео и звуковой дорожек, обычно указываются определённые параметры сжатия. Сейчас попытаюсь рассказать об основных таких параметрах:
Для видео:
Разрешение (Resolution) - размер каждого отдельного кадра в точках (или как ещё говорят, в пикселах). Разрешение обычно указывается в формате <ширина>x<высота>, где вместо <ширина> указывается цифрами ширина кадра в точках, а вместо <высота> - соответственно, высота кадра (также иногда эти два параметра разделяют не крестиком, а звёздочкой. Ну это, собственно, не важно). Т.е. мы знаем, что цифровое изображение строится из точек. Чем больше количество таких точек, тем больше разрешение и, соответственно, чётче и детальнее получается изображение. При конвертировании видео различают также обычный тип разрешения и HD-разрешение. Если ширина кадра меньше или равна 720 точкам, а высота кадра меньше или равна 576 точкам - то это обычное разрешение. Если же хотя бы один из этих параметров выше - это уже HD-разрешение. HD-разрешение (HD - High Definition - высокая чёткость) даёт бОльшую чёткость и детальность изображения, однако многие старые бытовые плееры не способны воспроизвести видео с таким разрешением. Также стоит отметить, что не стОит при конвертировании указывать бОльшее разрешение, чем было у исходного видео: качество изображения от этого не улучшится
Соотношение сторон изображения (Ratio) - это даже не параметр, а характеристика разрешения. Ширина и высота кадра обычно имеют определённое соотношение. Например, разрешение 640х480 точек - это соотношение 4:3 (т.е. ширина кадра относится к высоте, как 4 к 3). Существуют несколько стандартных соотношений: 4:3, 5:4, 16:9, 16:10 и др. При конвертировании видео очень часто многие стараются уменьшить разрешение кадра. При этом, когда мы подбираем новое разрешение, необходимо учитывать соотношение сторон: к примеру, если в исходном видео было соотношение сторон 16:9, то и в получаемом после конвертирования видео должно быть такое же соотношение, иначе в итоге мы получим искажения (например, лица людей в кадре будут растянуты по горизонтали или вертикали).
При конвертировании многие видеоконвертеры предлагают ещё дополнительно указать некое соотношение сторон. При этом даже для разрешения 640х480 точек можно задать к примеру соотношение 16:9. Как заметил пользователь Jmd, существуют два типа соотношений сторон: Pixel Aspect Ratio и Storage Aspect Ratio. Дело в том, что пиксел в кадре может быть не только квадратным, но и прямоугольным. Storage Aspect Ratio при этом является соотношением сторон кадра (т.е. то, о чём мы говорили выше), а Pixel Aspect Ration в данном случае - соотношение сторон одного пиксела. В конверторе когда мы указываем дополнительно соотношение - это соотношение сторон, которое будет использоваться проигрывателем при воспроизведении файла независимо от его разрешения. Таким образом, существуют, например, видеофайлы с разрешением скажем 640х480 точек (что по логике соответствует соотношению 4:3), но при воспроизведении они имеют соотношение сторон 16:9, пиксел при этом становится прямоугольным. Как настраивать этот параметр - зависит от исходника. Если у исходного видеофайла были квадратные пикселы, то необходимо выбрать соотношение, равное соотношению SAR. А вообще, многие конвертеры при этом предлагают ещё задать нужное соотношение автоматически, поэтому лучше не париться и поставить этот параметр автоматом.
Частота кадров с секунду (FPS - Frame per Second, Frame rate) - параметр указывающий, количество кадров, которое будет сменяться за одну секунду. Т.е. к примеру, при выборе частоты кадров, равной 25 кадрам в секунду, в течение одной секунды будут последовательно показаны 25 кадров видео. Чем больше частота кадров, тем более плавно "движется" изображение. Считается, что минимальная частота кадров, которая хорошо воспринимается человеческим глазом, равна 24 кадрам в секунду (при ещё меньшем количестве кадров можно заметить, что изображение "движется" неплавно, с некоторыми рывками). В России по стандарту обычно положены 25 кадров в секунду, в США, Японии и некоторых других странах - 30. При конвертировании видео рекомендуется оставить частоту кадров как у исходного видео. Можно сделать её чуть меньше, но ни в коем случае не больше, иначе в полученное после конвертирования видео будет периодически слегка притормаживать (за счёт того, что всё время какие-то из кадров будут показаны несколько раз друг за другом). Оптимальная частота кадров - 25. Если в исходном видео она меньше 25, то лучше оставьте её без изменений.
Скорость потока результирующих данных (он же битрейт или Bitrate) - основной параметр, определяющий качество и размер получаемого после конвертирования видеофайла. Измеряется в килобитах в секунду. Он показывает, какой объём информации будет обрабатываться за одну секунду. Например, при установке битрейта равного 1400 кбит/сек, одна секунда видео будет занимать приблизительно 1400/8 = 175 Килобайт дискового пространства. Соответсвенно, чем больше битрейт, тем бОльшее количество места будет "выделяться" под одну секунду видео, а значит тем лучше будет качество видео и, соответственно, больше размер получаемого видеофайла.
Битрейт подбирать нужно исходя из разрешения и частоты кадров видео. Если установить высокое разрешение кадра, высокую частоту кадров и при этом очень низкий битрейт, то программе-конвертеру придётся бОльше использовать сжатие, чтобы как-то уместить такое количество кадров такого размера в таком маленьком пространстве, при это качество изображения будет ухудшено. Поэтому о том, какой битрейт устанавливать, нужно узнавать по разрешению и частоте кадров. Если разрешение и частота кадров высокие, нужно соответственно устанавливать высокий битрейт. Например, при использовании формата сжатия XviD с использованием разрешения 640х480 точек и частотой кадров 25 кадров/сек относительно хорошее качество изображения можно получить, установив при кодировании битрейт в 1800 кбит/сек. Понятное дело, что при использовании HD-разрешения, нужно в разы увеличивать и битрейт. Если использовать формат h264 (MPEG-4 AVC), то для видео с разрешением 1920x1080 точек достаточно будет битрейта в 7-9 Мбит/сек.
И ещё один немаловажный момент при выборе битрейта. Не следует устанавливать слишком высокий битрейт (20 а то и выше Мбит/сек). Дело в том, что не все бытовые проигрыватели способны воспроизвести видео с такой скоростью потока. Лучше всего, конечно, предварительно закодировать несколько отрывков какого-нибудь фильма в HD-качестве с разными битрейтами и проверить на плеере, будет ли он воспроизводить (ну, и заодно чисто для себя на глаз подобрать, какой битрейт наиболее оптимальный в плане качество-размер).
О переменном битрейте видео
Такой битрейт, когда мы строго указываем некоторое постоянное значение битрейта, называется постоянным битрейтом (CBR, Constant Bitrate). Некоторые форматы видео (например, h264 (он же MPEG-4 AVC)) поддерживают т.н. переменный битрейт (VBR, Variable Bitrate), когда битрейт в каждой секунде видео может меняться (т.е. там где кадры более детальные - там битрейт делается как можно выше, где кадры менее детальные - там наоборот). Таким образом достигается наиболее оптимальное соотношение размер/качество. Однако некоторые бытовые проигрыватели не поддерживают переменный битрейт или имеют некоторые проблемы при воспроизведении видео с таким битрейтом. Существуют несколько вариантов кодирования с использованием переменного битрейта: двухпроходное и однопроходное.
Двухпроходное кодирование занимает в 2 раза больше времени, чем однопроходное кодирование или кодирование с постоянным битрейтом. Суть метода заключается в том, что во время первого прохода кодер анализирует видеодорожку и на основе полученного анализа при повторном проходе подбирает оптимальный битрейт для каждой секунды видео.
Однопроходное кодирование в свою очередь подразделяется на кодирование по фиксированному качеству и кодирование по фиксированному диапазону значений битрейта. В первом случае пользователю предоставляется указать некий коэффициент качества, на основании которого кодер уже сам будет подбирать нужный алгоритм выбора битрейта для каждой секунды. Во втором случае задаются верхний и нижний пределы значений битрейта и, исходя из этих пределов, кодер выбирает из заданного диапазона значений нужный по его "мнению" битрейт для той или иной секунды видео.
Есть ещё третий вариант однопроходного кодирования с переменным битрейтом - по размеру файла. Пользователь сам указывает желаемый размер файла после кодирования, а кодер уже старается подобрать такой битрейт для каждой секунды видео, чтобы уложиться в заданный лимит. Такой вариант полезен, когда нужно скажем сжать исходный видеофайл до размера скажем CD-диска. Недостаток - это, конечно же, неконтролируемое изменение качества. Такой вариант однопроходного кодирования присутствует, например, в программах Nero Vision Express и Nero DVD Recode при использовании формата Nero Digital MPEG-4 AVC.
Многие конвертеры при использовании постоянного битрейта позволяют так же заранее посчитать размер получаемого после кодирования видеофайла. Делается это при помощи различных т.н. калькуляторов битрейта.
Теперь параметры кодирования звука:
Количество каналов: 1 (моно), 2 (стерео), 5.1 (6-канальный звук).
Частота дискретизации (частота сэмплирования): 11 кГц, 22 кГц, 44.1 кГц, 48 кГц и т.д. Ситуация подобна частоте кадров в видео. Когда звук оцифровывается, устройство, которое захватывает исходный аналоговый сигнал и преобразовывает его в цифровой (это устройство называется АЦП - аналого-цифровой преобразователь) циклично захватывает из источника аналоговый сигнал разной амплитуды с определённой частотой. Весь цифровой звук в итоге состоит как бы из очень маленьких по длительности единичных участков (их называют сэмплами), различных по звучанию. Соответственно, чем чаще АЦП собирает такой сигнал из источника, тем больше таких сэмплов скажем в одной секунде цифровой аудиозаписи, и тем лучше (естественнее) качество звучания. Таким образом, при установке частоты дискретизации 44,1 кГц одна секунда цифрового звука грубо говоря будет содержать до 44100 различных сэмплов. Обычно устанавливают частоту дискретизации 44,1 кГц или 48 кГц.
Скорость потока результирующих данных (битрейт, Bitrate) - аналогично битрейту в видео. Чем выше битрейт, тем больше информации результируется за одну секунду, тем выше качество получаемого звучания и тем больше размер получаемого файла. Так же, в зависимости от формата, существуют постоянный, переменный, а также усреднённый (ABR, Average Bitrate) битрейты. Усреднённый битрейт по сути является смесью постоянно и переменного: пользователю даётся возможность указать усреднённый битрейт для всей аудиодорожки, а кодер при кодировании уже автоматически старается уложиться под это среднее значение (т.е. чтобы среднее значение битрейта во всей аудиодорожке после перекодирования соответствовало указанному). Такой тип битрейта используется весьма редко, поэтому многие бытовые проигрыватели могут его не поддерживать.
Впрочем, многое зависит от выбранного формата звука.
Для видео:
Разрешение (Resolution) - размер каждого отдельного кадра в точках (или как ещё говорят, в пикселах). Разрешение обычно указывается в формате <ширина>x<высота>, где вместо <ширина> указывается цифрами ширина кадра в точках, а вместо <высота> - соответственно, высота кадра (также иногда эти два параметра разделяют не крестиком, а звёздочкой. Ну это, собственно, не важно). Т.е. мы знаем, что цифровое изображение строится из точек. Чем больше количество таких точек, тем больше разрешение и, соответственно, чётче и детальнее получается изображение. При конвертировании видео различают также обычный тип разрешения и HD-разрешение. Если ширина кадра меньше или равна 720 точкам, а высота кадра меньше или равна 576 точкам - то это обычное разрешение. Если же хотя бы один из этих параметров выше - это уже HD-разрешение. HD-разрешение (HD - High Definition - высокая чёткость) даёт бОльшую чёткость и детальность изображения, однако многие старые бытовые плееры не способны воспроизвести видео с таким разрешением. Также стоит отметить, что не стОит при конвертировании указывать бОльшее разрешение, чем было у исходного видео: качество изображения от этого не улучшится
Соотношение сторон изображения (Ratio) - это даже не параметр, а характеристика разрешения. Ширина и высота кадра обычно имеют определённое соотношение. Например, разрешение 640х480 точек - это соотношение 4:3 (т.е. ширина кадра относится к высоте, как 4 к 3). Существуют несколько стандартных соотношений: 4:3, 5:4, 16:9, 16:10 и др. При конвертировании видео очень часто многие стараются уменьшить разрешение кадра. При этом, когда мы подбираем новое разрешение, необходимо учитывать соотношение сторон: к примеру, если в исходном видео было соотношение сторон 16:9, то и в получаемом после конвертирования видео должно быть такое же соотношение, иначе в итоге мы получим искажения (например, лица людей в кадре будут растянуты по горизонтали или вертикали).
При конвертировании многие видеоконвертеры предлагают ещё дополнительно указать некое соотношение сторон. При этом даже для разрешения 640х480 точек можно задать к примеру соотношение 16:9. Как заметил пользователь Jmd, существуют два типа соотношений сторон: Pixel Aspect Ratio и Storage Aspect Ratio. Дело в том, что пиксел в кадре может быть не только квадратным, но и прямоугольным. Storage Aspect Ratio при этом является соотношением сторон кадра (т.е. то, о чём мы говорили выше), а Pixel Aspect Ration в данном случае - соотношение сторон одного пиксела. В конверторе когда мы указываем дополнительно соотношение - это соотношение сторон, которое будет использоваться проигрывателем при воспроизведении файла независимо от его разрешения. Таким образом, существуют, например, видеофайлы с разрешением скажем 640х480 точек (что по логике соответствует соотношению 4:3), но при воспроизведении они имеют соотношение сторон 16:9, пиксел при этом становится прямоугольным. Как настраивать этот параметр - зависит от исходника. Если у исходного видеофайла были квадратные пикселы, то необходимо выбрать соотношение, равное соотношению SAR. А вообще, многие конвертеры при этом предлагают ещё задать нужное соотношение автоматически, поэтому лучше не париться и поставить этот параметр автоматом.
Частота кадров с секунду (FPS - Frame per Second, Frame rate) - параметр указывающий, количество кадров, которое будет сменяться за одну секунду. Т.е. к примеру, при выборе частоты кадров, равной 25 кадрам в секунду, в течение одной секунды будут последовательно показаны 25 кадров видео. Чем больше частота кадров, тем более плавно "движется" изображение. Считается, что минимальная частота кадров, которая хорошо воспринимается человеческим глазом, равна 24 кадрам в секунду (при ещё меньшем количестве кадров можно заметить, что изображение "движется" неплавно, с некоторыми рывками). В России по стандарту обычно положены 25 кадров в секунду, в США, Японии и некоторых других странах - 30. При конвертировании видео рекомендуется оставить частоту кадров как у исходного видео. Можно сделать её чуть меньше, но ни в коем случае не больше, иначе в полученное после конвертирования видео будет периодически слегка притормаживать (за счёт того, что всё время какие-то из кадров будут показаны несколько раз друг за другом). Оптимальная частота кадров - 25. Если в исходном видео она меньше 25, то лучше оставьте её без изменений.
Скорость потока результирующих данных (он же битрейт или Bitrate) - основной параметр, определяющий качество и размер получаемого после конвертирования видеофайла. Измеряется в килобитах в секунду. Он показывает, какой объём информации будет обрабатываться за одну секунду. Например, при установке битрейта равного 1400 кбит/сек, одна секунда видео будет занимать приблизительно 1400/8 = 175 Килобайт дискового пространства. Соответсвенно, чем больше битрейт, тем бОльшее количество места будет "выделяться" под одну секунду видео, а значит тем лучше будет качество видео и, соответственно, больше размер получаемого видеофайла.
Битрейт подбирать нужно исходя из разрешения и частоты кадров видео. Если установить высокое разрешение кадра, высокую частоту кадров и при этом очень низкий битрейт, то программе-конвертеру придётся бОльше использовать сжатие, чтобы как-то уместить такое количество кадров такого размера в таком маленьком пространстве, при это качество изображения будет ухудшено. Поэтому о том, какой битрейт устанавливать, нужно узнавать по разрешению и частоте кадров. Если разрешение и частота кадров высокие, нужно соответственно устанавливать высокий битрейт. Например, при использовании формата сжатия XviD с использованием разрешения 640х480 точек и частотой кадров 25 кадров/сек относительно хорошее качество изображения можно получить, установив при кодировании битрейт в 1800 кбит/сек. Понятное дело, что при использовании HD-разрешения, нужно в разы увеличивать и битрейт. Если использовать формат h264 (MPEG-4 AVC), то для видео с разрешением 1920x1080 точек достаточно будет битрейта в 7-9 Мбит/сек.
И ещё один немаловажный момент при выборе битрейта. Не следует устанавливать слишком высокий битрейт (20 а то и выше Мбит/сек). Дело в том, что не все бытовые проигрыватели способны воспроизвести видео с такой скоростью потока. Лучше всего, конечно, предварительно закодировать несколько отрывков какого-нибудь фильма в HD-качестве с разными битрейтами и проверить на плеере, будет ли он воспроизводить (ну, и заодно чисто для себя на глаз подобрать, какой битрейт наиболее оптимальный в плане качество-размер).
О переменном битрейте видео
Такой битрейт, когда мы строго указываем некоторое постоянное значение битрейта, называется постоянным битрейтом (CBR, Constant Bitrate). Некоторые форматы видео (например, h264 (он же MPEG-4 AVC)) поддерживают т.н. переменный битрейт (VBR, Variable Bitrate), когда битрейт в каждой секунде видео может меняться (т.е. там где кадры более детальные - там битрейт делается как можно выше, где кадры менее детальные - там наоборот). Таким образом достигается наиболее оптимальное соотношение размер/качество. Однако некоторые бытовые проигрыватели не поддерживают переменный битрейт или имеют некоторые проблемы при воспроизведении видео с таким битрейтом. Существуют несколько вариантов кодирования с использованием переменного битрейта: двухпроходное и однопроходное.
Двухпроходное кодирование занимает в 2 раза больше времени, чем однопроходное кодирование или кодирование с постоянным битрейтом. Суть метода заключается в том, что во время первого прохода кодер анализирует видеодорожку и на основе полученного анализа при повторном проходе подбирает оптимальный битрейт для каждой секунды видео.
Однопроходное кодирование в свою очередь подразделяется на кодирование по фиксированному качеству и кодирование по фиксированному диапазону значений битрейта. В первом случае пользователю предоставляется указать некий коэффициент качества, на основании которого кодер уже сам будет подбирать нужный алгоритм выбора битрейта для каждой секунды. Во втором случае задаются верхний и нижний пределы значений битрейта и, исходя из этих пределов, кодер выбирает из заданного диапазона значений нужный по его "мнению" битрейт для той или иной секунды видео.
Есть ещё третий вариант однопроходного кодирования с переменным битрейтом - по размеру файла. Пользователь сам указывает желаемый размер файла после кодирования, а кодер уже старается подобрать такой битрейт для каждой секунды видео, чтобы уложиться в заданный лимит. Такой вариант полезен, когда нужно скажем сжать исходный видеофайл до размера скажем CD-диска. Недостаток - это, конечно же, неконтролируемое изменение качества. Такой вариант однопроходного кодирования присутствует, например, в программах Nero Vision Express и Nero DVD Recode при использовании формата Nero Digital MPEG-4 AVC.
Многие конвертеры при использовании постоянного битрейта позволяют так же заранее посчитать размер получаемого после кодирования видеофайла. Делается это при помощи различных т.н. калькуляторов битрейта.
Теперь параметры кодирования звука:
Количество каналов: 1 (моно), 2 (стерео), 5.1 (6-канальный звук).
Частота дискретизации (частота сэмплирования): 11 кГц, 22 кГц, 44.1 кГц, 48 кГц и т.д. Ситуация подобна частоте кадров в видео. Когда звук оцифровывается, устройство, которое захватывает исходный аналоговый сигнал и преобразовывает его в цифровой (это устройство называется АЦП - аналого-цифровой преобразователь) циклично захватывает из источника аналоговый сигнал разной амплитуды с определённой частотой. Весь цифровой звук в итоге состоит как бы из очень маленьких по длительности единичных участков (их называют сэмплами), различных по звучанию. Соответственно, чем чаще АЦП собирает такой сигнал из источника, тем больше таких сэмплов скажем в одной секунде цифровой аудиозаписи, и тем лучше (естественнее) качество звучания. Таким образом, при установке частоты дискретизации 44,1 кГц одна секунда цифрового звука грубо говоря будет содержать до 44100 различных сэмплов. Обычно устанавливают частоту дискретизации 44,1 кГц или 48 кГц.
Скорость потока результирующих данных (битрейт, Bitrate) - аналогично битрейту в видео. Чем выше битрейт, тем больше информации результируется за одну секунду, тем выше качество получаемого звучания и тем больше размер получаемого файла. Так же, в зависимости от формата, существуют постоянный, переменный, а также усреднённый (ABR, Average Bitrate) битрейты. Усреднённый битрейт по сути является смесью постоянно и переменного: пользователю даётся возможность указать усреднённый битрейт для всей аудиодорожки, а кодер при кодировании уже автоматически старается уложиться под это среднее значение (т.е. чтобы среднее значение битрейта во всей аудиодорожке после перекодирования соответствовало указанному). Такой тип битрейта используется весьма редко, поэтому многие бытовые проигрыватели могут его не поддерживать.
Впрочем, многое зависит от выбранного формата звука.
О конвертерах
Скрытый текст
На данный момент существует огромное количество конвертеров. Среди них есть бесплатные и платные. Из бесплатных, пожалуй, могу выделить конвертеры Koyote Soft Free Video Converter, FormatFactory и Any Video Converter. Из платных - Xilisoft Video Converter.
Процедура конвертирования обычно проста: указываем программе исходные файлы, указываем форматы видео и звука, указываем параметры сжатия и указываем папку для выходных файлов. Более подробную инструкцию по работе с тем или иным конвертером обычно можно найти в его справочном руководстве.
Скорость конвертирования зависит от нескольких факторов: размер исходного файла, мощность процессора компьютера, сложность используемого алгоритма сжатия.
Процедура конвертирования обычно проста: указываем программе исходные файлы, указываем форматы видео и звука, указываем параметры сжатия и указываем папку для выходных файлов. Более подробную инструкцию по работе с тем или иным конвертером обычно можно найти в его справочном руководстве.
Скорость конвертирования зависит от нескольких факторов: размер исходного файла, мощность процессора компьютера, сложность используемого алгоритма сжатия.
Конвертирование видеофайлов с несколькими звуковыми дорожками
Скрытый текст
СтОит также отметить, что многие (большинство) видеоконвертеров не умеют самостоятельно работать с видеофайлами, у которых имеются несколько звуковых дорожек. Предварительно, перед конвертированием таких видеофайлов приходится "разбирать" видео файл на несколько отдельных файлов - файл с видеодорожкой и отдельные файлы звуковых дорожек, конвертировать их по-отдельности, а затем снова склеивать в один видео файл. Такая "разборка" видеофайла на части называется демуксирование (demuxing), а обратная процедура - склейка - муксированием (muxing). О ней расскажу в следующей главе.
Как добавлять, убирать звуковые дорожки в видео файле?
Скрытый текст
Как я уже не раз говорил, в одном видеофайле может присутствовать несколько звуковых дорожек. При помощи специальных программ, эти дорожки можно извлекать, удалять, добавлять и менять местами. Примером таких программ являются: Virtual Dub Mod и mkvmerge GUI. Обе программы являются бесплатными. Вторая предназначена для работы с контейнером MKV.
Virtual Dub Mod
Для начала откроем в программе Virtual Dub Mod наш видеофайл при помощи команды строки меню: File ==> Open video file. После того, как файл будет открыт, перейдём в список звуковых дорожек видеофайла. Для этого в программе Virtual Dub Mod необходимо выполнить команду строки меню: Streams ==> Stream list. В результате на экране появится окно со списком дорожек:

Теперь мы можем приступить к редактированию состава наших дорожек.
Все дорожки в списке отображаются в том порядке, в котором они располагаются в видеофайле. Для того чтобы передвинуть какую-то дорожку на один уровень вверх, нужно её сначала выделить, щёлкнув один раз на ней, затем щёлкнуть на кнопке Move Up (переместить вверх), дорожка поднимется ввех на один уровень. Для того чтобы опустить дорожку вниз на один уровень, нужно щёлкнуть на кнопке Move Down (переместить вниз).
Значок динамика показывает, какая из дорожек является дорожкой, воспроизводимой по умолчанию. Дорожка, являющаяся на данной момент дорожкой по умолчанию имеет яркий значок динамика, у остальны дорожек он отображается тусклым цветом. Чтобы сделать дорожку дорожкой по умолчанию, достаточно просто щёлкнуть на её значке динамика, он окрасится в яркий цвет.
Для того чтобы достать дорожку из видеофайла и сохранить её на жёстком диске как отдельный файл, нужно выделить эту дорожку и щёлкнуть на кнопке Demux. Появится стандартное окно сохранения файла. В нём указываем путь для сохранения и жмём Сохранить, начнётся процесс демуксирования.
Чтобы добавить новую дорожку в список дорожек, необходимо щёлкнуть на кнопке Add (Добавить). Появится стандартное окно открытия файла. Выбираем нужный файл, жмём открыть, выбранный файл добавится в список дорожек.
Чтобы удалить какую-либо дорожку из видеофайла, нужно выделить её и щёлкнуть на кнопке Disable (отключить). Выбранная дорожка заштри***тся, это будет означать, что дорожка будет впоследствии исключена из видеофайла. Если вы надумаете её снова включить, выделите её и щёлкните на кнопке Enable (включить).
Когда необходимые операции с дорожками будут выполнены, нужно будет в окне списка дорожек щёлкнуть на кнопке ОК. В результате мы перейдём к рабочему окну программы Virtual Dub Mod. Теперь необходимо указать программе, что нам нужно только выполнить операцию муксирования/демуксирования, без перекодирования видеодорожки. Для этого выполняем команду строки меню: Video ==> Direct Stream Copy.
После этого выполняем команду строки меню: File ==> Save As. В появившемся окне указываем папку и имя для сохранения нашего файла и жмём Сохранить. После этого начнётся процесс сохранения файла.
mkvmerge GUI
Программа mkvmerge GUI входит в пакет MKV Toolnix и является бесплатной. Она предназначена для создания и редактирования видео файлов с контейнером MKV.
Интерфейс программы mkvmerge GUI достаточно прост. Окно программы имеет несколько вкладок. В нашем случае нас интересует только вкладка Input. В ней есть кнопка Add. При помощи неё производится выбор видеофайлов для редактирования. Щёлкнем на ней. Появится стандартное окно открытия файлов. Выбираем нужный видеофайл (он может быть любого формата и контейнера, не обязательно MKV). После этого на вкладке Input в списке Input files появится наш видеофайл. В средней части окна появится список дорожек (Tracks). В этом списке будут присутствовать как звуковые дорожки, так и видеодорожка.

Можно приступать к редактированию списка дорожек.
Кнопки Up (вверх) и Down (вниз) в правой части списка используются для изменения местоположения дорожек в списке: выделяем нужную дорожку для перемещения и жмём на соответствующую кнопку.
Рядом с названием каждой дорожки в списке есть специальный флажок. Для того чтобы исключить какую-либо из дорожек из видеофайла, нужно снять соответствующий ей флажок.
Для того чтобы прикрепить новую дорожку к нашему видеофайлу, нужно в верхней правой части окна щёлкнуть на кнопке Append. Появится стандартное окно открытия файла. Выбираем нужный файл, он появляется в окне программы mkvmerge GUI в списке Input files, а также в списке Tracks.
Для того чтобы установить дорожку, воспроизводимую по умолчанию, используется расположенный ниже раскрывающийся список Default track flag. Выделяем при помощи мыши в списке дорожек нужную дорожку, а затем в раскрывающемся списке Default track flag указываем значение yes.
Контейнер MKV позволяет указывать язык для аудиодорожек, а также давать названия каждой дорожке. Выделяем в списке дорожек мышкой интересующую нас звуковую дорожку, затем в нижней части окна в текстовом поле Track name вводим название дорожки, а в раскрывающемся списке Language выбираем соответствующий язык.
Когда все необходимые операции с дорожками будут выполнены, можно приступать к сохранению файла. В нижней части окна программы mkvmerge GUI, в области Output filename щёлкаем на кнопке Browse (обзор), указываем в появившемся окне место и имя для сохранения файла. Затем щёлкаем в нижней части окна программы на кнопке Start Muxing, начнётся процесс создания файла.
Virtual Dub Mod
Для начала откроем в программе Virtual Dub Mod наш видеофайл при помощи команды строки меню: File ==> Open video file. После того, как файл будет открыт, перейдём в список звуковых дорожек видеофайла. Для этого в программе Virtual Dub Mod необходимо выполнить команду строки меню: Streams ==> Stream list. В результате на экране появится окно со списком дорожек:

Теперь мы можем приступить к редактированию состава наших дорожек.
Все дорожки в списке отображаются в том порядке, в котором они располагаются в видеофайле. Для того чтобы передвинуть какую-то дорожку на один уровень вверх, нужно её сначала выделить, щёлкнув один раз на ней, затем щёлкнуть на кнопке Move Up (переместить вверх), дорожка поднимется ввех на один уровень. Для того чтобы опустить дорожку вниз на один уровень, нужно щёлкнуть на кнопке Move Down (переместить вниз).
Значок динамика показывает, какая из дорожек является дорожкой, воспроизводимой по умолчанию. Дорожка, являющаяся на данной момент дорожкой по умолчанию имеет яркий значок динамика, у остальны дорожек он отображается тусклым цветом. Чтобы сделать дорожку дорожкой по умолчанию, достаточно просто щёлкнуть на её значке динамика, он окрасится в яркий цвет.
Для того чтобы достать дорожку из видеофайла и сохранить её на жёстком диске как отдельный файл, нужно выделить эту дорожку и щёлкнуть на кнопке Demux. Появится стандартное окно сохранения файла. В нём указываем путь для сохранения и жмём Сохранить, начнётся процесс демуксирования.
Чтобы добавить новую дорожку в список дорожек, необходимо щёлкнуть на кнопке Add (Добавить). Появится стандартное окно открытия файла. Выбираем нужный файл, жмём открыть, выбранный файл добавится в список дорожек.
Чтобы удалить какую-либо дорожку из видеофайла, нужно выделить её и щёлкнуть на кнопке Disable (отключить). Выбранная дорожка заштри***тся, это будет означать, что дорожка будет впоследствии исключена из видеофайла. Если вы надумаете её снова включить, выделите её и щёлкните на кнопке Enable (включить).
Когда необходимые операции с дорожками будут выполнены, нужно будет в окне списка дорожек щёлкнуть на кнопке ОК. В результате мы перейдём к рабочему окну программы Virtual Dub Mod. Теперь необходимо указать программе, что нам нужно только выполнить операцию муксирования/демуксирования, без перекодирования видеодорожки. Для этого выполняем команду строки меню: Video ==> Direct Stream Copy.
После этого выполняем команду строки меню: File ==> Save As. В появившемся окне указываем папку и имя для сохранения нашего файла и жмём Сохранить. После этого начнётся процесс сохранения файла.
mkvmerge GUI
Программа mkvmerge GUI входит в пакет MKV Toolnix и является бесплатной. Она предназначена для создания и редактирования видео файлов с контейнером MKV.
Интерфейс программы mkvmerge GUI достаточно прост. Окно программы имеет несколько вкладок. В нашем случае нас интересует только вкладка Input. В ней есть кнопка Add. При помощи неё производится выбор видеофайлов для редактирования. Щёлкнем на ней. Появится стандартное окно открытия файлов. Выбираем нужный видеофайл (он может быть любого формата и контейнера, не обязательно MKV). После этого на вкладке Input в списке Input files появится наш видеофайл. В средней части окна появится список дорожек (Tracks). В этом списке будут присутствовать как звуковые дорожки, так и видеодорожка.

Можно приступать к редактированию списка дорожек.
Кнопки Up (вверх) и Down (вниз) в правой части списка используются для изменения местоположения дорожек в списке: выделяем нужную дорожку для перемещения и жмём на соответствующую кнопку.
Рядом с названием каждой дорожки в списке есть специальный флажок. Для того чтобы исключить какую-либо из дорожек из видеофайла, нужно снять соответствующий ей флажок.
Для того чтобы прикрепить новую дорожку к нашему видеофайлу, нужно в верхней правой части окна щёлкнуть на кнопке Append. Появится стандартное окно открытия файла. Выбираем нужный файл, он появляется в окне программы mkvmerge GUI в списке Input files, а также в списке Tracks.
Для того чтобы установить дорожку, воспроизводимую по умолчанию, используется расположенный ниже раскрывающийся список Default track flag. Выделяем при помощи мыши в списке дорожек нужную дорожку, а затем в раскрывающемся списке Default track flag указываем значение yes.
Контейнер MKV позволяет указывать язык для аудиодорожек, а также давать названия каждой дорожке. Выделяем в списке дорожек мышкой интересующую нас звуковую дорожку, затем в нижней части окна в текстовом поле Track name вводим название дорожки, а в раскрывающемся списке Language выбираем соответствующий язык.
Когда все необходимые операции с дорожками будут выполнены, можно приступать к сохранению файла. В нижней части окна программы mkvmerge GUI, в области Output filename щёлкаем на кнопке Browse (обзор), указываем в появившемся окне место и имя для сохранения файла. Затем щёлкаем в нижней части окна программы на кнопке Start Muxing, начнётся процесс создания файла.
Об источниках видеосигнала: CamRip, DVD-Rip, SAT-Rip, BD-Rip, VHS-Rip и т.д.
Скрытый текст
Всё это - показатели источников, с которых был скопирован или оцифрован фильм. Как правило, по источнику можно приблизительно судить и о качестве: если фильм был "взят" с Blu-Ray диска, то качество будет значительно лучше, нежели чем у фильма, оцифрованного с видеокассеты VHS. Рассмотрим все источники подробнее.
DVD-Rip - фильм был риппован с DVD-Video диска. Качество, как правило, очень хорошее, обычное разрешение (не HD).
BD-Rip - фильм риппован с Blu-Ray диска. Как правило, отличное качество, обычно с HD-разрешением (однако, иногда попадаются BD-Rip'ы и с обычным (не-HD) разрешением), видео файл при этом имеет достаточно большой размер (нередко он достигает нескольких десятков ГБ).
Cam-Rip - фильм был снят на камеру (как правило, любительскую) в одном из кинокомплексов. Плохое качество, блёклые цвета, постоянно меняющаяся яркость и плюс ко всему убогий звук, который нередко "приглушается" зрительскими голосами из зала, откуда снимали фильм. Такой фильм можно качнуть чисто для ознакомления с самим сюжетом. Если в сети уже кто-то выложил DVD-Rip (а тем более BD-Rip), то ни в коем случае не качайте Cam-Rip.
TS-Rip - подобно Cam-Rip, с той разницей, что рип снимается профессиональной камерой на штативе в пустом кинозале; звук берётся напрямую из источника, поэтому имеет достаточно неплохое качество. Качество картинки при этом лучше, чем у CamRip, но хуже чем, скажем, у DVD-Rip.
VHS-Rip - рип с видеокассеты формата VHS. Качество как правило низкое, но лучше, чем у Cam-Rip. Хотя опять же всё зависит от того, с какой видеокассеты оцифровывали фильм, на какой аппаратуре и т.д.
TV-Rip - рип с телевизионной антенны. Обычно в таком качестве выкладывают на трекерах какие-то телепередачи, которые транслировались только на ТВ. Качество среднее, зависит от качества приёма антенны, и качества оборудования.
SAT-Rip - подобно TV-Rip с той лишь разницей, что сигнал берётся не с антенны, а прямо со спутника, что даёт несколько лУчшее качество, чем TV-Rip.
HDTV-Rip - подобно TV-Rip с той разницей, что используется HD-разрешение.
DVD-Rip - фильм был риппован с DVD-Video диска. Качество, как правило, очень хорошее, обычное разрешение (не HD).
BD-Rip - фильм риппован с Blu-Ray диска. Как правило, отличное качество, обычно с HD-разрешением (однако, иногда попадаются BD-Rip'ы и с обычным (не-HD) разрешением), видео файл при этом имеет достаточно большой размер (нередко он достигает нескольких десятков ГБ).
Cam-Rip - фильм был снят на камеру (как правило, любительскую) в одном из кинокомплексов. Плохое качество, блёклые цвета, постоянно меняющаяся яркость и плюс ко всему убогий звук, который нередко "приглушается" зрительскими голосами из зала, откуда снимали фильм. Такой фильм можно качнуть чисто для ознакомления с самим сюжетом. Если в сети уже кто-то выложил DVD-Rip (а тем более BD-Rip), то ни в коем случае не качайте Cam-Rip.
TS-Rip - подобно Cam-Rip, с той разницей, что рип снимается профессиональной камерой на штативе в пустом кинозале; звук берётся напрямую из источника, поэтому имеет достаточно неплохое качество. Качество картинки при этом лучше, чем у CamRip, но хуже чем, скажем, у DVD-Rip.
VHS-Rip - рип с видеокассеты формата VHS. Качество как правило низкое, но лучше, чем у Cam-Rip. Хотя опять же всё зависит от того, с какой видеокассеты оцифровывали фильм, на какой аппаратуре и т.д.
TV-Rip - рип с телевизионной антенны. Обычно в таком качестве выкладывают на трекерах какие-то телепередачи, которые транслировались только на ТВ. Качество среднее, зависит от качества приёма антенны, и качества оборудования.
SAT-Rip - подобно TV-Rip с той лишь разницей, что сигнал берётся не с антенны, а прямо со спутника, что даёт несколько лУчшее качество, чем TV-Rip.
HDTV-Rip - подобно TV-Rip с той разницей, что используется HD-разрешение.
====================
Вот, собсна, и всё. На этом, пожалуй, и закончу. Если будут какие-то вопросы - пишите.
Сообщение отредактировал Shadow TH: 24 Декабрь 2011 - 08:47




























