- How to record online radio streams with Streamripper on a Linux (Raspberry Pi) system
- Streamripper in production
- Streamripper notes
- Streamripper help and useful URLs
- Summary
- Лучшие программы интернет-радио в Linux
- Лучшие программы интернет-радио для Linux
- 1. Sayonara
- 2. Rhytmbox
- 3. Clementine
- 4. Cantata
- 5. Shortwave
- 6. Radiotray-NG
- 7. Strimio
- 8. Internet Radio (расширение GNOME)
- 9. Advanced Radio Player (расширение KDE)
- 10. Streamtuner2
- Выводы
How to record online radio streams with Streamripper on a Linux (Raspberry Pi) system
This isn’t a blog post as much as it is just some notes on how I got streamripper working the way I want to on my Raspberry Pi “AlRadio” project. That project is a little like a radio in that it plays FM radio stations, but it also plays live radio streams, makes and plays recorded radio streams, and plays podcasts.
Streamripper in production
I installed streamripper with apt-get like this:
$ sudo apt-get install streamripper
This is the script I use to make recordings of the 104.3 FM radio station here in the Denver area on my AlRadio system:
#!/bin/sh date=`date +"%Y_%a_%b_%d_%H%M%P"` url=http://4533.live.streamtheworld.com:80/KKFNFMAAC_SC output_filename=104_3.$ duration=3600 output_dir=/var/www/radio/data/recordings cd $output_dir streamripper $url -d $output_dir -l $duration -a $output_filename -o always
When this script is run via crontab entries, it creates recorded stream files that look like this:
104_3.2014_Sat_May_24_1200pm.aac 104_3.2014_Sat_May_24_1300pm.aac 104_3.2014_Sun_May_25_1200pm.aac 104_3.2014_Sun_May_25_1300pm.aac
My crontab entries for this 104.3.sh script look like this:
# 104.3 (afternoon guys) 0 12 * * * /var/www/radio/data/recordings/104_3.sh > /var/www/radio/logs/104_3.log 2>&1 0 13 * * * /var/www/radio/data/recordings/104_3.sh > /var/www/radio/logs/104_3.log 2>&1
Streamripper notes
Everything below this point are notes that I made as I was learning how to use streamripper :
finding a stream —————- «The easiest way to get started is to find the URL of a stream you want to rip. Usually I find the URL by loading it up in Winamp or XMMS and querying for the source URL.» commands ——— # specify directory streamripper URL -d recordings # don’t create a directory for each stream -s # add sequence number to output file -q # suppress the creation of the stream folder by adding -s streamripper URL -d OutputFolder -s # run for an hour -l 3600 # If -D is used, the options -s and -P will be ignored. # name files with date and time (per exec) -D %d %S Stream %A Artist %T Title %a Album -a [pattern] # Sometimes you want the stream recorded to a single (big) file without splitting into tracks. The -a option does this. If you use -a without including the [pattern], a timestamped filename will automatically be used. -A Don´t create individual tracks. The default mode of operation is to create one file for each track. But sometimes you don´t want these files. Using the -A option, the individual files for each track are not created. # user agent -u «FreeAmp/2.x» -o (always | never | larger | version) Overwrite tracks in `complete` directory. When streamripper rips tracks they are put into the incomplete directory until they are finished. Normally, they are then moved into the complete directory. However, when the track is already there, can use this option to tell streamripper what you want to do. —quiet Quiet operation. Don´t write any text to the console, except error messages —stderr Write output to stderr instead of stdout tests —— streamripper http://4533.live.streamtheworld.com:80/KKFNFMAAC_SC -d recordings -l 5 -s -q -D %S%d # creates «recordings/foobar/incomplete/ — .aac» streamripper http://4533.live.streamtheworld.com:80/KKFNFMAAC_SC -d recordings -l 5 -s -q -D foobar streamripper http://4533.live.streamtheworld.com:80/KKFNFMAAC_SC -d recordings -l 5 -D 104_3 # creates «recordings/104_3.aac» streamripper http://4533.live.streamtheworld.com:80/KKFNFMAAC_SC -d recordings -l 3 -D 104_3 -a 104_3 date=`date +»%Y_%m_%d»` streamripper http://4533.live.streamtheworld.com:80/KKFNFMAAC_SC -d recordings -l 3 -D 104_3.$ -a 104_3.$
Streamripper help and useful URLs
Don’t forget to view man streamripper for more help.
Summary
If you are interested in using streamripper to make recordings of online radio streams, I hope you find these notes and examples helpful.
Лучшие программы интернет-радио в Linux
Прослушивание музыки помогает скоротать время и даже повышает производительность труда. Однако, не всем хочется искать музыку, составлять плейлисты и обновлять их время от времени. Поэтому интернет-радио является хорошей альтернативой локальной библиотеке. К тому же таким образом вы будете узнавать новости не отвлекаясь от рабочего процесса.
Для Linux существует не так много программ, специализирующихся именно на воспроизведении интернет-станций. В связи с этим мы рассмотрим и универсальные плееры, которым, как вы узнаете из обзора, тоже есть что предложить даже искушённому слушателю.
Лучшие программы интернет-радио для Linux
1. Sayonara
Стоит начать с аудиоплееров. Многие из них не ограничиваются воспроизведением лишь локальных файлов. Плеер Sayonara тому хорошее доказательство. На первый взгляд может показаться, что кроме скромной библиотеки Soma FM на главном экране ничего нет, но на самом деле надо включить Вид-Веб-потоки (Shift+F4).
Теперь нам доступны радиостанции ресурса fmstream.org. Также вы можете включить Запись потока в настройках. Тогда кнопка пауза изменит свой вид и по её нажатию вы сможете сохранить трансляцию на своём компьютере. Установить Sayonara можно с помощью команды:
sudo snap install sayonara
2. Rhytmbox
Rhythmbox – это простой плеер, предустановленный на многих дистрибутивах. Однако, даже он может подойти для воспроизведения онлайн-радио. Станции придётся добавлять вручную через кнопку Добавить, так как по умолчанию доступно всего несколько зарубежных. После этого вы можете изменить Жанр (каталог) станции через её свойства.
Из плюсов плеера стоит отметить интеграцию со средой рабочего стола GNOME. В её центре уведомлений появляется мини-плеер, через который можно управлять воспроизведением. Установить Rhythmbox можно с помощью команды:
sudo apt install rhythbox
3. Clementine
Clementine предлагает немало потоковых сервисов, но большая их часть требует авторизоваться, а некоторые и вовсе не работают. Однако, вы можете выбрать Icecast, содержащий большое количество станций. Если вы не нашли станцию через поиск, то можете добавить её вручную в раздел Ваши потоки радио.
Для установки Clementine воспользуйтесь командой:
sudo apt install clementine
4. Cantata
Cantata – это плеер с хорошей поддержкой аудиоформатов, но на этом его достоинства не ограничиваются. Имеется хорошая база радиостанций. В разделе Showcast станции разбиты по жанрам, а в TuneIn по регионам. Чтобы упростить себе задачу по выбору станции, можете воспользоваться поиском (кнопка находится в строке состояния).
Плеер является оболочкой для Music Player Daemon (MPD), учитывайте это. При закрытии плеера MPD продолжит воспроизведение. К счастью, в настройках в разделе Воспроизведение имеется необходимый пункт Остановить воспроизведение при выходе из программы. Лучше всего добавить репозиторий PPA, чтобы иметь последнюю версию Cantata:
sudo add-apt-repository ppa:ubuntuhandbook1/cantata-qt
sudo apt update
sudo apt install mpd cantata
5. Shortwave
Перейдём к программам, созданным непосредственно для прослушивания онлайн-радио. Shortwave стала преемником некогда популярной Gradio. Программа имеет лаконичный интерфейс и адаптирована под оболочку GNOME.
База станций берётся с ресурса radio-browser.info. К сожалению, добавить свои станции не получится. Можно лишь отправить понравившиеся станции в библиотеку (избранное). Установить Shortwave можно с помощью команды:
sudo snap install shortwave
6. Radiotray-NG
Ещё одна популярная программа Radiotray также перестала обновляться, но у неё есть ответвление Radiotray-NG. Программа запускается сразу в трее. Поддерживаются все популярные оболочки GNOME, KDE и даже Cinnamon. После установки программа прописывается в автозагрузке.
Доступно не так много станций и они разбиты по жанрам. Добавить свои станции не составит никакого труда. Имеется удобный редактор. Скачать программу можно со страницы GitHub.
7. Strimio
Разработчики Odio не стали изменять традиции и тоже переименовали своё приложение. Strimio имеет современный интерфейс с полупрозрачными элементами. К сожалению, это сказалось и на производительности. Запуск занимает несколько секунд, а в простое программа загружает одно ядро процессора практически по полной.
Из плюсов имеется неплохая база станций, но всё омрачает подписка и обязательная регистрация. В бесплатной версии вы не можете добавлять свои станции, и даже избранное ограничили десятью станциями. Установить Strimio можно командой:
sudo snap install strimio-desktop
8. Internet Radio (расширение GNOME)
Раз уж заговорили о работе из трея, то нельзя не упомянуть расширения для оболочек. Для GNOME неплохим вариантом будет Internet Radio. По умолчанию имеется всего несколько станций.
Управление не самое интуитивное. Есть редактор списка станций, можно изменить станцию, удалить её, но не добавить. Для этого в меню разместили специальную кнопку +. Ещё один недостаток заключается в том, что со светлой темой значки практически не читаются.
9. Advanced Radio Player (расширение KDE)
Для оболочки KDE также имеется расширение. Advanced Radio Player можно разместить как на рабочем столе, так и в трее. Редактор, в отличие от GNOME полноценный. К тому же имеется несколько настроек внешнего вида.
10. Streamtuner2
Streamtuner2 оставим в этом списке лишь в качестве упоминания. Кроме большого списка радиостанций, программе похвастаться нечем. Сама она не умеет воспроизводить звук, использует для этого сторонние плееры, которые к тому же не всегда справляются с этим. Rhythmbox не запускается, Clementine при первом запуске начинает воспроизведение, но переключиться на другую станцию после этого нельзя. Sayonara работает корректно, чего не скажешь о самом приложении.
Поиск станции выглядит странно и к тому же не работает. В правой части имеется выбор сервиса, но и тут не всё гладко, на некоторых из них программа вылетает. Streamtuner2 больше не обновляется и вряд ли ещё будет, так что ждать исправлений не приходится. Установить Streamtuner2 можно с помощью команды:
sudo apt install streamtuner2
Выводы
Мы рассмотрели лучшие программы интернет-радио в Linux. Если выбирать из аудиоплееров, то советуем рассмотреть Sayonara или Cantata. Эти плееры имеют хорошие каталоги станций, да и в целом являются неплохими программами для прослушивания музыки. Хотя наверняка кто-то из читателей вспомнит о всеядном VLC.
Среди узкоспециализированных программ стоит отметить Shortwave и Radiotray-NG. Strimio пока что оставляет не самое приятное впечатление. Остальные программы мы не рассматривали, они устанавливаются через Flatpak. Вряд ли вас устроит то, что небольшая программа подтягивает зависимости на несколько сотен мегабайт (а может быть и гигабайт).
Никто не мешает вам установить и расширение для оболочки. Для популярных GNOME и KDE имеются вполне рабочие варианты. А слушаете ли вы интернет-радио? Если да, то какую программу выбрали для себя? Делитесь своим мнением в комментариях.
Обнаружили ошибку в тексте? Сообщите мне об этом. Выделите текст с ошибкой и нажмите Ctrl+Enter.