В современном Life-as-a-Service мире, где всё чудесно, но ничего нашего почти не осталось, мои убеждения касательно цифрового контента выглядят малость старомодными, если не сказать архаичными: если копии цифрового файла без DRM на локальном хранилище нет, то, как я считаю, эта информация мне не принадлежит.
Однако, новую музыку покупать нужно. Доверия к сервисам по аренде музыки для прослушивания у меня нет, так что из достаточно этичных сервисов остается Bandcamp, позволяющий после покупки альбома загрузить его копию локально, будь то flac, wav или mp3.
Правда, есть небольшой нюанс: с ростом коллекции к двух, а то и трёхзначным числам выгрузить все альбомы вручную — задача нетривиальная и рутинная. К счастью, добрые люди уже написали готовый инструмент для сего.
Bandcamp collection downloader — небольшая утилита для загрузки всей коллекции локально. После клонирования репозитория её нужно собрать с исходного кода gradle’ом. На всякий случай — есть зеркало кода.
Если в системе установлен Firefox, то утилита умеет самостоятельно вытаскивать cookie с браузера для логина. Если же основной браузер Chrome — придётся выгрузить печеньки bandcamp в правильном формате:
[
{
"Name raw": "client_id",
"Content raw": "......."
},
{
"Name raw": "identity",
"Content raw": "......."
},
{
"Name raw": "session",
"Content raw": "......."
}
]
С подготовленными печеньками выгрузка всей коллекции становится тривиальной:
java -jar bandcamp-collection-downloader.jar \
--cookies-file=cookies.json \
--retries=10 \
--audio-format=flac \
--download-folder=/home/yourName/Music \
yourBandcampName
Берегите свою музыку :)