Initial commit: HPR Knowledge Base MCP Server
- 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>
This commit is contained in:
204
hpr_transcripts/hpr1166.txt
Normal file
204
hpr_transcripts/hpr1166.txt
Normal file
@@ -0,0 +1,204 @@
|
||||
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.
|
||||
Reference in New Issue
Block a user