Шарманка
АрхивОдин мой знакомый, большой поклонник наладонников на базе Windows Mobile, однажды охарактеризовал Palm как «записную книжку с шарманкой».
Один мой знакомый, большой поклонник наладонников на базе Windows Mobile, однажды охарактеризовал Palm как «записную книжку с шарманкой». Охарактеризовал, замечу, метко, ибо шарманкой применительно к «Палму» можно назвать и встроенный MP3-плейер, то есть возможность крутить музыку, и возможность крутить сайты в браузере. И еще одну вещь можно крутить на «Палме» — кино. А точнее — видео в различных цифровых форматах. Превратить наладонник в кинопроектор, вопреки расхожему мнению, не так уж сложно.
Вопрос «зачем» я бы отмел за неактуальностью. Если у вас есть «Палм» и если вы регулярно читаете «Компьютерру», то тяга к экспериментам у вас не отбита ни средней школой, ни ненормированным рабочим днем. При всей иррациональности этой процедуры (смотреть кино на большом экране гораздо естественнее, нежели на экранчике шириной в ладонь), надо сказать, что фильмы на «Палме» смотрятся более чем оригинально. Разумеется, чтобы записать в КПК фильм целиком, вам потребуется неслабый объем памяти на карточке (здесь же впору задуматься и о емкости батарей), но что касается короткометражных видеозаписей, к коим относятся мультфильмы, трансляции спортивных мероприятий, музыкальные клипы и бог весть что еще, то их можно смотреть вполне свободно.
Что нам потребуется? Прежде всего — программа-видеоплейер. Тут существует два варианта: тривиальный и концептуальный. Тривиальным я бы назвал использование дареного вам при покупке «Палма» коня — Kinoma Player. Концептуальным же вариантом является использование софта от сторонних разработчиков. И несмотря на то, что концептуальный способ иметь при себе важнейшее из искусств выглядит — с оглядкой на многие сутки экспериментов — куда привлекательнее, мы рассмотрим оба варианта.
Во-вторых, нам не обойтись без редактора, позволяющего разрезать видео на куски, уменьшать или увеличивать разрешение кадра, а также переводить видеофайл из одного формата в другой. Подобным программам несть числа. Из тех, что на слуху, можно назвать хотя бы Adobe Premiere или Ulead MediaStudio. Если у вас уже есть какой-нибудь из этих монстров и вы активно им пользуетесь, все описанные ниже манипуляции вы сможете легко на него спроецировать. Если же нет, подскажу, как обойтись малой кровью: в стане Open Source довольно давно существует замечательный бесплатный редактор под именем VirtualDub. Его функциональность вполне достаточна для тех процедур, которые мы с вами собираемся проделать. Скачать дистрибутив программы можно с www.virtualdub.org, размер архива последней стабильной версии составляет (крепко сидите?) 665 Кбайт. Остается добавить, что программа не требует даже инсталляции.
Еще может понадобиться набор кодеков для просмотра видео. Что-то вроде K-Lite Codec Pack у вас наверняка есть, но чтобы конвертировать фильмы в Kinoma Player, не обойтись и без QuickTime Player (www.apple.com/quicktime). Трудно сказать, почему PalmOne работает в такой жесткой связке с Apple, однако факт остается фактом: без QuickTime посмотреть видео в «Киноме» не удастся.
Ну и, конечно, нам нужно само кино. Я возьму… да вот, пожалуй, потрясающий австралийский мультфильм Harvie Krumpet, заслуженно получивший в нынешнем году «Оскара» как лучший короткометражный анимационный фильм. Длится он 22 минуты, размер AVI-файла — 260 Мбайт. На этом подготовительный этап заканчивается, и начинается этап основной.
Вариант первый: Kinoma
По правде говоря, Kinoma — совсем не тот плейер, при помощи которого можно с удобством смотреть видеоролики на наладоннике. Почему? Сейчас увидим. Принцип работы Kinoma Player прост как апельсин: файл в формате AVI при помощи программы-конвертера Kinoma Producer переводится в понятный «Палму» формат PDB и загружается в наладонник. Поскольку PDB представляет собой не что иное, как палмовскую базу данных, то записать полученный видеоролик можно даже во внутреннюю память, однако его длительность, безусловно, будет ограничена жалкими несколькими минутами. Поэтому будем считать наличие SD/MMC-карточки емкостью 128 (а лучше 256 Мбайт) обязательным.
Перевести видео из формата AVI в PDB тоже проще простого. Конвертер Kinoma Producer распространяется на диске, прилагаемом к Palm Tungsten T/T2/T3. На диске к Tungsten E по каким-то маркетинговым соображениям его нет, однако это не мешает загрузить его с сайта www.kinoma.com (не бесплатно, разумеется). Аскетичное окно конвертера имеет три вкладки и три раскрывающихся списка. Из списка Encoding следует выбрать «Palm» (если, конечно, у вас именно Palm, а не, скажем, Handspring Treo), а рядом — его конкретную модель. Список Export Location позволяет задать место сохранения PDB-файла (не рекомендую использовать Hotsync — хотя бы потому, что вы вряд ли будете удовлетворены первоначальным результатом настолько, чтобы сразу перекинуть кино в Palm). Осталось добавить ваш файл и перейти в следующую вкладку (рис. 1) (AVI-файл в 260 Мбайт — едва ли не максимум для конвертирования. Больший файл (а на слабой машине — и гораздо меньший) просто подвесит Kinoma Producer намертво).
От настроек, которые вы в ней установите, будет напрямую зависеть качество видеоролика. Число кадров в секунду для анимационного фильма можно свободно уменьшить до двенадцати. Что касается битрейта, то, увы, выставлять значение меньшее 640 кбит/с — значит потерять качество настолько, что ни о каком удовольствии от просмотра и речи быть не может. В аудионастройках для некоторого уменьшения размера конечного файла можно выбрать монозвук и частоту дискретизации 11 кГц. В последней вкладке — Layout — устанавливается разрешение кадра. Здесь тоже можно сэкономить, но лишь в ущерб качеству, ибо перспектива смотреть кино в половинку-четверть экрана «Палма» лишает затею всякого смысла. Всё. Нажимаем кнопку Convert Files и ждем результата. Конвертирование идет безумно долго, но для чистоты эксперимента я все же дождался окончания процедуры и готов сообщить плохую новость: размер PDB-файла превысил 350 Мбайт! Стоит ли говорить, что этот результат перечеркивает все наши труды. Как выяснилось позже, принцип работы Kinoma ничего другого и не предполагает: таковы особенности давно устаревшего видеоформата Cinepak, выбранного разработчиками, похоже, задолго до отказа Palm от использования медленных процессоров Motorola DragonBall. Вердикт очевиден: для просмотра роликов длиннее трех-пяти минут Kinoma Player непригоден.
Впрочем, я не зря упомянул VirtualDub среди необходимых нам инструментов. С помощью этой программы можно уменьшить размер кадра и переписать видеопоток с меньшим битрейтом без значительной потери качества, а уже потом загружать файл в Kinoma Producer. Однако даже в этих тепличных для «Киномы» условиях конечный PDB-файл превосходит по размеру AVI в полтора-два раза.
Вариант второй: MMPlayer
Итак, идеологические разногласия не позволили мне подружиться с Kinoma Player, поэтому оставался второй вариант: использовать программу MMPlayer (www.mmplayer.com). Это решение лежало на поверхности: MMPlayer активно обсуждается в форумах и находится во всех файловых архивах Интернета. Уже потом, поискав достойную альтернативу этой программе и не найдя ее, я понял, что этот вариант — единственный на сегодняшний день, какими бы недостатками он ни обладал.
Для начала — ложка дегтя. За все время своего существования MMPlayer не добрался даже до первого релиза, номер последней версии — 0.2.11. При этом разработчики требуют за программу 15 долларов, что, в общем-то, справедливо, но только для некоторых версий (например, 0.2.8 или 0.2.10). Многие же промежуточные релизы нестабильны, и их использование почти всегда заканчивается сбросом наладонника в софт-ресет. Еще один нюанс: основной скин программы не очень удобен, поэтому рекомендую скачать подходящий с официального сайта TinySkin, который, несмотря на простенький дизайн, куда более функционален.
Но все эти мелкие и преходящие (как хотелось бы надеяться) недостатки меркнут перед огромным преимуществом MMPlayer: он понимает форматы MPEG и AVI, а значит, позволяет крутить кино на «Палме» без предварительного конвертирования. Понятно, что объем несжатого фильма в MPEG2 (да даже и в VCD) куда больше, чем вмещает карточка памяти, да и время записи такого гигантского файла тоже переваливает за несколько часов. Поэтому, установив при помощи Hotsync MMPlayer на наладонник (во внутреннюю память, но не на карточку, ибо плейер требует наличия определенных библиотек), придется уменьшить размер AVI-файла до приемлемых размеров и без значительной потери качества, для чего потребуется вышеупомянутая программа VirtualDub.
Разумеется, затея с переносом шедевров кинематографа на «Палм» потеряла бы всякий смысл, займи вся процедура хотя бы полчаса: с перспективой каждый раз ковыряться в настройках программ видеомонтажа энтузиазм быстро улетучивается. Поэтому последовательность действий лучше всего свести к нескольким ключевым моментам.
- Разбираться со всеми возможностями VirtualDub необязательно. После открытия видеофайла в главном окне программы (рис. 2) отображаются одновременно два кадра: начальный и измененный. Несколько кнопок, расположенных в низу окна, позволяют перематывать видеозапись вперед-назад.
- Чтобы уменьшить размер файла, нужно знать, что именно уменьшать. Для этого в меню File Х File Information вызываем информацию о файле (рис. 3). Самое важное здесь — размер кадра в пикселах, ведь именно его необходимо уменьшить в первую очередь. В нашем случае он составляет 720х480. Это явно избыточный размер для экрана «Палма» с разрешением 320х320 и даже 320х480. Нехитрые рассуждения позволяют прийти к выводу, что подходящим разрешением при ширине экрана в 320 пикселов и сохранении пропорций изображения будет 320х214. Для широкоэкранного же Tungsten T3 разрешение может быть вообще шикарным и составлять точные 480х320 пикселов, при условии, что вы развернете изображение на 90 градусов в MMPlayer.
- Уменьшается разрешение при помощи фильтров. Окно с их выбором в VirtualDub вызывается через меню Video Х Filters и далее — нажатием кнопки Add. Необходимый фильтр называется Resize. Затем нужно выбрать способ фильтрации. Опыт показал, что наилучшие результаты достигаются при использовании Precise Bilinear или Precise Bicubic, однако для ускорения процедуры можно выбрать просто Bicubic.
- Следующий этап — сохранение видео. В меню Video Х Compression выбираем кодек, в котором впоследствии сохранится наш AVI-файл (рис. 4). Я остановился на DivX, так как это один из немногих кодеков с довольно мощным алгоритмом сжатия. При его конфигурировании нужно установить битрейт видеопотока. Оптимальный вариант — 120 кбит/с, однако на менее мощном процессоре Palm Tungsten E может потребоваться уменьшить его на 20–40 кбит/с. У меня, в частности, возникло пусть незначительное, но не совсем приятное отставание картинки от звука, к окончанию мультфильма достигшее по крайней мере секунды.
- Предпоследняя процедура — сохранение аудио. Здесь все делается аналогично сохранению видео: в меню Audio Х Compression выбирается формат MP3. Оптимальный вариант сжатия — 20 кбит/с при частоте в 11 кГц со стереозвуком. Для кино в наушниках этого вполне достаточно.
- Заключительный аккорд — сохранение результатов в новый AVI-файл, занявшее чуть больше десяти минут, — извлекается клавишей F7.
А теперь — самое главное: размер файла. Он составил всего 25 Мбайт! При таком уменьшении на 128-мегабайтную карточку поместится два часа видео. Думаю, не мне рассказывать палмоводам со стажем, каким образом записать на карточку файл, не имеющий расширения PDB или PRC. Сам я воспользовался утилитой Pilot Install (тех, кому не понравится этот вариант, а также особо дотошных в выборе альтернативной программы для синхронизации отсылаю к статье Сергея Голубицкого «Синхро от А до Я с элементами корейского блуда», «КТ» #539), после чего запустил наконец Harvie Krumpet с помощью MMPlayer (рис. 5) и посмотрел его от начала до конца.