Наверх
21.10.2013, 21:01

AIMP: Одна история(1-2).

8го августа 2011 года проекту AIMP исполнится 5 лет. К этой относительно круглой дате, я хотел бы приурочить эту заметку об истории проекта.

 

 

Истоки
Как, наверное, уже многие знают (из той же Википедии), корни уходят в тот период, когда я еще учился в школе в старших классах. В то время у меня только-только появился компьютер (спасибо моему дяде!) и я, так сказать, начал экспериментировать. Эксперименты довольно быстро закончились, т.к. по сути не имели смысла – эксперименты ради экспериментов. Тогда появилось сильное желание написать что-то настоящее, стоящее, доказать другим, хотя прежде всего самому себе, что я на что-то способен… Довольно забавно вышло, на тот момент у меня была книжка «Введение в Object Pascal» (на примере Delphi6), в конце которой, в качестве «экзаменационного» проекта был пример WAV-плеера с использованием стандартных компонент Delphi. С этого все и началось. Интересно, что было бы сейчас, будь в книге контрольный проект из другой области?

 

Super!
Наверно, у каждого программиста когда-либо были программы, в названии которых содержалось это слово. Так вот, первой моей поделкой был именно Super Player. Поначалу он был собран чисто на стандартных компонентах. Затем я стал знакомиться со сторонними библиотеками, и внедрять их, на этом этапе плеер и обзавелся BASS движком:

Super Player 8

Super Player 8

Super Player FX

Super Player FX

Версии, кстати, нумеровались тоже довольно забавно – каждая версия была «мажорной». Буквально за полгода вышло 10 версий программы :) Дальше моих друзей это творение не пошло.

 

A.I.M.P. v1 (будущий MMC)

A.I.M.P. v1 (MMC)

A.I.M.P. v1 (MMC)

Новое имя, новый имидж, новая цель, новая модель выпуска версий, новый код. Имея некоторый опыт, я решил сделать все «как следует», причем полностью с нуля. Нумерация версий стала использовать все 4 поля, хотя скорость их штамповки не сильно замедлилась :) A.I.M.P. (да, именно с точками!) стал выпускаться для более широкого круга людей – до сих пор его дистрибутивы можно отыскать на просторах интернета.

 

A.I.M.P. v2

A.I.M.P. v2 (MMC)

A.I.M.P. v2 (MMC)

В очередной раз, переписанный с нуля плеер, по большей части ничем не отличался от первой версии. После выпуска последней глючной версии (v2.3), я задумался о собственном звуком движке (ничего не напоминает?), было несколько попыток хоть что-нибудь написать, но они не увенчались успехом – не хватило знаний, решил сосредоточиться на функционале.

 

A.I.M.P. v3-v5 MMC PRO
Поначалу я хотел в очередной раз поменять название программы – была мысль назвать ее AMMS (Artem’s MultiMedia System) по аналогии, наверное, с XMMS. Но в итоге я отказался от идеи – A.I.M.P. звучало куда лучше, чем AMMS. Поэтому в названии появилась приписка MMC PRO (Multimedia Center PRO). Курс был взят на построения «комбайна» (вот она, коренная ошибка!).

A.I.M.P. v3 MMC PRO

A.I.M.P. v3 MMC PRO

A.I.M.P. v4 MMC PRO

A.I.M.P. v4 MMC PRO

A.I.M.P. v5 MMC PRO

A.I.M.P. v5 MMC PRO

Программа стала обрастать всем, о чем только заикались пользователи. Это вторая ошибка – попытка удовлетворить всех и каждого, тогда, почему-то, не было очевидным, что это просто невозможно… По сути, эта ошибка полностью предрешила судьбу проекта A.I.M.P. MMC PRO, но об этом позже, хотя вы и так знаете, что произошло…

