Okay, let's start the next presentation.
Our next speaker is Ari Carmody and he will, they will talk about self hosting a student
radio station.
Welcome.
Hello.
Yeah.
We're making a start.
Oh, there we go.
Hello.
There's a lot more people here than I expected.
I'm going to talk about self hosting a student radio station.
I'm going to quickly clarify English is my first language, but I'm from rural Ireland,
so that's actually not true.
I'm just going to point out, in Ireland, university and college are interchangeable, so I will be using both of them.
I know that's not the same system in the UK, and I don't know how student organizations work at the rest of Europe, but we call them societies.
They're just clubs, but we don't do sports.
And I want to have time for class.
I may have time for questions.
Let's find out.
Radio Sock was originally based in Tallah, which is in the suburbs of Dublin, back when that college was IT Tallah.
They actually broadcast on FM on broadcast radio, and they won a huge amount of awards over many, many years, and then they died over COVID.
And then they didn't get the radio license back, so they don't do anything anymore.
Since then, a bunch of smaller colleges in Dublin merged to form TU Dublin, which is the university that I go to, and we've since reformed the radio society, now in the city center broadcasting on the internet.
We are currently slightly mid.
The hardware we've got is some small stuff.
We have a roadcaster, which is not in this picture.
It's a little mixer, and just lets us mix our audio.
We have some road mics, cheap DJ decks that I got in trouble for buying, because they were too bad.
The manager of our society's office is a professional DJ.
And that's basically it.
That's all you really need to run a radio station.
You just need a mixer, which you can do in software, and a DJ deck, which you can also do in software.
And we're going to look at the software.
Here is our creepy tunnel where the server is.
If you saw Ruan's talk earlier, where my friend was talking about the HLCS plus is run, there's a nicer picture of it.
There's three bits of software we use, a Zerakast, which is the actual streaming server.
Mix, which is on my laptop, which is just a virtual DJ deck, and but, which stands for broadcast using this tool.
And that is just a client.
Zerakast is the main star of the show.
We've been trying to get this working.
I'll point out, up until now, we've been using radio cult, which we've been paying for streaming.
But I don't like doing that, because the cloud is someone else's computer.
So we're trying to get it working here.
We have had issues with it.
That's not to say that the Zerakast developers are bad.
More that they're not the same as me.
It is slightly over-complicated.
You can probably just run ice cast on its own, which is the actual streaming protocol.
But Zerakast includes a system for managing lots of radio stations.
By default, it can handle about 50 stations simultaneously.
And it includes everything you need.
Ice cast, the streaming client, and liquid soap, which is a playlist programming system.
Mix is used on the laptop.
The way we stream is that each DJ or each host brings in their laptop,
connects it up to everything, and then connects to the server.
This causes problems that I will talk about later.
But mix is great just as a general recommendation.
It's open source.
It has virtual DJ decks and a virtual mixer.
If you want to get into music, you can try out DJing with this, although it is very difficult.
And it does also stream on its own.
You don't actually need to use but we use but because we do.
But is there.
That's not to say that it's bad.
It just only does one thing, and it does it well.
So I can't complain.
It just connects to a streaming server.
Getting this working will talk about this.
Installing is there a cast requires running a bash script directly onto your server,
which I don't like doing, and this is that it didn't like doing.
But I convinced them to do it.
Whoops, I forgot about CloudFlare.
You can't use CloudFlare because CloudFlare proxy will interrupt the audio stream,
so we have to go around that.
Then there was too many firewalls because there's the node firewall, the cluster firewall,
the ubiquity firewall, and then the Docker and the VM,
and then the fact that we're connected to the university's internet, which is a whole other system.
Okay, I think EngineX is the problem.
So I think we're just going to have to forward the port because the reverse proxy isn't working.
Oh, it's working now.
This slide was made before we got it working.
I was up two hours last night trying to actually get it working, and it's still not working.
I think our server is just really not set up the way it should be for it.
But problems we have still been like streaming on radio calls using our old system.
And a lot of things I've learned about actually running the station don't have dead air.
This is the main thing that you will hear about running a radio station.
And seriously, it's actually awful.
The actual chairperson of the society who is not me doesn't see this as much of an issue as it actually is.
But it's very annoying if you're trying to listen to the radio station,
and you connect to it, and then you hear nothing, and you don't know if your phone is broken,
or if they're just in the middle of switching laptops.
Which is the problem.
You have to stop the stream, unplug the laptop, someone else comes into the studio,
set the laptop up, and then it won't connect for some reason.
We have to keep plugging it in and out until it eventually connects, and then it does work.
But that takes like 10 minutes.
Sometimes the roadcaster just doesn't work, but I don't know, road or weird.
You just have to keep changing ports.
Please get pop filters if you're going to be doing streaming, and you have money.
It's really annoying.
I've did by pop filters, but they're actually the wrong shape, and they don't go on their rights properly.
And seriously, don't have dead air.
So fixing them.
The best thing you can do about dead air.
I found is dead air playlist.
This is a feature in liquid soap, which manages the actual stream on the actual audio stream.
You can set it up in a zerk house, so that when there is no live audio source,
it just simply goes back onto a fallback playlist, and it will run through that.
So that instead of just 10 minutes of silence, you get 10 minutes of some random song,
which then gets interrupted by the live broadcast.
Ideally, we would have a shared PC, but we can't afford them.
And yeah, for the roadcaster, just changing the USB ports eventually works.
And we take a pop filters, but I got the wrong ones.
But it's still work, and yeah, the dead air.
Don't have dead air.
Where can you listen to this amazing station?
You can listen to it at radio.sociities.au,
slash public slash to ut radio, because I haven't set the URL up correctly.
Or you can listen to it on neocities.org.
This was not created by me, the people who run the society
to have no computer science experience at all.
We've been begging them to change it, and also you can follow us on Instagram.
We do live broadcast every Thursday and Friday when it's working.
And we should, we are setting up the auto DJ to play music for the rest of the week.
If you have questions, I have scheduled this talk tonight to run for a flight,
but I will actually be outside for a few minutes at least.
And you can email my university email there.
This is a great of comments.
And also, thanks to Rouen and Tyler for helping me set up the server.
James and Thomas were setting the society.
No, the hug and my great girlfriend who was watching right now.
And Katie Behan for running society's office.
A four person job being done by one person because we're in middle hiring freeze.
And I've duplicated the slide.
And that's it.
So I'm going to do a little bit of a live demo here,
because it is somewhat working.
And dear girl, the hyperland doesn't play nice with the projector.
This is what Zercast looks like.
So here we have, I can't duplicate it.
Here we have our dashboard.
So this is to your radio.
You can see it's playing the playlist right now.
But I just set up a test.
You can set up streams in different quality.
You can set up different pages.
You can have podcasts.
You can schedule.
You can really do proper good stuff with this.
Ice casting connective for the actual live streaming when it works.
And it even supports song requests, which is kind of fun.
And I believe let's see how much storage I was given on the staging server.
I think we were given 100 gigabytes.
No, 30.
Ron's being stingy with the server today.
So this is our main page here.
I had to get this working last night.
But it is actually playing music.
So at the very least, if you do want to run a just a simple DJing station,
it's actually very easy to set up.
Because the incoming connection was the problem that we were having.
It's the outgoing connection is actually just proxy through the HTTP and HTTPS ports.
So any web browser can easily access it.
I believe is going through CloudFlare and NGNX.
And I guess I have time for a few questions.
You.
I think I was talking too fast.
Hi.
Question and then getting the mic mustered on.
Do you integrate?
Can you show up your the songs that are playing in some way?
Our says feed, the but client, whatever.
Not that I know of, but you probably can.
I believe it does support embedding on websites.
If I actually go to.
That works.
We do have our website here and you can integrate on websites with HTML and you can have an embedded
player in there.
But I don't know but I don't know but I don't use it on.
I'm looking into it though.
Any more questions?
Yep.
Question from the back here.
So with all the reverse proxy stuff, how does ice cast listener count work?
That's a problem I run into pretty regularly with ice cast.
Because it just doesn't like proxies.
Yeah, it doesn't.
I have no idea.
It's not working.
So.
Do you have more questions?
Yep.
I was going to.
The mic is there one second.
Yeah.
Thank you.
I was looking for the room.
I'm not late.
Maybe this is out of scope.
Please let me know if it is.
I was going to ask about the licensing and stuff about hosting.
Radio online and broadcasting the songs.
Because I emailed the media authority in Germany.
In the state, they said for a small radio, it's not required.
But I'm afraid, again, to publicly share.
I don't know.
I would not recommend doing anything commercial with other people's music.
We're probably violating copyright.
Yeah.
Not commercial.
Like a hobby project.
No ads.
No customized fits.
Did you have some experience in that?
I have no experience.
You probably won't get in trouble.
But fast them does not endorse that statement.
That's so political answer.
I wasn't waiting for that.
Thank you.
Good work.
Hi.
Did you happen to evaluate like Libra time or airtime as a station program in management?
I actually haven't heard of it.
What did you say the name was?
It was airtime some time ago.
But then it was forked as a Libra time.
I haven't heard of it.
I have been looking into other alternatives.
I just haven't stumbled on it.
Is there a chance to just say that?
It should be where mix is, I think.
Interesting.
I will look into that.
Thank you.
One more.
I'm just curious.
How do you handle bandwidth?
Are you using any CDN or who I best?
That would be a sadman question that I don't know the answer to.
I'm sorry.
I can pass it to one of the systems if you like.
Is it wrong there?
We will one day do a bit length because a double exchange.
If we just give them everything.
Thank you.
Please repeat the answer, maybe.
We have one gigabit link through the Dublin Exchange and all of the services are just given everything.
We only have about five services running on the CSS++ service.
So it's not a big deal.
And about four of those are websites.
And one Minecraft server.
I can probably do one more.
Or I think it's all.
Let's thank this speaker again.
Thank you very much.