Остальные части
Когда говорят о MPEG2, в первую очередь подразумевают видео, которым мы сейчас и займёмся. В общих чертах, конечно.
На самом деле, стандарт MPEG2 включает в себя много всего другого, в частности, кодирование аудио, разбивку данных на пакеты, объединение пакетов в потоки, мультиплексирование потоков, служебную информацию, и прочая, и прочая. Всё это подробно, с картинками и формулами, описано в группе документов под общим названием ISO/IEC 13818.
Кодирование видео описано во второй части стандарта, которую любой желающий может купить себе всего за каких-то 244 швейцарских франка. Если купите, не забудьте прислать мне. Вместе с остальными девятью частями.
Изначально (или после оцифровки) цифровое видео представляет собой набор кадров, каждый из которых состоит из цветных пикселов. Ну, иногда чёрно-белых, но это частный случай цветных.
Кадры должны показываться с определённой частотой.
Количество строк в кадре происходит от систем аналогового телевидения: 576 для PAL и SECAM, 480 для NTSC, либо вдвое уменьшенное: 288 или 240, как в бытовых видеомагнитофонах соответствующих систем.
Количество точек в строке в аналоговом телевидении не имееет физического смысла, по какому принципу оно было выбрано в MPEG2, я не знаю. Их бывает 720, 704, 640, 544, 480 или 352. Все эти числа нацело делятся на 16, что связано с особенностями алгоритмов кодирования.
Замечу, что обычное соотношение сторон кадра - 4:3. Поэтому в абсолютном большинстве случаев пикселы в кадре получаются вовсе не квадратные. Единственное исключение - 640x480. Правда, при кодировании и декодировании это никакого значения не имеет, это следует учитывать только при собственно показе видео.
А ещё от аналогового телевидения по наследству передалась частота кадров - 25 для PAL/SECAM, 24/1.001, 24, 30/1.001 и 30 для NTSC.
И возможность чересстрочной развертки (interlacing), которую изобрели в древности в связи с ограниченностью технических возможностей тогдашних телевизионных приемников, тоже пришла из аналогового телевидения.
Проблема была в том, что пока луч в кинескопе доходил до нижней части экрана, в верхней люминофор уже начинал гаснуть, и картинка ощутимо мерцала. Для борьбы с этим явлением придумали поделить кадр на две половины - сначала рисовать четные строки, потом нечётные. А чтобы картинка при показе выглядела цельной, эти две половины сдвинуты по времени на полкадра (1/50 секунды для PAL/SECAM). С телевизорами-то всё нормально, а вот если оба полукадра выводить вместе и с обычной частотой - 25 кадров/с - на устройство с прогрессивной развёрткой (все строки по порядку), например, на компьютерный монитор, то из-за временнОго сдвига половины строк появляется гребёнка.
Современные телевизоры уже давно научились прогрессивной развёртке без мерцания, но чересстрочная так прочно укоренилась, что переползла и в цифровое телевидение, и доставляет много головной боли. Гребёнка, возникающая при перекодировании некоторых DVD в DivX - это она самая.
Upd: как справедливо написал в комментах
jorje, чересстрочность позволяет при просмотре получить более плавные движения из-за фактически удвоенной частоты кадров. Видимо, поэтому она до сих пор и существует.
Вот тут можно почитать (на английском) про телевизионные стандарты и чересстрочность и посмотреть в картинках.
Прогрессивная развёртка в MPEG2 также присутствует.
Ещё раз уточняю, что говорить о PAL, SECAM или NTSC применительно к цифровому изображению - неправильно. Это аналоговые стандарты, от которых в цифре остались только некоторые очень отдельные параметры.
Кроме вышеуказанных, для телевидения высокой чёткости определены и другие варианты размеров кадра, вплоть до 1920 x 1080 пикселов.
Когда говорят о MPEG2, в первую очередь подразумевают видео, которым мы сейчас и займёмся. В общих чертах, конечно.
На самом деле, стандарт MPEG2 включает в себя много всего другого, в частности, кодирование аудио, разбивку данных на пакеты, объединение пакетов в потоки, мультиплексирование потоков, служебную информацию, и прочая, и прочая. Всё это подробно, с картинками и формулами, описано в группе документов под общим названием ISO/IEC 13818.
Кодирование видео описано во второй части стандарта, которую любой желающий может купить себе всего за каких-то 244 швейцарских франка. Если купите, не забудьте прислать мне. Вместе с остальными девятью частями.
Изначально (или после оцифровки) цифровое видео представляет собой набор кадров, каждый из которых состоит из цветных пикселов. Ну, иногда чёрно-белых, но это частный случай цветных.
Кадры должны показываться с определённой частотой.
Количество строк в кадре происходит от систем аналогового телевидения: 576 для PAL и SECAM, 480 для NTSC, либо вдвое уменьшенное: 288 или 240, как в бытовых видеомагнитофонах соответствующих систем.
Количество точек в строке в аналоговом телевидении не имееет физического смысла, по какому принципу оно было выбрано в MPEG2, я не знаю. Их бывает 720, 704, 640, 544, 480 или 352. Все эти числа нацело делятся на 16, что связано с особенностями алгоритмов кодирования.
Замечу, что обычное соотношение сторон кадра - 4:3. Поэтому в абсолютном большинстве случаев пикселы в кадре получаются вовсе не квадратные. Единственное исключение - 640x480. Правда, при кодировании и декодировании это никакого значения не имеет, это следует учитывать только при собственно показе видео.
А ещё от аналогового телевидения по наследству передалась частота кадров - 25 для PAL/SECAM, 24/1.001, 24, 30/1.001 и 30 для NTSC.
И возможность чересстрочной развертки (interlacing), которую изобрели в древности в связи с ограниченностью технических возможностей тогдашних телевизионных приемников, тоже пришла из аналогового телевидения.
Проблема была в том, что пока луч в кинескопе доходил до нижней части экрана, в верхней люминофор уже начинал гаснуть, и картинка ощутимо мерцала. Для борьбы с этим явлением придумали поделить кадр на две половины - сначала рисовать четные строки, потом нечётные. А чтобы картинка при показе выглядела цельной, эти две половины сдвинуты по времени на полкадра (1/50 секунды для PAL/SECAM). С телевизорами-то всё нормально, а вот если оба полукадра выводить вместе и с обычной частотой - 25 кадров/с - на устройство с прогрессивной развёрткой (все строки по порядку), например, на компьютерный монитор, то из-за временнОго сдвига половины строк появляется гребёнка.
Современные телевизоры уже давно научились прогрессивной развёртке без мерцания, но чересстрочная так прочно укоренилась, что переползла и в цифровое телевидение, и доставляет много головной боли. Гребёнка, возникающая при перекодировании некоторых DVD в DivX - это она самая.
Upd: как справедливо написал в комментах
Вот тут можно почитать (на английском) про телевизионные стандарты и чересстрочность и посмотреть в картинках.
Прогрессивная развёртка в MPEG2 также присутствует.
Ещё раз уточняю, что говорить о PAL, SECAM или NTSC применительно к цифровому изображению - неправильно. Это аналоговые стандарты, от которых в цифре остались только некоторые очень отдельные параметры.
Кроме вышеуказанных, для телевидения высокой чёткости определены и другие варианты размеров кадра, вплоть до 1920 x 1080 пикселов.
Tags: