Архив “Канадского Лося” v.2.0

Ну вот спустя уже НЕ пару дней… лол закончен Архив “Канадского Лося”. На прошлой неделе решил написать вторую версию Архива для моих подкастов. Первая версия была “проще не придумаешь” – просто листинг подкаст файлов. Просто включил листинг в Апаче и направил на папку с файлами… И вот спустя пару лет с начала моего персонального архива появилась вторая версия подкаст архива, но перед тем как рассказать что и как, стоит отправиться в прошлое и рассказать “почему?” архив вообще начал свое существование.

История:

Я начал записывать подкасты когда рпод был ещё молодым и “не обкатанным”. Соответственно иногда сайт падал… Далее на рпод-е не допускалась коммерческая музыка в подкастах – другими словами если в подкаст попала музыка скажем от ДДТ или других больших групп, то подкаст ( файл ) удалялся с рпода ( если я не ошибаюсь то сейчас происходит тоже самое, не знаю почему написал в прошедшем времени). Ну и третье: я – параноик и вбил себе в голову что не хочу, что бы моя работа пропала. В итоге решил держать копию подкастов у себя на сервере и за одно открыть доступ всему миру. И так была сделана первая версия подкаст архива… просто листинг файлов через Апач.

Версия 2.0 – предпосылки:

Почему я решил сделать вторую версию я не знаю. Один день сидел и подумал что было бы на много лучше если бы Архив был более полноценный… типо можно было посмотреть ноуты к подкастам и всё такое… Но потом меня сильно не пёрло делать сайт по типо rpod-a – где надо заполнять поля – типо “название подкаста”, “ноуты” и так далее… Я подумал и решил, нафиг!!! Не буду не чего делать… я же не обезьяна что бы заполнять формы по 2-а раза! ( я очень ленивый! ). Один день сидел и слушал музыку в iTunes ( я люблю музыку гы-гы ) и обратил внимание на ID3 таги… По скольку я был “сделан” старой школой, аля ДОС и всё такое то у меня концепция простая: “всё что моё, ношу с собой”. От сюда я всегда вставляю Cover Art в сами mp3 файлы ( а не как iTunes делает – типо картинки отдельно, музыка отдельно ). Мой подход не эффективен, так как занимает больше места ( из-за того что каждый mp3 файл содержит в себе картинку для песни )… но такой уж я! Но именно эта концепция дала мне идею… “Если iTunes может выдергивать информацию из ID3 тагов в mp3 файле, почему я не могу делать тоже самое?”. Так как я вставляю инфу в свои mp3 подкаст файлы уже как минимум подкастов 25 то я могу вытаскивать инфу из файла динамически и отображать её. Вот так всё и началось… Единственное что жалко так это то что я не вставлял ноуты с самого первого подкаста… но тогда я не знал о ID3 тагах… обидно…

Сверху:

И так вторая версия подкаст архива выглядет просто и интуитивно ( надеюсь ).
picture-1_04-05-2009_monday

Выводиться название подкаста, длинна записи ( в минутах ), тип файла, лого и ноуты. Графики в архиве не какой ( кроме лого ) нету, так как я считаю что архив должен быть: простым, лёгким и функциональным – типо философия такая. Я думаю что я достиг своей цели… Надеюсь что услышу ваши отзывы на эту тему. Теперь если в файле ( mp3 – с записью подкаста ) нету ноутов или лого то информация не отображается… хе-хе так как не чего отображать…

Внутри:

