Pull to refresh

Comments 10

Очень интересная статья, возможно однажды я сделаю также, чтобы не хранить по 10Гб музыки на каждом устройстве. А есть ли возможность переключения треков? Или слушаем то что есть?
Радио, по самому определению, вещает то что задано плейлистом. Плейлист может генерироваться по разному (у меня это делает liquidsoap по правилам описанным в его конфигурации). Штатной возможности переключать треки у Icecast нет, и её иногда не хватает, да. Я сейчас пишу телеграм-бота для Icecast, думаю с помощью него реализовать переключение треков. Других вариантов пока не вижу.
Онлайн радио имеет недостаток, возможно из за которого и нет штатного переключения треков.
Это кеширование на клиенте. После события переключить трек — вам придется ожидать 1-3 секунды(в зависимости от плеера) пока кеш закончится и трек переключится.

А чем не устраивает, допустим, Google Music? В него можно загрузить 10 000 своих треков.

50 000 своих. 10к очень маленькое кол-во треков для музыки.
Очень круто! Тоже о таком задумывался, но решил, что даже прослушивание MP3 в хорошем качестве обойдётся достаточно дорого в плане стоимости 3G-связи. В итоге просто купил SSD на 250 гиг в качестве большой флэшки и закинул туда все любимые вещи в lossless, сколько влезло. Но всё равно периодически задумываюсь о том, что круто было бы сделать всю свою музыку доступной везде, а не только там, куда я её физически принёс (тем более, что коллекция весит уже около 800 ГБ).

А возможно ли стримить лосслесс, а ещё лучше — читать лосслесс, а стримить с опциональным сжатием на выбор клиента?
И правильно ли я понимаю, что раз уж клиент всё равно подключен к сети и связан с сервером, то можно реализовать полноценное управление проигрыванием — пропуск трека, запрос списка треков, переход к указанному?
Если вам нужно просто иметь доступ к коллекции музыки отовсюду — то, наверное, проще воспользоваться чем-то типа Google Music, который советовали выше, или чем-то подобным (тут посоветовать не могу, увы).
А я делал именно онлайн-радиостанцию (такую же как soma.fm, PSYCHDELICK, тысячи их!) — с изменением ротации в зависимости от времени суток и дня недели, джинглами, часовыми отбивками, но играющую только то, что нравится мне.

Про стрим: принцип работы источника потокового аудио — любой сжатый/несжатый формат сначала разворачивается в PCM, а потом уже кодируется в нужные форматы вещания (т.к. радио обычно вещает параллельно один и тот же поток, но с разным качеством). Вещать в loseless, конечно можно, но это будет ад по траффику. Лучше, наверное, по соотношению объём/качество, вещать в aac.
Да, я понимаю, что такое радиостанция.
Лучший из известных мне lossy-форматов — Vorbis (OGG). Сейчас загуглил — его тоже можно стримить. Идеальный вариант.
Прочитал, заинтересовался, зарегистрировал в их каталог свою станцию, офигел от ценника, испугался, сходил в гитхабы, нагуглил оттуда пяток токенов, прикрутил к своему радио и имею сказать следующее.

Система рекомендаций отвратительная — лучше даже не пробовать. Картинки возвращаются далеко не всегда те, которые к треку подходят или даже к альбому откуда трек. Запрашиваешь один тайтл — в ответе приходит другой. Если проверять совпадает ли резалт с запросом (в лоб, банально), то никаких проблем не будет.

Так же опытным путём было установлено, что если добавить аргумент callback=json, то ответ будет в ём самом.

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

Хорошая статья, респект и уважение коллеге по „сам себе сделай радио”. :)
Sign up to leave a comment.

Articles