Кодек x264, как и полагается бесплатным оборванцам, управляется через командную строку – обстоятельство, способное порадовать разве что теоретиков большого секса – из тех, кто вместо поездок в Крым годами ковыряется в гараже, растачивая кожуха и шмакодявя патрубки своим стальным коням. Не удивительно, что честным пацанам приходится применять GUI, внешнюю графическую оболочку. «Гуй» для x264 называется MeGUI, однако, похоже, и он заточен под адептов малакии: обилие настроек таково, что впору опрокинуться. Кто не верит, может полюбоваться скриншотами [1] и даже освоить программу в свободное от жизни время, вот только меня – увольте.
Единственно гуманный вариант кодирования видеофайлов в AVC/H.264 – NeroDigital AVC – утилита, дружественная ламерам и при этом нисколько не уступающая связке x264 + MeGUI по качеству продукта на выходе. Вот как это делается:
• В первом окне задаете фронт работ – перекодировка DVD и видео в Nero Digital (проприетарное название AVC/H.264), которая позволяет использовать в качестве исходника практически любой видеоматериал, либо перекодировка главного фильма в Nero Digital, при которой за бортом остается меню DVD-диска и шелуха пугательно-запретительных роликов. Обратите внимание на то, что первые три опции стартового окна программы (перекодировать весь DVD в DVD, перекодировать главный фильм в DVD и создать DVD) нас не должны интересовать – это простенькие операции авторинга, аналогичные тому, чем занимаются наши старые знакомцы DVDFab и CloneDVD [2].
• В основном окне программы вы нажимаете на кнопку «Импортировать файлы» и добавляете любое количество исходников (NeroDigital AVC самостоятельно анализирует структуру DVD-диска и выдает готовый список видеофрагментов). Затем определяете желаемый размер файла на выходе. Это можно делать либо по выпадающему списку «Размер носителя» (галочка установлена), либо вручную меняя положения движка на линейке (движок включается при отключенной галочке на «Размере носителя») [3].
• Настройку «Категория Nero Digital» оставляете без изменения по умолчанию – «Nero Digital AVC» (что соответствует кодеку AVC/H.264), профиль Nero Digital установите на «Standard – AVC», поскольку профили «Cinema AVC» (разрешение 1280х720) и «HDTV AVC» (1920х1080), как вы догадываетесь, надлежит использовать не для перекодирования DVD-диска, а для первичного кодирования непережатых исходников видеокамеры HDV.
• Нажимаете кнопку «Далее» и выбираете в левой панели «Установки Nero Digital». Единственное изменение в настройках по умолчанию, какое я рискнул бы рекомендовать, – переключите «Управление скоростью» с «Быстрого кодирования (1-проходное)" на «Высококачественное кодирование (2-проходное)" (опция «Управление скоростью»). Существенное увеличение времени кодирования будет компенсировано не менее существенным улучшением качества конечного результата. Все прочие настройки – «Максимальный диапазон векторов», «Свойства GOP», «Максимальные B-Frames», «CABAC», двунаправленный и взвешенный прогноз, разделы макроблока (по умолчанию – все включены), психовизуальные улучшения – бога ради! – оставьте без изменения.
• Жмете на «Запись» и записываете результаты кодирования в файл либо сразу прожигаете болванку.
Как говорят поганые работники рекламного бизнеса: «Вы будете приятно удивлены качеством нашей продукции». Фильмы, кодированные AVC/H.264, и в самом деле много лучше DivX и XviD.
Заключительный мазок – просмотр. AVC/H.264 замечательно играет и VLC Media Player, и «Гомик» (с предварительной доустановкой аудиокодека AAC), и, разумеется, «родной» Nero ShowTime из того же пакета Nero Premium 7. На КПК AVC/H.264 любит и уважает легендарный Core Player (TCPMP), на Sony PSP – разжеванный неделей раньше PMP MOD AVC 1.02. Короче, кодируйте и балдейте!
ИДЕИ: Пять инвариантов ИТ-образования
Автор: Шутов, Илья
Поводом для написания этой статьи, как ни странно, послужила очередная попытка воспользоваться интерфейсом Office 2007. Видимо, я не попадаю в то счастливое подмножество пользователей, для которых эргономисты компании Microsoft проводили такие глобальные переработки. А может, влияние книг – например, Джефа Раскина «Интерфейс: новые направления в проектировании компьютерных систем» – не дает насладиться новым facelifting в полной мере. Подсознание периодически выдает ужасающие метрики для доступа к той или иной базовой функции (вложенная нумерация заголовков, нумерация таблиц и рисунков, работа с колонтитулами, вставка формул, работа со стилями и пр.). Остается читать по губам: «использование таких „сложных“ функций не входит в круг обязанностей типичного пользователя», что не может не повергать в уныние. Но и соскочить никуда нельзя, поскольку Word является повсеместным корпоративным стандартом (OpenOffice можно не упоминать, по своей сути он является хоть и догоняющим, но все же бежит по той же самой тропинке), не позволяя при этом удобно и быстро готовить документы в заданном формате. Особенно если речь идет о документе, содержащем больше одной страницы, а также несколько иллюстраций и таблиц.
Возможно, сложившаяся ситуация зависит от качества полученного образования, причем зависит многогранно. В данном случае интересен аспект ИТ-образования, получаемого в университетах и институтах естественнонаучного направления. В главной кузнице кадров, МГУ им. М. В. Ломоносова, это факультеты ВМиК, физический, мехмат. Состояние современного рынка труда таково, что очень многие студенты упомянутых факультетов посвящают часть жизни работе программиста. Даже на непрофильных факультетах существуют курсы (поточные лекции/практические занятия, примерно два года), посвященные азам программирования. Однако содержание материала оторвано от жизни. То, что было пригодным лет пятнадцать-двадцать назад, сейчас требует переосмысления. Так какими следовало бы сделать эти курсы, чтобы их полезность (для студента в частности и для общества в целом) выросла многократно? Попробую предложить модель, которая является результатом практического опыта, скорректированного сообразно нынешним мировым тенденциям.
Типичный предмет, который преподается, называется «Программирование» или «Информатика». И обучают на этих курсах азам программирования на каком-либо языке из семейства C++/Pascal. Дают базовый синтаксис, учат натягивать на форму объекты и писать обработчики. Иногда рассказывают о быстрых методах сортировки. А затем студенты, прослушавшие такие курсы (а особо одаренные еще и написали несколько простеньких программок), считая себя гуру в указанном вопросе, приходят на работу. И оказывается, что ничего-то они не знают, а то, что знают, совершенно не годится с точки зрения бизнеса. И приходится опять в них вкладывать и обучать элементарным вещам. Причем, как ни удивительно, эти элементарные вещи имеют всеобъемлющий характер и могут быть распространены гораздо дальше общепринятых рамок «Программирования». О чем же идет речь?
Прежде всего при составлении программы следует понимать, что количество информации вокруг нас, равно как и ее генераторов, непрерывно возрастает. И главное – научиться эффективно структурировать эту информацию, находить взаимосвязи и выделять необходимое. Поэтому занятие частностями, как-то: изучение интерфейса Word, детальное объяснение ООП на примере С++ и пр. на протяжении большей части курса слишком расточительно. Нужно искать инварианты в существующем мире и давать их студентам вместе с инструментарием для дальнейшего познания.
Какие инварианты я бы выделил в настоящий момент? В первую очередь – искусство совместной работы. Не каждый сам по себе что-то пишет в своей норке, а группа создает нечто, что одному человеку не осилить (из-за сложности, нехватки времени или большого объема). А совместная работа подразумевает разделение кода и текста, версионность документов; формирование различных баз знаний, систем багтрекинга и увязку их с системой контроля версий; использование форумов и досок объявлений, проведение телеконференций. Необходимо рассказать о таких возможностях, показать лучшие практики, продемонстрировать продукты и для закрепления знаний устроить лабораторные работы. Причем все это нельзя давать сухо, конспективно. Желательно привнести популяризаторскую изюминку, далеко ходить не надо – откройте книги Перельмана. Возможно, полезной будет установка одного-другого продукта на лабораторном занятии. Можно, например, разделить группу на две команды, каждая из которых ставит и настраивает свой продукт, а потом сравнить результаты и сделать выводы. И после этого предложить сделать те же самые вещи при помощи Excel-файлов. Как ни смешно, однако ситуация, когда при помощи одного Excel-файла пытаются собрать информацию от нескольких десятков сотрудников и поддерживать ее в актуальном состоянии (делегируя актуализацию самим сотрудникам) – ужасающе типична для российских компаний. То есть снова и снова возникает одна и та же идея использования бинарного файла закрытой структуры для совместной работы, хотя постановка задачи вопиет о необходимости использования элементарной 3-звенной CRM-системы [CRM (customer relationship management) – управление взаимодействием с заказчиками. 3-хзвенная архитектура представляет собой решение в котором существуют 3 уровня: уровень данных (база данных), уровень бизнес логики (сервер приложений) и презентационный уровень (тонкий или толстый клиент на машине пользователя)].