Архив написан на PHP от начала и до конца… к тому же архив 100% динамический то есть страница проверяет файлы в директории и считывает информацию с них на лету. Я использовал открытую PHP ID3 библиотеку ( http://getid3.sourceforge.net/ ) – так как после дня поисков о том как написать твой ID3 парсер я понял, что это убийство… если кому интересно почему то почитайте про ID3 таги… ищите книгу в местных магазинах – “ID3 или Лорд Хауса”. Далее я разбирался в этой библиотекой где-то вечер… и всё оказалось не так уж и сложно… Но дальше были некоторые проблемы с графикой – типо как выводить лого в нормальных размерах, что бы каждое лого не весело по 127KB… пришлось использовать GD библиотеку ( у меня она по любому на сервере стоит для WordPress-а ). Написал что бы картинка из файла меняла размер на лету… Вот как это примерно выглядет:

Пользователь —-> запрос —-> Страница —-> запрос —-> Файл
Файл —-> ответ ~127KB —-> Страница ( меняет размер ) —-> ответ ~14KB —-> Пользователь

Дальше сделал переходник между страницами… типо на странице по 10 подкастов ( что бы не грузились все 147 подкастов за один раз )… ну и всякие маленькие твики и всё такое… Вроде и всё… конечно выглядет это просто… но по скольку я не знал PHP ( я на нём особо не чего не писал ) то пришлось наглотаться всякой гадости… Например я потратил 4 часа только что бы выяснить что у меня на сервере не работают короткие так для PHP… типо обычный таг идёт: <?php …. ?>; а короткий: <? … ?>; . Так вот у меня на моём компьютере короткие таги распознавались, а когда кидал файл на сервак, код не работал… за 4 часа я переписал весь код от начала до конца ( пробовал разные вещи )… А когда увидел что всё дело в этом маленьком незаметном таге, думал что умру от стыда… Думать надо! А не ручками строчить как заяц по клаве.

За/Против:

За: простой, динамический архив – который не надо трогать больше не когда ( я надеюсь ). Просто кидаешь подкаст файл на сервер и страница отображает всё… Не каких заполнений форм или какой либо подобной лабуды!

Против: Из-за высокой динамичности, а некоторые могут сказать лени или тупости при каждой перегрузке страницы файлы читаются и процесс парсинга проходит заного… Другими словами Оптимизации НУЛЬ!!! Если бы архив посещался большим количеством людей то сервак бы сдох быстро ( от нагрузки )… да и это не рациональное использование ресурсов.

Итого:

Архив был сделан как я его задумывал… Так как у моего сервака интернет канал маленький то не думаю что много кто будет посещать мой архив на постоянной основе… Другими словами мой архив – это просто запасной выход… Если будет существенная нагрузка то решение уже есть! Можно генерировать статические страницы каждый раз когда новый подкаст файл добавлен… Таким образом оптимизация = 100%. Ну поскольку это пока что не нужно то поживём так…

P.S. Забыл сказать новый подкаст архив находиться по старому адресу http://los.meirz.net

12 thoughts on “Архив “Канадского Лося” v.2.0”

  1. Архив штука классная и нужная, Но!…
    Кроме кеширования (я думаю проблемы будут не при открытии архива, а при скачивании файлов), сильно не хватает даты подкаста и ссылка на файл теряется. Если лень навешивать “кнопки” или иконки, хотябы оставь подчеркивание на ссылке.

  2. Можно было взять rss от рпода, сохранить на диске и уже от туда парсить всю инфу с пхп. А при добовлении подкаста запустить обновлялку, которая скачивает обновлённый rss на диск. Это 5 минут работы на питоне.

    Ну а сам архивчик получился очень симпатичный и приятный на глаз! =)

  3. 2 Mullwar:

    Согласен, можно было сделать и так. Не додумался… Я начал с идеи ID3 тагов и от сюда так всё и получилось.

  4. Скорость скачки с архива совсем меленькая :(
    У тебя какая скорость канала, 5M/800k ?
    P.S. Сайт понравился, удобно искать старые подкасты! :-)

  5. Да скорость маленькая. На бумаге она 5М/800k, в реальности это 2.5M/400k. Одна из причин почему не хочу делать rss, НО если сделать torrent – это уже интересно!!! Тогда это может реально сработать!

  6. 2MeIr
    Идея раздачи подкастов по торетам просто гениальная! Оснобенно когда подкаст большой и популярный!

  7. 2Semeyon:

    Я посмотрю по поводу даты.
    А вот как сделать торрент раздачу не знаю… Тут проблема в том что iTunes не поддерживает torrent скачивания… :(

    А делать типо одна прога скачивает, в другую доавляет и треья добавляет в iTunes, выглядет лево… Надо придумать что бы был один шаг. Или два шага, но очень просто, без головоломок…

  8. Я думал как можно добавить дату релиза или записи в Архив и не могу придумать. Походу в ID3 тагах её нету… а читать дату с файла – не катит так как там стоит не правильная дата… Вопрос от куда дату брать?

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.