- MCP server with stdio transport for local use - Search episodes, transcripts, hosts, and series - 4,511 episodes with metadata and transcripts - Data loader with in-memory JSON storage 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
205 lines
9.0 KiB
Plaintext
205 lines
9.0 KiB
Plaintext
Episode: 1166
|
|
Title: HPR1166: Airtime Radio Automation
|
|
Source: https://hub.hackerpublicradio.org/ccdn.php?filename=/eps/hpr1166/hpr1166.mp3
|
|
Transcribed: 2025-10-17 20:51:52
|
|
|
|
---
|
|
|
|
Airtime is open source radio automation software for Linux, similar to Rivendale.
|
|
However, where this differs is that this is all web-based.
|
|
You install the software to a server box and this provides a web front end for DJs and
|
|
edels shows for the radio.
|
|
If you were broadcasting internet radio, you would just need a server and a data send
|
|
or even a VPS or cloud if on the other hand you wanted a set up a traditional station
|
|
who would probably want a local box or audio or output hooked up to the transmitter.
|
|
Airtime is made by source fabric, tech, non-profit organisation,
|
|
who produce open source software for publishing and journalism.
|
|
There are other projects include NewSoup, a CMS for news sites,
|
|
and BookType, a bushing platform for print and e-book.
|
|
One of their sources of funding is hosting and supporting instances at airtime and BookType.
|
|
Debian and Ubuntu are actively supported sources available to compile for other
|
|
distros. Documentation is very thorough and there is an active community.
|
|
Under the hood, the system uses PostGressedQL for the database.
|
|
RabbitMQ for messaging, soap for constructing and encoding the stream,
|
|
and icecast for serving the audio online.
|
|
Installation is straightforward.
|
|
Deb package is provided for auto setup, but I just added the app to repose
|
|
your stock Debian 6 VM, although the instructions.
|
|
After install, you access the interface using your browser.
|
|
An admin account is created during install and you log in with that.
|
|
Once logged in, you are presented with the interface.
|
|
The top is a master panel showing the previous track on track and next track.
|
|
The name of the current show, stream switches for live feeds,
|
|
a big on-air box turns red when its station is live,
|
|
and a clock showing the station time and time zone.
|
|
All the info is blank enough, obviously, as nothing is loaded or set up yet.
|
|
Beneath the master panel are tabs for different int of screens.
|
|
First step after install is to check the system settings.
|
|
Only available to admin users.
|
|
First is preferences, where the station name is set along with time zone, etc.
|
|
There's also settings for email so the server can reset passwords for users
|
|
and sound cloud integration.
|
|
Automating podcast creation if you use that server.
|
|
Next would be users, where you can create accounts for different people running our station.
|
|
Permission levels are as follows.
|
|
Guests, which only allows you to view the interface and not interact.
|
|
DJ, which lets you upload media and add to the schedule during your assigned shows.
|
|
Program manager, which lets you create time slots for DJs.
|
|
And finally, admin, who also has access to the system settings.
|
|
On the media folders screen, you can redefine the folder in which all the media is stored,
|
|
and also find Dropbox folders to auto-import media.
|
|
Useful for importing in bulk.
|
|
However, it doesn't seem to have a way to auto-tag these in the database,
|
|
like Rivendell can,
|
|
tapping which might be useful in the future.
|
|
When first installed, an Ogg stream is created.
|
|
It's sent to IceCast on the local server.
|
|
Going to the stream settings screen,
|
|
lets you change this and all the other output settings.
|
|
The audio can be outputted via ALSA on the local box,
|
|
as well as three different IceCast streams for different codecs and qualities,
|
|
and even to remote servers.
|
|
Ogg and MP3 are available,
|
|
but I know liquid-soatly engine running the stream can do some others like AAC.
|
|
You can also set up input streams on this page.
|
|
You can set up two streams, master and show.
|
|
The master has one password,
|
|
and assuming you set auto on offsetting,
|
|
will interrupt anything on the station with its audio.
|
|
Good for a studio live stream.
|
|
The show stream has a dynamic password,
|
|
particular to a user and show.
|
|
I'll go a bit into that more later.
|
|
Now for the fun bit, actually running a station.
|
|
First you need media.
|
|
Click on Add Media tab,
|
|
and simply click and drag your files,
|
|
Oggs, MP3s, etc.
|
|
from your file manager into the browser window.
|
|
You can also use the Add Files dialog.
|
|
Click Start Upload,
|
|
and each file will be uploaded and imported into the library.
|
|
On the server, there is also a command line tool for importing,
|
|
and the aforementioned watched media folders.
|
|
You can now click the library tab and browse the tracks,
|
|
preview them in the pop-out player,
|
|
edit their metadata if needed.
|
|
On the right hand side of the page is a button labeled new.
|
|
This gives the option of creating playlists,
|
|
mark blocks and web stream.
|
|
This playlist is simple.
|
|
Click and drag or multi-select tracks on the left
|
|
to add them to the playlist on the right.
|
|
The order can be tweaked by some more click action,
|
|
and the fades and cuts between tracks can be added.
|
|
Make sure the list is labeled,
|
|
and maybe has a description and click Save.
|
|
A smart block is like a playlist,
|
|
but instead of manually adding tracks,
|
|
you define rules,
|
|
such as creator-contained spring stream,
|
|
or year is in the range 1990 to 1999,
|
|
and the system will find your tracks
|
|
and create a playlist length you define.
|
|
There are two smart block types,
|
|
static and dynamic.
|
|
In static, you set your rules,
|
|
click Diner 8,
|
|
and it will create your list end and there,
|
|
and can be rearranged as a regular plate.
|
|
The dynamic block will only pick the tracks
|
|
from the blogger's added show.
|
|
This lets you have an up-to-date list
|
|
if you are adding tracks throughout library.
|
|
Web streams are useful
|
|
for if you want to add content
|
|
from another iScal stream to your station.
|
|
You define the stream URL
|
|
and the default length of time
|
|
you want to run the stream.
|
|
All the playlists, mark blocks,
|
|
and web streams are added to the media library
|
|
as if they are regular tracks.
|
|
Next part of running the station is scheduling shows.
|
|
Clicking the calendar tab brings up a traditional day by week grid
|
|
which can also be viewed by week by day.
|
|
Clicking plus show brings up the new show dialog.
|
|
You set the name of the show and other descriptive info.
|
|
Time this show airs,
|
|
and if you want it to repeat,
|
|
this is only the scheduled block settings
|
|
to repeat, not the content.
|
|
Live stream settings for this scheduled block are also set.
|
|
You can opt to use airtime authorization
|
|
so your DJ just needs to enter
|
|
their airtime logging credentials
|
|
into the iScal transmission software
|
|
to start streaming.
|
|
Or you can set up a custom user and password
|
|
for a one-off access.
|
|
Record and read broadcast only seems to work
|
|
for when audio is entered locally through the line-in.
|
|
I'm sure it's technically possible
|
|
to do something with iScal streams as well.
|
|
You can now set which DJs have access to the schedule show block
|
|
and the colors used when it is displayed in the calendar.
|
|
Finally, click add this show and it appears.
|
|
Clicking on the schedule block
|
|
lets you add or remove content.
|
|
Edit the settings or delete the show.
|
|
If in the day or week view on the calendar,
|
|
you can also drag the show around to different times.
|
|
Clicking add content brings a similar screen to the library.
|
|
On the left is library tracks
|
|
and on the right is a list of what will be broadcast and when.
|
|
Tracks and playlists can be dragged onto the show list,
|
|
populating it and displaying in red the time
|
|
still to be filled.
|
|
Or green the time that you have overbooked.
|
|
If you add a dynamic smart block,
|
|
it is at this time it will pickaxe.
|
|
If you add a web stream,
|
|
the output of the defined stream will be played.
|
|
If the show is overbooked,
|
|
the last track will fade out at the end of the time allotted.
|
|
It's unlikely you will pick just the right amount of tracks,
|
|
so it's easy to find a track of a particular length
|
|
using our library search to plug.
|
|
And there it is.
|
|
A show is set up to play.
|
|
Obviously you need lots of content to get going with a full station.
|
|
Perhaps grab a load of HPR and other CC podcasts
|
|
and music in there for practice.
|
|
I work at a college in Croatia
|
|
and we have a simple streaming radio station for a couple of years now.
|
|
After I started researching this episode,
|
|
I could see that this could work with us,
|
|
so we were looking into using this in the production setting.
|
|
I will be doing a follow-up episode for HPR
|
|
with a bit on how I got on.
|
|
I'm OrconDK.
|
|
OrconDK.com.
|
|
They are U-K-O-N-D-K.com.
|
|
Please support HPR with your own episodes,
|
|
commenting in the episodes you'd like
|
|
and encouraging more content for listening.
|
|
You have been listening to Hacker Public Radio
|
|
at HackerPublicRadio.org.
|
|
We are a community podcast network
|
|
that releases shows every weekday in Monday through Friday.
|
|
Today's show, like all our shows,
|
|
was contributed by a HPR listener like yourself.
|
|
If you ever consider recording a podcast,
|
|
then visit our website to find out how easy it really is.
|
|
HackerPublic Radio was founded by the Digital Dog Pound
|
|
and the Infonomicum Computer Club.
|
|
HPR is funded by the binary revolution
|
|
at binref.com.
|
|
All binref projects are crowd- Exponsored by linear pages.
|
|
From shared hosting to custom private clouds,
|
|
go to lunarpages.com for all your hosting needs.
|
|
Unless otherwise stasis,
|
|
today's show is released under a creative commons,
|
|
attribution, share a like,
|
|
lead us our lives.
|