Альтернативные прошивки для iPod
Часть 1.Речь в данной статье пойдёт об альтернативных прошивках для плееров iPod. Информации по данной тематике в сети достаточно, но хотелось бы отрезюмировать всё прочитанное, принимая во внимание личный опыт. Начнём, как водится, с RockBox'a...Лучшее – враг хорошего Данная статья целиком посвящена альтернативным прошивкам для самого распространенного mp3 плеера на планете. Если точнее, то речь пойдёт лишь о двух из них, это RockBox и iPodLinux. Статья, для удобства чтения, будет представлена в двух частях, первая из которых будет посвящена RockBox’у, вторая, соответственно, iPodLinux. Я постараюсь рассказать о преимуществах каждой из них перед оригинальной прошивкой, об установке, настройке и последующем безболезненном удалении с плеера. Если всё задуманное мне удастся, то в конце второй части статьи мы с вами сможем сравнить два эти продукта и выяснить на что и на кого каждый из них ориентирован. Но вначале давайте постараемся найти ответ на вопрос, зачем люди тратят своё время на альтернативные прошивки, что же их не устраивает в оригинальной? Причин на то предостаточно. Это и низкая громкость в сравнении с остальными плеерами, отсутствие полноценного эквалайзера, неполностью реализованный функционал, малое число поддерживаемых форматов и, самое главное, невозможность копировать музыку напрямую в плеер, минуя iTunes, и, как следствие «привязанность» плеера к определённому компьютеру. Это основная часть причин по которым одни люди берут в левую руку книжку по реверс инжинирингу, а в правую пинцет и пытаются сделать лучшее, а другие берут в руки свой плеер, перечитывают по несколько раз мануалы по перепрошивке и пытаются заменить в нём оригинальное хорошее, на то лучшее что напишут первые.RockBox «RockBox это open source прошивка для плееров на жёстких дисках. RockBox полностью переписывает оригинальную прошивку и не использует из неё ни строчки кода.» Вот такое определение можно найти на сайте проекта. RockBox изначально задумывался как прошивка для плееров Archos Jukebox и iRiver, но впоследствии значительно расширил список поддерживаемых моделей, включив в его состав и легендарный iPod. На момент написания статьи RockBox полностью поддерживал следующие модели плееров: • Archos: Jukebox 5000, 6000, Studio, Recorder, FM Recorder, Recorder V2 и Ondio • iRiver: серии H100 и H300 • Apple: iPod 4th gen (чёрно-белый и цветной), 5th gen (Video), Nano and Mini 1st/2nd gen • iAudio: X5 (включая X5V и X5L)Не очень много, но и не очень мало, принимая во внимание то, что прошивка может работать только с плеерами на жёстких дисках. Теперь давайте взглянем на основные возможности прошивки, собственно тот функционал, ради которого и был затеян весь этот проект: • Поддержка MP3, Ogg Vorbis, AC3, AAC, Musepack, Midi, AIFF, ALAC, FLAC, Shorten, WAV, и Wavpack • Пятиполосный параметрический эквалайзер • Возможность создания своей собственной темы для GUI или использование уже существующих • Проигрывание без пауз • Crossfade, Crossfeed, Replay Gain • Увеличенная максимальная громкость • Просмотр на дисплее текстов и графики • Календарь • Игры • Голосовой интерфейс и многоязыковая поддержка • База данных тэгов • Расширение с помощью огромного количества плагинов. • Возможность загрузить оригинальную прошивку в любую минуту нажатием всего одной клавиши • Навигация по папкам и файлам с возможностью копирования и удаления файловУстановка RockBox Все, проводимые мной эксперименты, ставились на старом добром iPod 4G Click Wheel. Плеер оснащён монохромным дисплеем и находится в моём пользовании около 2х лет. За этот период не было абсолютно никаких нареканий на работу плеера с оригинальной прошивкой. Но как мы все отлично помним: лучшее – враг хорошего. Итак приступим. Сам RockBox, фактически, можно разделить на два компонента, а именно: bootloader – программа, установленная во флэш память плеера и говорящая ему какую из прошивок загружать (оригинальную или RockBox) и сам RockBox – прошивку которая хранится на жёстком диске вашего плеера. То, что прошивка хранится непосредственно на жёстком диске, делает её легкообновляемой, но при этом эта особенность скрывает некоторые подводные камни, суть которых я опишу ниже. Теперь перейдём к описанию установки по пунктам: 1. Естественно, что перед началом установки необходимо скачать сам RockBox и некоторые специфические инструменты которые помогут нам в его несложной адаптации к вашему плееру. Качаем:ipodpatcher – утилита для работы с флэш памятью плеера и чтения/записи её содержимогоipod_fw – утилита для работы с файлами-образами, которые создаёт утилита ipodpatcherbootloader – файл с расширением .bin, файл-образ загрузчика . Внимание, для каждой модели iPod существует свой bootloader, качайте только тот файл, который соответствует именно вашей модели плеера:iPod Color/Photo iPod 4G (Grayscale) iPod NanoiPod Video/5GСам RockBox лежит тут. Вам понадобится выбрать из списка свою модель плеера и нажать на ссылку «latest» рядом с ней. Тем самым вы скачаете самую свежую версию RockBox’a для вашего плеера. Для удобства объяснения сохраните все эти файлы в папке c:/rockbox (к сожалению не смог разобраться как в редакторе новостей поставить обратный слэш, поэтому не ругайте за кривизну) В итоге в этой папке у вас должно оказаться всего четыре файла:ipodpatcher.exeipod_fw.exebootloader-Х.bin (Х- индекс модели вашего плеера)rockbox-Х-Y.zip (X- индекс модели вашего плеера, Y- индекс билда прошивки) 2. Подключаем iPod к компьютеру, если при этом автоматически запустится iTunes, то в свойствах программы понадобится убрать галку «автоматически запускать iTunes при подключении iPod» и поставить галку «разрешить использовать iPod в качестве съёмного диска». Закрываем iTunes, он нам больше не понадобится… Никогда. 3. Дальнейшие действия будут напрямую связаны с командной строкой. Итак, выполняем следующее Пуск -> Выполнить, и в командной строке пишем «cmd» (без кавычек разумеется, тем самым мы запускаем консоль в которой будут отражаться результаты всех наших команд и манипуляций). Если вы не знаете базовых синтаксических конструкций командной строки, то вам следует ознакомиться с этим. 4. Первым делом переходим в папку c:/rockbox. Нам нужно определить каким диском iPod «физически» подключен к компьютеру. Для этого выполняем следующие простые команды:Ipodpatcher 0 Ipodpatcher 1Ipodpatcher 2Ipodpatcher …и т. д. до тех пор, пока программа не найдёт ваш iPod (вы сразу увидите это, т.к. утилита выдаст объём жёсткого диска вашего плеера и тип файловой системы на нём). Вам нужно будет запомнить номер который вы определили с помощью этой программы, он понадобится для дальнейшего копирования оригинальной прошивки (в моём случае это номер 1, но всё зависит от того насколько много устройств с жёстким диском находиться у вас, в данный момент, в системе, вы запросто можете получить число более шести). 5. Теперь нам нужно сохранить родную прошивку вашего плеера путём копирования её с iPod’a. Для этого выполняем следующую команду:ipodpatcher -r Х bootpartition.bin (где Х - тот номер, который вы запомнили)После этой команды в папке c:/rockbox появиться файл bootpartition.bin. Настоятельно советую вам сразу же сделать его резервную копию. 6. Следующей командой вы извлечёте из сохранённой оригинальной прошивки все необходимые компоненты:ipod_fw -o apple_os.bin -e 0 bootpartition.binПосле этой команды в директории c:/rockbox появиться файл apple_os.bin 7. Эту команду следует выполнять ТОЛЬКО владельцам iPod Video. Если вы оным не являетесь, то смело переходите к пункту 8. А счастливые обладатели Video iPod пишут в командной строке следующее:ipod_fw -o apple_sw_5g_rcsc.bin -e 1 bootpartition.bin Дело в том, что iPod Video имеет дополнительное программное обеспечение для корректной работы с видеочипом. Эта команда обрабатывает именно его. 8. Теперь мы должны скомпилировать бутлоадер в котором будет разрешена загрузка RockBox’a. Делается это следующим образом (обратите внимание на то, что для разных моделей iPod используются разные команды, выберите команду именно для вашей модели):iPod 4G (чёрно-белый): ipod_fw -g 4g -o rockboot.bin -i apple_os.bin bootloader-4g.bin iPod Color/Photo:ipod_fw -g color -o rockboot.bin -i apple_os.bin bootloader-color.bin iPod Nano:ipod_fw -g nano -o rockboot.bin -i apple_os.bin bootloader-nano.bin iPod Video:ipod_fw -g video -o rockboot.bin -i apple_os.bin bootloader-video.bin iPod Mini 1G:ipod_fw -g mini -o rockboot.bin -i apple_os.bin bootloader-mini1g.bin and iPod Mini 2G:ipod_fw -g mini -o rockboot.bin -i apple_os.bin bootloader-mini2g.binПосле этой команды ваша директория c:/rockbox пополнится ещё одним файлом.rockboot.bin – файл загрузчик. 9. Ответственный момент. Мы заливаем наш скомпилированный загрузчик в iPod. Для этого нужно выполнить команду:ipodpatcher -w Х rockboot.bin (где Х - тот номер, который вы запомнили)Тем самым мы записали на плеер загрузчик (bootloader) – программу которая даст возможность загружать RockBox наряду с оригинальной прошивкой. Обратите внимание на то, что самого RockBox’a в плеере ещё нет. 10. Теперь можно закрыть консоль, она нам больше не понадобится, все дальнейшие манипуляции доступны даже первокласснику. 11. Отключаем iPod от компьютера. Плеер сразу начнёт перезагружаться и… Выдаст ошибку не найдя на своём жёстком диске RockBox’a. Но не стоит паниковать, это нормальное явление, не найдя того что ему нужно, bootloader загрузит оригинальную прошивку. 12. После того как оригинальная прошивка будет загружена, вновь соедините плеер с компьютером. 13. Далее, с помощью проводника открываете ваш плеер и прямо в корневой каталог (плеера) распаковываете файл c:/rockbox/rockbox-Х-Y.zip (X- индекс модели вашего плеера, Y- индекс билда прошивки). В корневом каталоге вашего плеера окажется файл rockbox.ipod и папка .rockbox. 14. Отключайте ваш плеер от компьютера. После того как он перезагрузиться, вы сможете наслаждаться своей новой прошивкой... Поздравляю вас……Конечно же, довольно сложно будет насладиться увиденным, да и поздравления так же достаточно преждевременны, ибо, как выяснилось, установить RockBox – это пустяки в сравнении с его тонкой настройкой на корректную работу.Впечатления от работы с RockBox После загрузки новой ОС, пользователь вынужден лицезреть графический интерфейс, прямо скажем, достаточно андеграундной наружности. Помимо жутко мелкого шрифта, ущербных иконок в области statusbar’a, и переставшего «щёлкать» при прокрутке меню ClickWheel’a, нам ещё предлагают наблюдать scrollbar с левой стороны дисплея. И если шрифт и иконки представляется возможным вылечить, то ClickWheel и scrollbar не восприимчивы ни к чему. При этом, за скроллинг в системе отвечают 7 независимых настроек, среди которых нет ни одной которая управляет расположением scrollbar’a относительно сторон экрана. Удивительно, но это факт. Но опустим мелочи и перейдём к более важным вещам, например взаимодействию с интерфейсом. Управление оказалось абсолютно неинтуитивным. Дело в том, что функции всех кнопок остались прежними, но общая иерархия меню… Вот она-то и подкачала... Очень сложно сориентироваться и понять, находишься ли ты сейчас в базе данных тегов, или просто в какой-то из папок на диске. Непонятно-как сформированные меню настроек не дают расслабиться ни на секунду. Кажется: вот сейчас опять нажмёшь не ту кнопку и снова придется пробираться к нужному пункту сквозь густые дебри разнообразных подменю. Кроме того, в самом меню нет возможности настройки тех пунктов, которые будут отображаться на основном экране, как это было в оригинальной прошивке от Apple. Некоторые пункты «главного» меню, откровенно говоря, только зря занимают место на главном экране, в то время когда действительно нужные функции упрятаны очень далеко. С другой стороны, удерживание кнопки «menu» в информационном экране проигрываемой композиции (разработчики RockBox’a назвали этот экран wps – while playing screen) вызывает очень простенькое меню из которого можно легко и безошибочно(переключение производиться кнопками ClickWheel’a, а не его сенсорной частью) управлять такими важными функциями проигрывания как повтор трека, повтор плейлиста, проигрывание треков вперемешку или по-порядку. Такая возможность представляется очень актуальной, например, при езде в давке метро, когда, и без того неточные, движения замёрзших пальцев «усиливаются» вашими соседями по подземке. В любом случае эта идея мне очень понравилась, нужно отдать должное изобретательности разработчиков. Теперь расскажу немного про «кастомизацию» интерфейса плеера, что называется «под себя». Итак, чтобы смотреть на мой плеер было не так страшно, первым делом я попытался заменить в нём шрифт на что-нибудь более читаемое. Это оказалось совсем не сложно, благо полный мануал по настройке RockBox’a на английском языке лежит тут, а море разливанное шрифтов лежит на этой странице сайта одного из многих энтузиастов проекта. Выбрав шрифт максимально похожий на тот, к которому я привык, решил взглянуть на то, как изменился WPS. Увиденное, чуть было не повергло меня в шок. Все иконки сбились, шрифт из-за своих размеров отображал едва ли треть требуемой информации. Тут нужно сказать, что внешний вид WPS легко изменяется, нужно просто загрузить с сайта дюжину разных файлов с расширением .wps и выбирать в любой момент тот, к которому душа лежит. Сделав заключение, что для каждого файла .wps нужен свой тип шрифта со своим особым кеглем, я снова отправился на сайт разработчика искать тот файл .wps, который мне подойдёт. Не найдя ничего для себя интересного, решил написать его самостоятельно. Занятие это не такое уж и сложное, если у вас есть желание и несколько свободных часов (Счастливым обладателям плееров с цветным дисплеем скажу, что количество, а главное качество, тех .wps файлов и тем для меню, которое я нашёл в сети для iPod Nano и Video, сможет удовлетворить даже самых взыскательных пользователей). Подробные инструкции по написанию я приводить не стану, но могу сказать что всё в том же руководстве по настройке эта тема подробно описана. Проблему с ужасными иконками в statusbar’е я решил довольно радикально… Я его просто-напросто отключил. Мне кажется, что при навигации по меню, постоянный вывод информации о времени, заряде батарей и текущей громкости не является жизненно необходимым. Хотя есть более гуманный, но при этом такой же простой, способ. Можно вместо иконок отображать цифровое значение громкости и уровня заряда батарей. Ещё хотелось бы рассказать об одной из самых главных фишек прошивки – плагинах, благодаря которым значительно расширяется функциональность. Этих самых плагинов существует огромное количество, в стандартном дистрибутиве RockBox’a их оказалось целых 42 штуки. Правда, треть из этих 42х штук отказались работать, а половина из оставшихся двух третей выглядели явно сырыми и всячески отказывались корректно выполнять возложенные на них функции. По существу плагины делятся на бенчмарки, заставки, игры и прочие прикладные «программки» такие как часы, калькуляторы, текстовые редакторы и словари. Как я уже говорил, плагинов существует огромное множество, ничто не мешает вам скачать из сети то, что вам действительно нужно и при этом удалить из памяти плеера то, что, по вашему мнению, лишь будет зря занимать место. Пару слов нужно сказать о поведении аккумулятора в условиях работы с новым ПО. В разделе настроек RockBox’a есть пункт в котором можно указать прошивке батарея какой ёмкости стоит в вашем плеере. Этот параметр влияет лишь на то, насколько корректно ресурс батареи будет отображаться в системе. На длительность работы плеера это нисколько не влияет, а вот такие параметры, как подсветка, кэширование директорий и интервал задержки перед остановкой жёсткого диска, напротив, оказывают на аккумулятор прямой эффект. От тонкой настройки всех этих параметров будет зависеть насколько долго ваш плеер сможет обходиться без внешнего источника питания. Но как бы сильно вам не хотелось продлить жизнь батарее, я бы не рекомендовал отключать опцию кэширования директорий… Вот мы и подошли к подводным камням, о которых я говорил вам в начале статьи. Всё дело в том, что для кэширования директорий прошивка использует часть быстродоступной памяти которая предназначена для кэширования музыки. Именно поэтому музыкальный буфер уменьшается в размерах и вашему плееру приходиться чаще обращаться к жёсткому диску при проигрывании треков, тратя на это драгоценный ресурс аккумулятора. Но при этом навигация по директориям проходит без каких либо пауз и задержек. Вам придется решить, будете вы использовать плеер лишь для прослушивания музыки, или же будете пользоваться и другими функциональными возможностями прошивки. Заранее могу предупредить, что во втором случае ресурс аккумулятора будет таять буквально на глазах. Несмотря на множество вышеуказанных откровенных минусов и слабых сторон, RockBox обладает просто фантастическим функционалом, присущим полноценным операционным системам. Действительно, все из перечисленных мной в начале статьи возможностей не только реализованы, но и работают. Потрясает навигация по жёсткому диску, она функциональна в полной мере, и в любой момент пользователь может создать папку или удалить ненужную музыку всего с помощью пары кликов. Удивила реализация экранной клавиатуры: почему-то за передвижение курсора вверх-вниз отвечает «сенсорная» составляющая ClickWheel’a, в то время, как за перемещение вправо-влево отвечают его кнопки. Но это уже дело привычки, которая, как известно, приходит со временем. Вообще рассказывать о возможностях RockBox’a можно достаточно долго, а о плагинах к ней и вовсе бесконечно, на самом деле это тема для отдельной статьи…Удаление RockBox Сейчас мы рассмотрим процедуру удаления RockBox’a с вашего плеера. Но прежде чем рассказать вам как это делается, я объясню, что делать если вам вдруг захотелось понаблюдать оригинальную прошивку и, возможно, сравнить её с RockBox’ом. Чтобы загрузить «родные мозги» вашего плеера нужно после рестарта вашего iPod’a (для рестарта удерживайте одновременно нажатыми центральную кнопку и кнопку «menu») просто удерживать клавишу «menu». Процедура удаления RockBox’a до неприличия проста, в сравнении с процедурой установки. Всё что вам нужно сделать, это подключить плеер к компьютеру и записать обратно тот самый файл bootpartition.bin, который я так настоятельно просил вас сохранить в пункте 5 руководства по установке. Записывается файл командой:ipodpatcher -w Х bootpartition.bin (где Х - тот номер, который вы запомнили)которую следует вводить в командной строке, как и все команды при установке. Вуаля… Теперь о присутствии на вашем плеере сторонней прошивки можно узнать лишь по файлу rockbox.ipod и папке .rockbox. Вы можете смело удалить их, подключив ваш плеер в качестве съёмного диска.Выводы по RockBox Установка, знакомство и настройка RockBox’a займёт у вас не меньше дня, и это при том, что у вас хватит на это терпения. Человеку желающему установить на свой плеер эту прошивку следует чётко понимать необходимость такого широкого функционального ряда, ибо разработчики в жертву широким возможностям принесли удобство и комфорт использования и настройки, а так же ресурс аккумулятора. С другой стороны, если вам удастся просидеть на этой прошивке хотя бы неделю, то вы вряд ли захотите использовать что-нибудь ещё.Плюсы «+» • Поддержка широкого числа музыкальных форматов • Гибкая настройка системы • Поддержка сторонних плагинов • Возможность оставить и безболезненно загружать оригинальную прошивку • Полноценная навигация по жёсткому диску с возможностью создания, копирования и удаления файлов и папок.Минусы «-» • Неинтуитивное управление, к которому придется долго привыкать • Сложный и кропотливый процесс настройки интерфейса «под себя» • Короткое время работы от батареи при использовании дополнительных функций • Убогость большинства стандартных плагинов • Непривычно «молчаливый» ClickWheelТеперь для "осиливших многа букф" даю ссылки упомянутые в статье.RockBox - http://www.rockbox.org/iPodLinux - http://ipodlinux.org/Main_Pageipodpatcher – утилита для работы с флэш памятью плеера и чтения/записи её содержимого - http://www.rockbox.org/twiki/pub/Main/IpodInstallation/ipodpatcher.exeipod_fw – утилита для работы с файлами-образами, которые создаёт утилита ipodpatcher - http://www.rockbox.org/twiki/pub/Main/IpodInstallation/ipod_fw.exebootloader – файл с расширением .bin, файл-образ загрузчика . Внимание, для каждой модели iPod существует свой bootloader, качайте только тот файл, который соответствует именно вашей модели плеера:iPod Color/Photo - http://www.rockbox.org/twiki/pub/Main/IpodInstallation/bootloader-color.biniPod 4G (Grayscale) - http://www.rockbox.org/twiki/pub/Main/IpodInstallation/bootloader-4g.biniPod Nano - http://www.rockbox.org/twiki/pub/Main/IpodInstallation/bootloader-nano.biniPod Video/5G - http://www.rockbox.org/twiki/pub/Main/IpodInstallation/bootloader-video.binСам RockBox лежит - http://www.rockbox.org/daily.shtmlЭто оказалось совсем не сложно, благо полный мануал по настройке RockBox’a на английском языке лежит тут - http://www.rockbox.org/twiki/bin/view/Main/RockboxManual