Магия QuickTime – настоящая!
В мае 1991-го, в понедельник 13-го числа, Apple показала нечто. Противоречащее законам природы и невозможное впринципе. И пообещало каждому пользователю Mac’ов (а потом и не только Mac’ов) возможность лично нарушать законы. Через полгода. Артур Кларк, за несколько лет до этого события, сказал в одном из интервью “лучшие из технологий нашего времени неотличимы от магии”. С Apple или без, цифровое видео все равно бы появилось – всё, что требовалось для этого в конце 80-х уже было, в более или менее подходящем для его создания виде, уже было. Оставалось только соединить эти разрозненные фрагменты, привести их в требуемое состояние и… всё. Это и есть магия. Группа продвинутых технологий (ATG) Apple просто оказалась в нужном месте и в нужное время. Правильно поставить задачу – уже наполовину её решить. Все это нисколько не умаляет совершенное командой QuickTime и Apple. Если бы, через год или через три, цифровое видео изобрела другая компания, нет никакой гарантии что её творение было бы столь же элегантно и красиво, как QuickTime. Мы совершим обзорную экскурсию по его глубинам, и я очень надеюсь суметь раскрыть красоту его внутреннего мира – но доказывать её элегантность и красоту нет необходимости. Технология (“магия”, по Кларку), которая существует уже почти 30 лет, и, в той или иной форме, работает на 2 миллиардах персональных компьютеров и 2,5 миллиардах разных мобильных устройств, выше этого. Секрет её долговечности прост: QuickTime сконструирован как гибкий и расширяемый интерактивный комплекс для работы с многомерными данным, где одно из измерений – время. Технология мультимедиа – лишь одно из её приложений к реальности, самое известное и, наверное, самое важное. Его применяли спецслужбы развитых стран мира, для других целей – и не только они. Продолжение. О мрачных годах засилия аналогового видео можно узнать здесь. WWDC’91 WWDC’91 проходила с 13 по 17 мая 1991 года, в конференц-центре Сан Хосе. Открывал ли её Джон Скалли, неизвестно. Известно о выступлении Джона Скалла(!), одного из высших руководителей маркетингового подразделения Apple. В 1985 году Джон Скалл возглавлял маркетинговую часть “революции в издательском деле”. Он сообщил что мультимедиа – логическое продолжение настолько-издательских систем и следующий шаг в эволюции персональных компьютеров. А кроме того, это реализация преимуществ графической системы Mac’а над IBM PC. Джона Скалла я упомянул не только из-за схожести его имени с именем главы компании, в конце концов они даже не однофамильцы. После ухода из Apple, он стал главой компании Macromind, создателя Director – приложение для создания и редактирования цифрового видео, в наше время потомки этого приложения живут и процветают – это Adobe Flash. Бóльшую часть представления вели ребята из команды QuickTime, их презентация не была записана на видео, или оно не сохранилось – жаль. Говорят, QuickTime появился на свет очень артистично и весело. На этой же конференции, неофициально и в кулуарах, состоялось событие, оставившее след в истории вычислительной техники. Группа сторонних разработчиков собралась (в последний или предпоследний день конференции) в одном из свободных залов Convention Center, для выработки концепции документа универсального формата, для облегчения обмена данными между программами разных производителей. За основу было решено принять формат IFF (Interchange File Format), разработанный в 1985 году для компьютера Amiga, совместными усилиями его создателя, Commodore Business Machines и компании Electronic Arts. Это событие стало первым в цепочке событий, которые привели к возникновению проекта OpenDoc, сыгравшего важную роль в истории, разделившего разработчиков Apple на тех, кто категорически не принимал эту технологию, и на тех кто был готов за неё на всё. Я, скорее, отнес бы себя к первой категории, когда-нибудь напишу почему. А пока вернусь на полтора года назад, в самый конец 1989 года, когда все только начиналось, и миссия QuickTime еще считалась невыполнимой. Начало начал Даже если забыть о том, чем все кончилось, проект был уникален. Участникам проекта был предоставлен неограниченный доступ к разработкам и наработкам Apple, даже секретным. Кроме того, одним из требований проекта была совместимость его результатов с Windows. И включение в мультимедиа злосчастной поддержки факс-машин, это было еще одним из требований руководства, и неиссякаемым поводом для шуток. Руководителем продукта был назначен Дуг Кэмплджон, из мультимедийной группы в маркетинговой службе компании. Он “перевел” требования руководства компании на язык технически грамотных людей, сведя их к трем основным пунктам: компрессия видео- и аудиоданных. Аналоговое видео сжимали уже давно, но цифровое представление позволяло значительно увеличить степень сжатия; универсальные часы. Точный механизм для работы с реальным временем, без которого невозможна синхронизация, например, звукового сигнала с видео; формат данных для мультимедиа. Превратить мультимедиа в формат данных, со своим типом файлов, который можно было бы применять в операционной системе независимо от используемого в ней порядка байт. Подумав. Дуг добавил еще одну ключевую задачу. Про факс-машины. Умный поймет, а других в группу брать не собирались. Группа выводилась из подчинения ATG, теперь она напрямую подчинялась Джону Скалли, ей выделили свой офис, через дорогу от главного здания Apple, и назначили Брюса Лика техническим менеджером проекта. Выделили финансирование (разработка QuickTime обошлась Apple недешево), и предоставили неограниченную свободу в рамках правил внутреннего распорядка Apple Computer и законов штата Калифорния. Неплохая пиццерия была на той же стороне Mariani Avenue. В первых числах января 1990 года группа QuickTime официально приступила к работе. Компрессор, тайминг и универсальный формат Превратить видео приемлемой длительности в файл, который можно разместить на диске тогдашнего Mac’а или PC-шки, было задачей очень непростой. Если бы не доступ к тайным технологиям Apple, алгоритмы сжатия пришлось бы разрабатывать самой команде, и никто не гарантировал бы успех в этом начинании. Принципы компрессии данных уже были опубликованы, основы этого дела преподавали в университетах, и, с точки зрения дилетанта или менеджера, разработать что-то такое “на месте” и между делом было бы “раз плюнуть”. Времени на работу алгоритма отводилось чуть-чуть, а степень сжатия требовалась более чем недетская. В ATG были мастера этого дела, и алгоритмы, на основе которых создали симметричный компрессор данных. В первой версии QuickTime он известен как кодек “Road Pizza”. Сжимающий данные как шины тысяч автомобилей вжимают в асфальт упавший на него кусок пиццы. Делающий это настолько быстро, что пользователь даже не подозревал, какие непростые манипуляции с данными выполняет его компьютер. Видео, исполняемое на Mac’е, теоретически, могло иметь самое разное происхождение. Например, пришелец из нашего времени мог бы снять на iPhone происходящее у пиццерии рядом с офисом QuickTime, и сбросить видео на тогдашний Mac. Десяток мегабайт, скорее всего, Mac 1990 года смог бы импортировать. За несколько часов. Или дней. Периферия была тогда очень медленной, USB и Bluetooth не поддерживались – пришлось бы нелегко. Но с пришельцами из другого времени туговато, неизвестно даже есть ли они вообще, да и эксперимент с просмотром видео снятого iPhone’ом на Macintosh IIx я не проводил, не факт что получится. Основным источником видео была оцифровка аналоговых источников, и размеры таких цифровых файлов запросто достигали пары сотен мегабайт. Поэтому для хранения и транспортировки видео использовались CD. Тогда они назывались CD/ROM, и только-только завоевывали популярность. CD, к удивлению аборигенов того периода истории, по медлительности уступали только дискетам объёмом в 1,44 мегабайта (тот самый SuperDrive). Зато на диске умещалось 650 мегабайт, а производители CD давали 100-летнюю гарантию своим хрупким и бьющимся как хрусталь носителям информации. А стоили “болванки” (пустые CD), по моему, дешевле чем дискеты. Вот на них видео и хранились. Несмотря на путаницу: в ходу, помимо огромных лазерных дисков огромного диаметра, появились обычные (по виду) CD-диски с видеопродукцией в аналоговой форме. Потребители путались, бесились от бессилия, обращались в суды всех инстанций – сам я таких дисков не видел, только слышал о них. И чем кончались суды, я не знаю, но так как и на упаковке, и на самом диске, было написано что это Video диск, и что он не работает с CD-дисководами компьютера, боюсь что ничем хорошим для заявителя. Пользователи компьютеров в то время умели читать, и использовали это навык в жизни, у них, вроде бы, никаких проблем не возникало. Не все пользователи одинаковы, но об этом в другой раз. Тайминг стащить было негде, все связанное с ним долго и упорно писалось в команде. Была написана программа с пользовательским интерфейсом для тестирования “машины точного времени” – библиотеки тайминга. Она выводила точное, по версии алгоритма, время. Её назвали “Универсальные часы”. Долгое время ничего не получалось. Времени и сил на точное время ушло немало, но с середине 1990 года все заработало как часы. Они теперь или не выдавала ничего вообще (баги все еще были), или сообщала нереально точное время. Файловый формат, QTFF заслуживает отдельного рассмотрения… Он стал основой для MPEG-4, о чем, по уже устаревшей привычке анти-яблочной эры, публичные источники предпочитают молчать. Или вспоминать пореже. В продолжении – объяснение некоторых необъяснимых явлений: зачем Apple Computer понадобился QuickTime для Windows.