Итак, A.I.M.P. стал обрастать новыми функциями: появилась возможность воспроизведения видео, запись CD/DVD дисков, разбиение видео файлов на аудио дорожку и картинки. Причем, часть функций работало только с аудио файлами, часть – только с видео: например, эквалайзер и анализатор спектра работали только при воспроизведении аудио файлов. Проигрывание видео было жутко капризным – с некоторыми кодеками плеер либо зависал, либо просто падал где-то в дебрях «системы»…
Пользователи жаловались… Это так, из воспоминаний о проблемах тех дней… Больше деталей, наверно, уже и не припомню, но, в общем и целом – программа была построена на куче затычек, очень часто глючила и попросту падала.

Кстати, стоит отметить, что именно A.I.M.P. 5 MMC PRO пошел в массы (он был переведен на 8 языков) и продержался больше всех — около 5-6 месяцев. Хотя в итоге всех пользователей он потерял, из-за своей «стабильности». Стало ясно, нужно что-то срочно делать, либо проект полностью развалится. Было принято решение начать все с чистого листа, снова, причем не только пересмотреть архитектуру, но и цели.

 

AIMP (aka AIMP Classic)

Классик версия, или ныне просто AIMP (уже без точек).

AIMP Classic

AIMP Classic

Программа лишилась большинства своих функций, в ней осталось только то, что каким-либо образом касается аудио файлов. Хотя, впоследствии, она так же лишилась записи Audio CD, конвертера и звукозаписи.

Именно дата выхода первой публичной бетки AIMP Classic считается официальным днем рождения проекта AIMP, а именно 8 августа 2006 года.

 

Честно говоря, поначалу я не планировал рассказывать о развитии теперешней ветки проекта — AIMP Classic. Что ж, раз уж сейчас собрался рассказать, значит расскажу.

 

Начну немного издалека, о чем стоило рассказать еще в прошлый раз, но почему-то я напрочь об этом забыл. Одним из первых достижений AIMP MMC была публикация его в журнале Игромания (Июнь 2005) в качестве программы-победителя среди читательских работ. Забавным было то, что я узнал об этом где-то спустя месяц после старта продаж журнала, причем чисто случайно — кто-то из пользователей (насколько я помню) спросил: «пришелся ли мне приз от Игромании по душе?». Как позже выяснилось, мне полагался диск с игрой «Cold Fear». Я пару раз писал в редакцию, но мои письма остались без ответа. Короче говоря, игрушку я так и не получил. :-)

Через неделю-две после выпуска очередного обновления, я мониторил отзывы о новой версии на сторонних ресурсах. Однажды, я наткнулся на комментарий в каком-то зарубежном каталоге. Звучал он примерно так: «Качать не рекомендую, обратите внимание хотя бы на адрес официального сайта программы, это не серьезно, просто чья-то очередная поделка». Меня это задело до глубины души, — какая разница, где хостится проект? Разве можно судить о программе только по одному адресу сайта? Видимо можно… К слову сказать, сайт AIMP-а в то время хостился на Narod.ru.

Спустя некоторое время после публикации в Игромании, мне написал Глеб Марков, с предложением разместить проект у себя на сервере в обмен на рекламу его интернет-журнала в About-окне программы. Я согласился — так проект переехал на http://aimp.game-man.ru. К сожалению, журнал просуществовал не долго (около года — было выпущено всего 9 номеров), а затем закрылся… меня попросили перенести за пару дней все мои файлы на другой хостинг, после чего game-man.ru перестал отвечать на запросы. AIMP был взят под крыло другим журналом — http://theironfort.ru. Посещаемость «нового» сайта была не высока, да это и естественно, раскрученное за год имя оф. сайта просто кануло в лету, даже редирект не поставить… На новом хостинге мы продержались тоже не долго — до своего финала там развился AIMP 5 MMC… нет, дело было не в закрытии журнала, как в прошлый раз. Было решено, что проекту нужен все-таки свой сайт, свой хостинг, чтобы ни от кого не зависеть. Таким образом, с рождением новой ветки — AIMP Classic — проект фактически начал путь с нуля. От старого комьюнити практически ничего не осталось — остались лишь некоторые тестеры, забегая вперед, скажу, что потом они тоже ушли.

AIMP (aka AIMP Classic)

Начальной версией новой ветки, классика-версии, стала v1.52 — число «52″ было взято от AIMP 5 ММС, последняя версия которого была 5.27 Beta.

AIMP Classic

AIMP Classic

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

AIMP Сlassic v1.54 (Автор: Ermine)

Где-то в это время появилась первая пользовательская обложка для плеера. Это была серьезная победа! Правда, чтобы реализовать все задуманные для нее фичи, пришлось несколько доработать скин-движок…

Greeney (Sergey Kopylov)

SkinEditor тех времен

К моменту выпуска бета версии 1.54, вышел ноябрьский номер журнала Игромания, в котором в очередной раз засветился AIMP, правда, несколько устаревшей версии — 1.52 Бета 4. Через 3 дня после выхода этого номера, 27-го октября, мне на почту пришло письмо от Сергея Рюмина с предложением: помочь в разработке дизайна для проекта. Начали работать…

В этот промежуток времени на форуме появилась довольно активная и интересная личность. Помню, каждое утро мне было стремно заходить на свой же форум, ибо там меня ждал очередной вагон багов, куча замечаний по функционалу и т.п. Это выводило из себя — я изо дня в день занимался фиксами багов, и то не успевал. Естественно, поток не был бесконечным, вскоре он стал куда скромнее — можно было заниматься чем-то другим. Вы догадались, как зовут этого человека? =) Тимур Файзуллин aka Svobodniy! Он единственный, кто участвует в проекте практически с самого его начала и по сей день (Не считая меня, конечно).

05 декабря 2006 проект приобрел свое новое лицо, вышла v1.55 — первый релиз классик-ветки проекта:

Дизайн AIMPа: до и после

Новый стиль получил название «Хамелеон».

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

Ровно через месяц, 5 января 2007 года, вышла очередная бета версия — v1.71, по большей части ничем выдающимся от предыдущей версии она не отличалась. Релиз состоялся 5 июня 2007 года и имел номер v1.77. В этот день проект снова «раскололся», правда только в плане кода — код ветки v1.xx был отсажен — началась разработка AIMP2. Пока разрабатывался AIMP2, вышло несколько заплаток на 1.77, таким образом, финальной версии стала 1.77.9, вышедшая 19 июня 2007.

AIMP2 (aka AIMP v2)

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

Мы не распространялись о том, что нового будет в AIMP2, единственное, что было известно всем — дата выхода бета версии, она была приурочена ко дню рождения проекта — 8му августа. Ближе к полуночи, 7-го августа, на форуме собралась куча народу, все ожидали «чуда», и «чудо» случилось, в первые секунды нового дня мы закрыли сайт для обновления контента — поменялось все: движок сайта, дизайн сайта и форума, и естественно, была доступна для скачивания новая версия AIMP v2.0 Beta 1.

Новый дизайн плеера (Автор: Сергей Рюмин)

Новый дизайн сайта (Автор: Сергей Рюмин)

Первые 10 минут все было просто отлично, затем сайт просто упал =). Новая CMS (название говорить не буду) оказалась слишком тяжелой + еще все качали новую бетку — сайт нагрузки не выдержал. К слову сказать, тогда у нас был обычный хостинг, даже не виртуальный сервер, и не было зеркал дистрибутивов, так что не удивительно, что сайт в такой ответственный момент просто «упал». Сама же бетка подкачала не хуже, она оказалась жутко сырой — я снова погряз в багах.

Из основных нововведений AIMP v2 можно отметить:

 

  • Переработан скин-движок
  • Новый дизайн программы
  • Аудио библиотека
  • Поддержка CUE-sheets
  • Возможность отцеплять плейлист от основного окна, изменять размер по горизонтали, прикреплять к границам экрана
  • Новый стиль плейлиста — отображение информации о файле на двух строчках, разбиение на группы
  • Возможность смены схемы иконок для ассоциации файлов
  • Поддержка юникода (Появилась чуть позже, в v2.05 Beta)
  • Отображение обложек альбомов в форматах JPG, BMP, PNG, TIFF (Появилась чуть позже, в v2.08 Beta)

 

11 августа 2007 мне в аську написал один интересный человек, он обвинял меня в том, что я украл некоторые его идеи в плане функционала и реализовал их в вышедшем только что AIMP2. Как выяснилось чуть позже, обвинения были голословны, т.к. ни идеи, ни их реализации нигде опубликованы до этого не были. Так началось мое первое знакомство с Ipple Play. Кстати говоря, их концепция UI реально была уникальной и интересной, мне честно она понравилась.

После выхода первой бетки Ipple Play все затихло, я продолжал помаленьку разбирать баги — ничего нового не писал, развитие застопорилось… но не надолго в начале 2008 года ребята выпустили вторую бету своей программы! Оу, это было круто! Они не реально подстегнули меня к написанию чего-нибудь нового, интересного, классного! Дали мощный толчок! За новогодние каникулы я разобрал скопившиеся за полгода ошибки — был взят курс на выпуск релиза второй версии. Уже 15.03.2008 вышел AIMP v2.11. Началась разработка AIMP v2.5…

Дизайн сайта вскоре слегка изменился:

Обновленный дизайн сайта (Автор: Сергей Рюмин)

Первая сборка AIMP v2.50 увидела свет 10 октября 2008. Основной упор был сделан на расширение уже имеющегося функционала. Релиз был запланирован на середину декабря. 15 числа вышла очередная сборка, которая должна была стать финальной в ветке v2.5x, однако из-за досадных ошибок через две недели, как раз под новый год, была выпущена заплатка.

Сергей Рюмин стал потихоньку отходить от участия в проекте — стал реже появляться на форуме, перестал учавствовать в обсуждениях, касающихся развития проекта. Однако, продолжал поддерживать дизайн проекта — по нашим запросам корректировал / дорабатывал интерфейс программы и т.п. В принципе, ничего удивительного в этом нет… Как показывает мой опыт, энтузиазм иссякает довольно быстро — особенно, когда появляется работа, семья… один я вкалываю как проклятый :-) . На моей памяти очень много людей приходило и уходило из проекта, этот процесс постоянный и вряд ли когда-либо закончится.

В декабре 2008 я начал первые исследования в плане разработки собственного звукового движка (о нем я рассказывать не буду — можете почитать о нем тут. Поначалу я планировал написать его и внедрить в следующую по счету версию, правда, из-за возникших проблем идею пришлось отложить на потом. Раз уж я заговорил о движке… вспомнился интересный факт, я задумывался о собственном движке еще при старте разработки AIMP MMC, но тогда у меня банально не хватило знаний. И только вот теперь, со второй попытки, что-то стало получаться…

Итак, тотальную переделку программы пришлось отложить на потом. Так родилась «переходная» версия — AIMP v2.6, первая бета которой вышла 09.04.2009. Релиз планировалось выпустить к очередному дню рождения проекта — к 8-му августа, а затем сосредоточиться на переработке всего кода и последующей интеграции собственного звукового движка. Планировалось-то, планировалось… а вот получилось как всегда — более-менее стабильную версию удалось выпустить только в декабре 2009 года! Обновления же на нее выходили еще в течение всего 2010 года — вплоть до выхода первой беты AIMP3.

P.S.

Сегодня AIMP празднует свой очередной день рождения, пользуясь этим моментом, я бы хотел сказать спасибо всем, кто когда-либо участвовал или участвует в данный момент в жизни и развитии проекта! Отдельное спасибо я хотел бы сказать:
1) Giesmo за помощь с доменом и хостингом, если бы не он, кто знает, под чьим крылом бы мы сейчас хостились?
2) Тимуру, за пинок к поднятию качества и юзабилити
3) Сереге Рюмину, за первое профессионально выполненное «лицо» проекта
4) Всем ребятам, кто сейчас принимает участие в разработке и отладке AIMP3!

новости технологии размышления творчество AIMP Одна история

Login NoCENS

Register

Forgot password

Donate


♥ 3
Send link to Twitter
Send to Facebook
Similar posts
Comments
Information

Members of Гости cannot leave comments.