Ещё одно консольное радио

от автора

cmdradio

Недавно на хабре проскакивала статья о cmd.fm — консольном интернет радио плеере в браузере, что навело меня на мысль: почему бы не сделать реально консольный радио плеер?

cmdradio — очень простой интернет радио плеер в коммандной строке. Он сделан специально для тех людей, кто не разбирается в направлениях, не знает названий групп, а просто хочет послушать музыку под настроение.
Нужно только набрать cmdradio play %genrename%

Разработка

Созданием десктопных приложений я никогда до этого не занимался, но под руку попался Visual Studio 2005, так что проект написан на C#, ибо начинать с Си мне показалось слишком тяжело, и тогда бы желание что-либо делать покинуло бы меня слишком быстро.
Я очень долго искал нормальный источник станций, но, пересмотрев основные, оказалось, что сервисы с нормальным API и большим количеством станций, такие как Shoutcast и TuneIn давно огородили свой API для избранных, и больше никто не предоставляет нормального доступа к списку станций.
Выход я нашел случайно, в виде Icecast directory, которая отдает огромный список станций в XML размером 4Мб. Заставлять каждый раз пользователя качать такой файл было бы негуманно, да и нагрузку сервер xiph врят ли выдержит большую, так что был написан небольшой сервер на NodeJS, который периодически заносит в базу данных большой плейлист, а на запросы с клиентов выдает конкретную запись, делает поиск по станциям и жанрам. А в скором времени, я надеюсь, что icecast directory прикрутит нормальный API.
Поддержку Linux вроде можно сделать через Mono, но я пока не знаю как. Если будет интерес — обещаю разобраться, а может и переписать под чистый Си.

Лицензия

Исходные коды доступны по Do Whatever You Want лицензией, библиотеки Json.NET и BASS под своими лицензиями.

Пока что официальный сайт. Пишите отзывы, пожелания.

ссылка на оригинал статьи http://habrahabr.ru/post/196612/


Комментарии

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *