Приятный интерфейс по HTTP к ресурсам Интернет-радиостанции verdure_station. Можно в стиле Unix получать:
Ссылку на аудио-поток можно получить через промежуточный ресурс со списком доступных потоков в формате INI:
$ curl -s http://air.verdure.ru:8881/listen.pls
[playlist]
NumberOfEntries=1
File1=http://air.verdure.ru:8881/
Сам поток аудио выдаётся по протоколу SHOUTcast как audio/mpeg. Протокол не
полностью совместим с HTTP, а то бы было совсем здорово. Однако этот протокол
известен и поддерживается многими плейерами. Вот как сервер отдаёт аудио-поток:
$ curl -s http://air.verdure.ru:8881/ | head -n20
ICY 200 OK
icy-notice1:<BR>This stream requires <a href="http://www.winamp.com/">Winamp</a><BR>
icy-notice2:SHOUTcast Distributed Network Audio Server/FreeBSD v1.9.7<BR>
icy-name:verdure_station - www.verdure.ru
icy-genre:idm dark ambient deep
icy-url:http://www.verdure.ru
content-type:audio/mpeg
icy-pub:1
icy-br:128
[SHOUTcast data]
То есть ответ сразу начинается с тела без заголовков ответа HTTP. Зато сам ответ включает в себя HTTP-подобные заголовки протокола SHOUTcast.
Но всё это был более-менее известный SHOUTcast. Приятная вещь, которая меня порадовала, это листинг текущей программы в простом текстовом формате:
$ curl -s http://verdure.ru/list.txt
14:20 tisane - exclusive nightmare
14:56 phon.o - live@zona moscow 2004
15:47 deps - empty street
17:08 anton lanski - mokriy kofe
17:38 crab - katalog
...
12:53 acrotone - up the stairs
------------
beta lineup for verdure.ru, time is MSK GMT+4 (generated: 20100220 14:21:17)
То есть можно делать с ним практически любые вещи. Например, сделать отправку себе письма, если в ближайшее время будет микс понравившегося DJ.