Прогрессивные технологии Apple

Олег Татарников

Секреты технологии QuickTime

Сферические лошади в вакууме

QuickTime- программирование

 

QuickTime на вашем компьютере

QuickTime и атаки хакеров

Объемный интерфейс

 

Компания Apple с самого начала своего существования славилась изобретением уникальных и во многом действительно революционных решений в области компьютерных технологий, подчас значительно опережавших свое время. Чего стоят, например, такие новации, как графический интерфейс пользователя или манипулятор «мышь», которые впервые появились именно на компьютерах этой фирмы! Да и самому успеху персональных компьютеров (если не существованию их вообще) мы обязаны именно Стиву Джобсу и Стефану Возняку — создателям «яблочной» компании. До сих пор простоте и удобству интерфейсам компьютеров Macintosh нет равных. И по сей день даже многие пользователи Windows предпочитают устанавливать на свои компьютеры эмуляторы этого интерфейса типа Yz Dock или ObjectDock (http://www.stardock.com/products/objectdock/), хотя, понятно, что компания Apple усматривает в этом нарушение своих авторских прав.

 

Прогрессивные технологии Apple

Казалось бы, что может быть необычного в полоске, на которой размещаются иконки для запуска тех или иных программ? Но дизайнеры Apple Dock умудрились даже из такой простой вещи сделать конфетку. Во-первых, там потрясающее качество отрисовки иконок (не говоря уже о качестве самих иконок, по сравнению с которыми даже нововведения Windows XP смотрятся убого). Во-вторых, различные эффекты типа magnification (при наведении курсора на иконку она заметно увеличивается в размерах, не теряя при этом качества отрисовки). Причем в отличие от различных микшеров, применяемых для украшения того же Windows XP, — это действительно полезное нововведение. В-третьих, запущенные приложения при минимизации отображаются на рабочем столе в виде не простых иконок, а крохотных скриншотов программ. Причем существует возможность настроить практически всё, то есть не только размеры и расположение иконок, но и их поведение, эффекты и т.д. Все это вместе взятое создает то неповторимое удобство и дружественность к пользователю, которыми издавна славится продукция компании Apple. Работать с таким интерфейсом не просто более удобно, но еще и приятно. Все-таки не зря Мак OS называют системой с человеческим лицом…

     

QuickTime на вашем компьютере

Процесс установки пакета QuickTime не займет у вас много времени и ресурсов (базовая версия бесплатно загружается с сайта http://www.apple.com/quicktime). После запуска программы-инсталлятора необходимо выбрать вариант установки.

При загрузке с сайта мастер инсталляции обращается к сайту компании Apple и загружает требуемые программные компоненты. В дальнейшем можно будет вновь запускать инсталлятор, который автоматически обновит ранее установленные программы.

Вариант Basic позволяет установить минимальную конфигурацию пакета, обеспечивающую воспроизведение цифрового видео, аудио, 2D- и 3D-графики и роликов виртуальной реальности.

Для воспроизведения различных мультимедийных форматов в пакете имеется проигрыватель QuickTime Player, который предоставляет набор традиционных инструментов управления: Play («Воспроизведение»), Pause («Пауза»), а также регуляторы громкости, баланса, эквалайзер, ползунок времени и др.

Однако бесплатная версия позволяет лишь просматривать, прослушивать и копировать файлы в форматах, поддерживаемых QuickTime.

Чтобы иметь возможность редактировать файлы, необходимо приобрести ключ (серийный номер), введя который вы получаете полную версию пакета QuickTime Pro. Разумеется, редактирование не ограничивается только копированием и вставкой фрагментов (подробнее о различиях базовой и профессиональной версий можно узнать на сайте производителя). Зарегистрированные пользователи более ранних версий QuickTime могут получать все последующие обновления и дополнения бесплатно.

 

Словом, пользователя классической школы Windows, не привыкшего к красотам «яблочного» интерфейса и к идеологии компании Apple, даже ObjectDock способен повергнуть в шок, а что уж говорить о настоящих интерфейсах Macintosh!

Кстати, кнопочки и иконки а-ля Macintosh, которые значительно разбавят унылый интерфейс Windows, также можно найти на просторах Интерента в большом количестве (например, на сайте http://www.wincustomize.com/).

Секреты технологии QuickTime

Как и многие другие технологии компании Apple, QuickTime с момента своего появления в 1991 году не ограничился скромной ролью формата-кодека или пакета приложений для просмотра видео и графики, а сразу же замахнулся на большее, быстро превратившись в мощную мультимедийную технологию, став практически отраслевым стандартом во многих областях компьютерных технологий. Буквально сразу же пакет перерос рамки системы Mac OS и был признан даже такими гигантами рынка и прямыми конкурентами Apple, как Microsoft, IBM, Sony и др. Тысячи программных средств были созданы с помощью QuickTime или при его поддержке. До сих пор такие продукты, как Adobe Premiere или AfterEffects, при инсталляции требуют наличия QuickTime, а значительная часть Web-узлов, содержащих видео, панорамы или мультимедийные презентации, применяет QuickTime-технологии. QuickTime используется в Интернете и в потоковом видео (как альтернатива NetShow от Microsoft или RealVideo от компании RealNetworks), и в панорамной фотографии (фотографы, занятые созданием виртуальных панорам, даже дали цилиндрической проекции имя QTVR — названия от формата Quick Time Virtual Reality), и в области передачи звука (QuickTime поддерживает практически все звуковые форматы — от MIDI-файлов до MPEG-1 Layer 3, или, как его обычно называют, MP3). Таким образом, технологии QuickTime являются полным межплатформенным решением для создания, редактирования, сохранения и передачи мультимедийной информации любого рода (видео, звука, объектов виртуальной реальности, 3D-объектов, растровой и векторной графики, а также просто текста).

Раньше несовместимость различных форматов и платформ зачастую оказывалась непреодолимым барьером на пути обмена мультимедийными данными, и только QuickTime впервые позволил без проблем воспроизводить и редактировать любую мультимедийную информацию, созданную с помощью различных программных и аппаратных средств, не задумываясь о ее совместимости. При этом существенно облегчается создание так называемых гибридных дисков. Сегодня QuickTime поддерживает огромное число форматов и кодеков (причем как для платформы Macintosh, так и для PC).

     

QuickTime и атаки хакеров

Если вы давно не обновляли версию проигрывателя QuickTime от Apple Systems, то вам следует проверить, какая именно версия у вас стоит. Дело в том, что в QuickTime версии 5 обнаружились лазейки в системе безопасности.

Для того чтобы воспользоваться этой лазейкой, злоумышленник должен передать вам специальный код (например, с загружаемой на ваш компьютер Web-страницы или вместе с HTML-письмом). Как только зараженный этим кодом объект откроется на вашем компьютере, QuickTime 5 будет исполнять код злоумышленника. Это стало возможным за счет одного из ActiveX-компонентов, встроенных в QuickTime 5, и касается только пользователей Windows. Самое простое и безболезненное решение проблемы — установка обновления мультимедийного проигрывателя, в котором указанная ActiveX-лазейка отсутствует. Напомним, что текущая версия QuickTime — 6.5.

 

Таким образом, QuickTime можно назвать универсальным «языком» компьютерного общения, который предоставил возможность управлять бурно растущими потоками мультимедийной информации.

Тем не менее далеко не всем пользователям компьютеров в полной мере известны возможности, которые предоставляют им технологии QuickTime. Для рядового пользователя QuickTime ассоциируется прежде всего с мультимедийным плеером, реже — с PictureViewer (средством для просмотра рисунков), а также с подключаемыми модулями для Интеренет-браузеров (именно такой пакет можно бесплатно загрузить с сайта http://www.apple.com/quicktime).

На самом деле QuickTime представляет собой общую технологию компании Apple, предназначенную для работы с мультимедийными приложениями. Эта технология, которая носит название QuickTime Media Layer (QTML), условно подразделяется на три части:

• промышленный стандарт QuickTime, предназначенный для хранения, редактирования и проигрывания видео, звука, графики и текста, который, кстати, был принят за основу при разработке формата MPEG-4;

• QuickTime VR (Virtual Reality) — технология создания и просмотра объектов виртуальной реальности;

• QuickDraw 3D, позволяющий просчитывать в реальном времени трехмерную графику.

В этом смысле QuickTime является стандартом программной архитектуры для создания, редактирования и публикации мультимедийных сред и основой наиболее уважаемых в компьютерной индустрии инструментальных средств для их разработки. Скажем, такие продукты, как Adobe Premiere, Adobe After Effects, Avid Cinema, Radius Edit или один из наиболее популярных в последнее время на платформе Mac пакет Apple Final Cut, были ли бы невозможны без использования технологии QuickTime.

Впрочем, сегодня практически в любом приложении, так или иначе связанном с видео и компьютерной графикой, — от простейших графических редакторов до сложнейших систем реального времени и трехмерной анимации — вы найдете в меню пункт «Сохранить в формате QuickTime». Воспользовавшись этим пунктом меню, вы можете быть уверены, что ваш файл будет прочитан практически любым пользователем.

Что касается создания музыкальных и видеороликов, то в свое время именно в QuickTime была реализована наиболее эффективная технология синхронизации дорожек по времени, которой компания Apple до сих пор заслуженно гордится. Сложность такой синхронизации состоит в том, чтобы корректно распределить нагрузку на различные аппаратные и системные ресурсы в режиме реального времени с учетом конкретной конфигурации локальной системы или при передаче по Интернет-протоколам.

     

Объемный интерфейс

Подобно тому, как когда-то текстовый интерфейс компьютеров компания Apple поменяла на графический, сегодня проводятся эксперименты по выводу компьютерного интерфейса в третье измерение. Так, например, появляются на свет всякие штуковины типа SphereXP (http://www.hamar.sk/sphere/). По сути, данный интерфейс эмулирует объемный рабочий стол, на котором документы и программы как бы висят в воздухе (то есть нет необходимости листать открытые окна, чтобы найти нужное, — достаточно просто «повернуть» пространство, в котором они висят). Такой 3D-десктоп управляется неким шаром (см. в нижнем правом углу рисунка). Пока это осуществляется при помощи мыши, но вполне разумно будет ввести какое-нибудь объемное устройство, которое заменит в этом случае и привычные манипуляторы (в принципе, что-то подобное уже имеется в системах проектирования CAD/CAM).

 

Объемный интерфейс

Объемный интерфейс

С окошками программ на таком десктопе можно делать что угодно — крутить, складывать, поворачивать на любой угол и располагать в любых позициях. Но, к сожалению, при двойном щелчке мыши на таком живописном окне все равно появляется плоская, как доска, и примитивная поверхность приложения, поскольку производители программ до объемных интерфейсов еще не додумались.

Возможно, кому-то данный подход покажется непривычным или смешным, но следует напомнить, что столь же непривычными и смешными казались в свое время графические интерфейсы, придуманные компанией Apple, а сегодня нам уже кажутся чудаками последние приверженцы командной строки.

 

Понятно, что одной только структуры данных недостаточно для полноценного функционирования такой системы, тем более что «дорожкой» (tracks) в формате QuickTime могут быть данные произвольной структуры. Так, например, в панораме виртуального музея может стоять экран, на котором будет воспроизводиться фильм, при этом звуковое сопровождение фильма должно строго следовать за артикуляцией персонажей даже в том случае, если мы осуществляем по музею виртуальную прогулку. Кроме того, информация может поступать как с локального источника (жесткого диска, CD- или DVD-плеера), так и с удаленного (например, из Интернета), поскольку QuickTime поддерживает и потоковые технологии, позволяющие передавать и воспроизводить мультимедийные данные в режиме реального времени.

Разработчики Apple блестяще справились с этой задачей, и в любом QuickTime-ролике все дорожки отлично синхронизированы. Более того, каждая дорожка имеет независимую шкалу времени, которая соотносит скорость потока информации с течением реального времени, что открывает возможность свободного управления временем для каждой дорожки. При этом данные с какого-либо носителя обрабатываются соответственно своему типу (расшифровываются, декомпрессируются и т.д.) с помощью определенного кодека или компонента QuickTime (причем в Mac OS все компоненты QuickTime являются системными и прописаны в ядре). В результате такой гибкой поддержки данных, потоки, получаемые с любых независимых дорожек, приводятся в QuickTime к стандартизированному типу и «подаются» пользователю (на экран, другое средство отображения или через звуковые динамики) хорошо синхронизированными и легко управляемыми с помощью различных компонентов пользовательского интерфейса.

Такая технология является основой не только для музыкального воспроизведения или цифровых фильмов, но и для любой другой синхронизируемой формы управления.

Каждый ролик QuickTime Movie состоит из двух частей: общей информации и собственно данных. В общем разделе содержатся сведения о пользователе (в частности, информация о правах использования данного ролика), а также целый ряд служебной информации: о типах использованных в ролике данных, алгоритмах и методах сжатия и т.д. Так что ролик QuickTime содержит не только данные в некотором формате представления, но и, по существу, куски кода, необходимые для интерпретации этих данных. Подобное построение структуры данных является залогом универсальности формата QuickTime, где каждая дорожка предполагает определенный набор операций (в том числе проигрывание), и в этом смысле все дорожки с точки зрения внешнего управления одинаковы.

Как мы уже упоминали, поддерживаемые типы данных включают помимо видео и звука следующие составляющие: графика, анимация, текст, спрайты, а также панорамы виртуальной реальности (для поддержки некоторых форматов базовый набор QuickTime нужно дополнять соответствующими кодеками). Отметим, кстати, что QuickTime-ролик дает разработчикам такую уникальную возможность, как многоязычные текстовые дорожки.

В начало В начало

Сферические лошади в вакууме

На одной из инновационных технологий компании Apple, позволяющей представлять объемные объекты и виртуальные панорамы при помощи QuickTime-технологий, мы остановимся отдельно. Во-первых, потому, что одной из первых программ, сделанных специально для составления виртуальных панорам из отдельных кадров, можно считать именно QuickTime VR Authoring Studio, которая впервые появилась в 1997 году. Важно отметить, что компания Apple Computers предложила эту программу в едином пакете с уникальным форматом для представления виртуальных панорам QuickTimeVR (QTVR) и бесплатной программой для их просмотра. Собственно сама аббревиатура VR, которая означает Virtual Reality, была введена специально для обозначения виртуальной панорамы.

По существу, QuickTime VR — это целая система для создания среды погружения в виртуальную реальность, созданную из обычной фотографической панорамы. При этом панорамный вид помещений или объектов, созданных в технологии QuickTime VR, позволяет проводить для пользователей виртуальные 3D-экскурсии (причем для этого совсем необязательно приобретать специальные очки, шлем или перчатки). Движения мыши в разные стороны соответствуют поворотам головы, а нажатия на особых областях («порталах») позволяют переходить к другим частям панорамы или показывать 3D-объекты. Предусмотрено также масштабирование виртуального изображения. Различные примеры панорам, сделанных в формате QuickTime VR, вы можете посмотреть, например, на сайте http://geoimages.berkeley.edu/wwp.html. Причем начиная с пятой версии пакета QuickTime стало возможным воспроизводить не только круговые, но и сферические панорамы.

Трехмерные объекты, как и ролики-панорамы, конструируются из плоских фотографических изображений с помощью специальных приложений и предоставляют возможность не только путешествовать в виртуальном мире, но и рассматривать находящиеся там объекты со всех сторон. Причем 3D-объекты в технологии Quick Draw 3D получать довольно просто. Какой-либо объект фотографируется цифровой камерой с разных сторон, с помощью специальных программ эти фотографии «склеиваются», после чего вы получаете возможность рассматривать этот объект со всех сторон, вращая его мышью в окне QuickTime Player (или, при наличии специального модуля, в любом Интернет-браузере). Данная технология, безусловно, займет свое место среди других 3D-технологий и пригодится, например, в Интернет-магазинах, где покупатель получит возможность как следует рассмотреть предлагаемый товар, или в виртуальных обзорах для лучшего знакомства с новинками (так, например, на известном сайте http://www.steves-digicams.com/ во многих обзорах по цифровым камерам читатель может покрутить фотоаппарат в разные стороны).

Средства просмотра таких виртуальных панорам и 3D-объектов реализованы и для Macintosh, и для Windows в QuickTime Player начиная с версии 2.0, но, к сожалению, инструментарий для подготовки таких панорам и 3D-объектов компания Apple выпускает только для Mac OS. Та же программа QuickTime VR Authoring Studio реализуется только на компьютерах Apple. Кстати, о достоинствах этой программы говорит тот факт, что она не претерпела каких-либо серьезных изменений за годы своего существования и до сих пор владельцы компьютеров Apple отдают ей безусловное предпочтение перед другими программами для подготовки панорам и 3D-объектов в формате QuickTime.

В начало В начало

 

QuickTime- программирование

Б ыло бы странно, если бы компания Apple ограничилась только плеером и не позаботилась о том, чтобы ее пользователи могли использовать достижения QuickTime в своих программах. Разумеется, с помощью QuickTime Player писать программы нельзя, но вот сама спецификация QuickTime содержит открытый и подробно документированный набор стандартных вызовов функций (API), которые программист может задействовать при написании собственного приложения для того, чтобы реализовать все возможности, предоставляемые технологиями QuickTime. И многие разработчики этим активно пользуются. Так, например, знаменитая компания Kaydara, Inc. (недавно она вошла в состав не менее знаменитой компании Alias), выпускающая продукты семейств MotionBuilder (www.kaydara.com) — пакеты для создания трехмерных анимированных персонажей, использует возможность предварительного просмотра именно в формате QuickTime. Этот факт особенно интересен тем, что по сути результатом применения пакетов MotionBuilder являются модели и запись их движения в реальном времени (то есть какое-либо видео или графика в данном случае отсутствуют). Однако это не мешает при помощи специального модуля (plug-in) осуществлять визуализацию внутреннего формата пакетов MotionBuilder и просматривать полученную анимацию в QuickTime Player. Пользуются технологиями QuickTime и другие производители игр, фильмов, а также цифровых персонажей для телевидения и Интернета. Таким образом, технологии QuickTime находят широкое применение в аудиовизуальной индустрии.

Нельзя также не упомянуть и то, что формат QuickTime полностью поддерживает Интернет-программирование — языки HTML и Java, что еще больше расширяет его возможности.

КомпьютерПресс 11'2004