Indeo Video (теперь широко известный просто как «Indeo») — это семейство аудио- и видеоформатов и кодеков , впервые выпущенное в 1992 году и разработанное для воспроизведения видео в реальном времени на настольных процессорах. Хотя его оригинальная версия была связана с форматом видеопотока DVI компании Intel , аппаратным кодеком для сжатия видео телевизионного качества на компакт-диски , Indeo отличался тем, что был одним из первых кодеков, обеспечивающих воспроизведение видео на полной скорости без использования аппаратного ускорения . Также, в отличие от Cinepak и TrueMotion S , сжатие использовало то же цветовое пространство Y'CbCr 4:2:0 , что и H.261 МСЭ и MPEG -1 ISO . Использование Indeo было бесплатным [1] , чтобы обеспечить максимально широкое использование.
Во время разработки того, что стало микропроцессором Pentium P5 , Intel Architecture Labs реализовала один из первых и на тот момент самых качественных программных видеокодеков, который продавался как «Indeo Video». Он разрабатывался с 1980-х годов на основе аппаратного Digital Video Interactive (DVI), который ранее был разработан General Electric . [2] Indeo был впервые выпущен в 1992 году вместе с платформой Microsoft Video for Windows . [3] На момент своего публичного представления это был единственный видеокодек, поддерживаемый как в программных средах Microsoft (Video for Windows), так и в средах QuickTime от Apple Computer , а также в программных системах IBM того времени. Он был продан Ligos Corporation в 2000 году.
В период с 1993 по 2000 год компания Intel выпустила несколько различных версий кодека, основанных на совершенно разных математических принципах и имеющих различные функции.
Хотя Indeo получил широкое распространение в середине 1990-х годов, он оставался фирменным . Intel замедлила разработку и прекратила активный маркетинг, и его быстро превзошли по популярности кодеки MPEG и другие, поскольку процессоры стали более мощными, а его оптимизация для чипов Intel — менее важной. Indeo все еще использовался в видеороликах видеоигр , например, в Police Quest: SWAT 2 1998 года .
Оригинальный формат был разработан для воспроизведения в реальном времени на процессорах Intel низкого уровня ( i386 и i486 ), опционально поддерживаемых специализированным аппаратным декодером ( Intel i750 ). Сложность декодирования была значительно ниже, чем у современных кодеков MPEG ( H.261 , MPEG-1 Часть 2). [4]
Кодек был крайне асимметричным , что означало, что для кодирования видеопотока требовалось гораздо больше вычислений , чем для его декодирования. Система видеоконференций ProShare от Intel воспользовалась этим преимуществом, используя аппаратное ускорение для кодирования потока (и, таким образом, требуя дополнительной карты), но позволяя отображать поток на любом персональном компьютере.
Indeo 2, ранее известный как Real-Time Video 2 , работает путем дельта-кодирования пикселей построчно, либо по отношению к непосредственно предшествующей по времени или пространству строке, в сочетании со статическим кодированием Хаффмана . [5]
Indeo Video 3 — это традиционный формат кодирования на основе DCT -преобразования, разработанный для воспроизведения видео с CD-ROM , который очень похож на конкурирующий Cinepak . Он использует цветовую субдискретизацию , дельта-кодирование, векторное квантование , кодирование длин серий и компенсацию движения ( межкадровое кодирование) с рекомендуемым интервалом ключевых кадров 4 и имеет отчетливо асимметричные характеристики времени выполнения. [6] [3]
Indeo Video Interactive имел большую вычислительную сложность и был нацелен на разработчиков видеоигр. [7] Он был основан на вейвлет-преобразованиях [8] и включал новые функции, такие как прозрачность с хромакеем и поддержка горячих точек. Первоначально не было поддержки для систем Apple. [9] Было создано два варианта этой технологии: Indeo Video 4 и 5. Формат никогда официально не был задокументирован, но позже был подвергнут обратному проектированию для обеспечения возможности использования сторонних декодеров. [10]
Indeo Audio Coder — это формат кодирования преобразования, основанный на модифицированном дискретном косинусном преобразовании (MDCT). [11]
Запатентованное кодирование битового потока для видео, изначально разработанное Intel. Технология была продана в 2000 году корпорации Ligos. Джон МакГован утверждает, что Indeo 5 использует алгоритм вейвлета и другие функции кодирования; его предшественник Indeo 4 использует предположительно похожий «гибридный алгоритм вейвлета». [12] Реализации Indeo для Windows распространялись Ligos. Apple распространяла версии Mac для «классических» операционных систем через OS 9, но поддержка MacOS для Mac OS X отсутствует .
Официальные декодеры Indeo 5 существуют для Microsoft Windows , классической Mac OS , BeOS R5 и проигрывателя XAnim на Unix . Декодеры, созданные методом обратного проектирования для версий 2, 3, 4 и 5, были представлены в FFmpeg между 2003 и 2011 годами. [13] Версии Indeo 3 ( IV31 и IV32 ), 4 ( IV41 ) и 5 ( IV50 ) поддерживаются MPlayer [14] и XAnim. Версия 5.11 является бесплатной [15] и может использоваться во всех 32-разрядных версиях Windows до Vista. Версия 5.2 была создана для XP и доступна для покупки на официальном сайте [16] для использования только с Windows 95, 98, ME, NT, 2000 и XP. Это включает поддержку кодеков Indeo Video 4.5 и Indeo Audio 2.5, но видеокодек версии 3.2 был удален с момента первоначального выпуска Indeo XP для Windows. Хотя видео Indeo официально не поддерживается Windows Vista и Windows 7, простой ввод следующего в командную строку может включить воспроизведение видео, закодированного Indeo: regsvr32 ir50_32.dll
[17]
Реализация кодека Indeo в Microsoft Windows содержит несколько уязвимостей безопасности, и не следует воспроизводить видео Indeo из ненадежных источников. Microsoft попыталась удалить их в XP SP1, но была вынуждена выпустить исправление, чтобы вернуть их обратно. [18] Кодек изначально был лицензирован Intel, и у Microsoft, вероятно, нет исходного кода, который потребовался бы для исправления уязвимостей. В полностью исправленных системах и во всех системах Windows Vista и более поздних версиях кодек Indeo частично отключен в большинстве случаев. [19]