Thursday, 9 April 2009
Stream Tags... The Good and The Bad
That's the basics. At STAR we used to go a bit further with "Now Is Always by Bon Jovi followed by UB40". That's now and next which is on a par with some DAB stations. However this generated complaints! This was due to people using stream rippers and getting annoyed by the tracks getting tagged with the extra information!
As much as we are not to really cater for steam rippers (it does boost our listener stats though), I can't help but think we maybe went a little overboard. It also forward announced the next track which most of the time on STAR doesn't happen until the track is playing. Good or bad... you decide!
Thursday, 26 March 2009
Levels, Levels, Levels... and More!
Hopefully my new notice may get them to pay attention. It has large lettering, angry underlines and the required expletives (well, not really). I can accept mistakes that are corrected when you catch them, I do it from time to time. But listening to the output and not doing anything about distortion for minutes at a time... I'm not so happy about that.
And for the "more" bit. I've picked up the position of President of WiredSoc (Computer Science society). Let's see what we can do with Wired this year...
Sunday, 22 March 2009
Election Results In
We disagree on music policy but it's completely in his hands now. I only ever disagreed on the basis we were too specialist - we're not competing with Kingdom, Tay or Wave but iTunes. Hopefully this year we will see money dedicated to a rotation based playout system (currently it's on select a random track from collection X).
Where will STAR go this year... who will know? But let's just hope we can get the listener figures up. :)
Wednesday, 4 March 2009
STAR Studio Pics
Saturday, 21 February 2009
Playout Woes
stated now that no playout system will be deployed problem free. There
will almost always some niggle or glitch which gets ironed out and the
system works over time.
However, you don't usually have to recode serious portions of the
playout system.It's actually starting to worry me the amount of work
the team are putting in to get a system that currently limps along.
studio_play and studio_manage (the in-studio parts of Digiplay) both
seem to crash with various issues. It can hang indefinitely when a load
error occurs (we've worked around this) and on a whim studio_manage can
die. It usually works after recovery so go figure.
It's causing real issues for the on-air team. They are dealing with
loosing playout during live output and on occasion loosing the
sustainer feed. Not really acceptable and the reason why one of
Digiplay's outputs has been removed from the mixer and replaced with a
second CD player.
I can only hope we can get to stable quickly. It's simply not
sustainable to be maintaining a playout system at code level. If we
cannot get to a stable state in a reasonable period, we may have to
write the whole thing off as a lesson.
Thursday, 22 January 2009
Digiplay Deployment Continues
Still to come - touchscreen fully operational (a backport of a newer version of Xorg for multi-pointer support may help here), a full importer and making our soundcard work. Hang on, I said we were generating audio, what am I on about a sound card for? Well, we've got a card that we'll use for 3 different outputs to the mixer. 2 sound cards for digiplay doesn't quite cut it!
We should be properly operational in the near future. Then it's on to training our teams...
Wednesday, 10 December 2008
Playout Systems on Linux
There is a good reason for this: why force change. Windows isn't exactly unstable when doing this sort of job. Also, take it from me, developing audio apps to work cross-os is a pain the the ass. This is especially when you want to layer tracks or use more than one sound card.
STAR is in a bit of an unusual position for a radio station. We operate Linux boxes (namely Debian) with no copy of Windows in sight. So, with most playout systems on Windows, what do we make use of?
Well, until recently, it's been an in-house botch job. This has taught us one lesson, don't trust Javasound to do the job.
With Java written off, we have a number of options: Campcaster, Rivendell, Digiplay and a Windows system running on Wine.
Starting with Campcaster. This was the first option we tried with STAR but it proved to have a few too many issues for us. For one, it doesn't log tracks played in live assist mode. Oops, bit of a show stopper there for an online radio station. Secondly, the configuration options are a little too exposed. You don't want people tinkering with settings on a radio station!
Rivendell is the other big Linux option. It's certainly aimed at the pro end of the market supporting a full scheduler and powerful playout system. Possibly even a little too much for us. It was actually decided against for STAR for two reasons: the MySQL requirement (we use PostgreSQL and according to the ITS liason will never see MySQL on the server) and the work required to make the scheduler tick. We're a volunteer organisation with a high tunover (students only stay for 4 years) so any system requiring a lot of work is not an option.
Wine is the Windows compatability system for Linux. It brings the ability to run Windows programs to the Linux desktop. Great, you may think, for letting us use the playout systems on our computers. Not quite. I could only find two playout systems that worked on Wine: StationPlaylist and mAirList. Both seemed to work OK but the cost factor (for StationPlaylist) and stability (we're relying on a compatability layer here) wrote off this option.
Now for the last on the list: Digiplay. This is Warwick University's in house job (not written in Java though). It has the benefits of being simple to use and sporting a web interface (I'm not sure of the merits of this but oh well). However, there are a few issues. Sue (the automation part) seems to simply be random select at the moment and there is no mass importer (apparently RAW just rip off of CDs). The last issue could be fixed by adapting our in-house import script.
Well, the working Linux playout system seems not to exist, well not for a small vountary station. Every option seems to have some sort of serious issue, whether legal (Campcaster), complexity (Rivendell), missing features (Digiplay) or technical (Wine).
I don't really see the commercial software developers really taking Linux seriously. Let's be honest, it's not really a big issue for most in this market. However, we need to choose a system. So what did we choose:
Digiplay.
Ah well, we'd better get cracking on the scripts and fixes to make it do what we need.
EDIT: Clarified the Digiplay and Wine issues. We didn't run Digiplay on Wine.
Wednesday, 19 November 2008
Interviews and Playout Systems
On the good news front, STAR's new playout system now has a music library. This means the music team can be trained for the system to go fully live and take over the current one.
It'll be a bit of a see how it goes on this one. We've now tried a few Linux based playout systems and if this is hopeless, we'll be paying out for a Windows licence and a mainstream playout system.
Talking of Windows based systems. Work on AllDay DJ 3 is well under way. I've started afresh, using NHibernate for the database stuff (it'll now work on a number of DBMS without screwing about AND I don't need to write all the boilerplate SQL) but still the same old for the audio library.
Progress wise, I've got the database part working, a track importer operational and the main player core operational, though without overlap / VT or soundcard playthrough support (think IRN if you're not seeing a reason to support this). The plan for supporting these is to edit the player object to take different special file names (e.g. "#PLAYTHROUGH 30" to indicate 30 seconds of playing through a soundcard input).
Monday, 27 October 2008
Listeners Revisited
However, we've just have just gone back on air. Though this time things changed a little:
The peak listener figures have shot up to what is possibly a STAR high. 47 simultaneous listeners - wow. Although things did die off towards the end of the week, it's still fairly impressive.
It should be noted that when reading the graph, 1 should be removed from any number to account for the union bar machine. However, that does still mean no overnight listeners.
Wednesday, 1 October 2008
Numbers, Numbers, Numbers
It's very well known that STAR does not attract huge numbers of listeners. In fact, you'll be hard pressed to find a student radio station (online only) that does. In previous years, our listener numbers have been derived from parsing the Icecast logs with something along the lines of awstats (in fact it was usually awstats). This creates some rather high listener figures (up to x hundred listening at once) due to counting each "hit" in the log as a listener.
This year, we made use of MRTG polling the Icecast server. This provides us with rolling statistics and some rather pretty pictures. Below is the graph for Fresher's week 2008:
Not bad for a one week stint. We peaked about 12 listeners.and averaged about 1 through the night. So adjusting for the Union bar computer, that's 11 during live periods and nobody through the night. Let's hope these start to go up in the future.
Wednesday, 24 September 2008
Live and On-Air
However, launch has not been without it's problems. For example, our streaming machine (studio6) just seemed to "die" the night before. So we get to the studio to find the machine has had a hardware failure (probably disk controller). Not good 1hr to launch! Kieran and myself got one of our little used machines (studio3) setup to handle streaming. The saviour that is NFS home directories saved us having to redo the settings file.
Also, we are now operating with new microphones in the studio. We're still trying to get the compressor settings right on that one. We've either got people *way* too loud (distortion) or people speaking too quietly, which keeps cutting out the mic (we've got a lower limit set to eliminate background noise). My plan is to go fix that later today.
On a plus side, Kieran has setup MRTG to give us accurate listener figures and pretty graphs. I'll probably post those after the broadcast has finished. So, as the DJs say - "stay tuned for that one".
Oh, and just before I forget. There are rumours that STAR will be attending the Christmas lights switch-on in St. Andrews. This should be an interesting event. And as ever, we've got STAR's music festival thingy to come as well.
Thursday, 18 September 2008
Studio Nearly Read To Go LIVE
Secondly, we've installed the new microphones and stands. We're now actually using broadcast mics and angelpoise stands. Less noise and better quailty than what we used to have.
Thirdly, we're reassigning some of the machines. The current music server is to loose this service to the playout system locally. However this change will NOT be made until after the Orientation broadcast. What will change is this machine will be used for web browsing / e-mail. That is what I will be spending tomorrow sorting out.
Ah well, after all this effort, we should sound much better.
Oh, I might actually take some pics for you lonely anoraks when I'm their tomorrow.
Friday, 12 September 2008
We Go Back A Step
$id = $_GET['id'];
$sql = "SELECT * FROM table WHERE id = " . $id;
Not wanting to be the one cleaning up the database after somebody has attacked I've changed these to use parameterized statements.
I've also taken the opportunity to remove some hard-coded database values. This is in relation to the committee page. In the old version, the position names are in an array and a "printperson" type method is called for each position. I've edited this to make one call the the
"printperson" method that displays all the positions. This way, future edits need only be made to the database.
In other STAR software news, the playout system seems a bit more stable. However, the system will just stop making sound after a random period of time. This does not seem connected to the playout system as it reports as still playing (the javasound calls are still being made and reporting successful) and restarting the system doesn't clear the error... weird.
Anyway, I've got to go and tell people about our busted speaker, missing headphones and organize getting some holes drilled.
Tuesday, 9 September 2008
Getting Ready To Go LIVE
However, we have run into a few problems. Currently the Media Suite (where STAR is located) has a tiled floor. This means every chair movement can be heard on air - not good. We've asked Estates about some carpet to put in the studio. Turns out it's not the first time STAR has asked and the answer is NO due to the union' s stance. I guess we have to play nice on this one and put up with tiled flooring for now.
Friday, 1 August 2008
Website and Monitors
I've done it. I've gone and gotten STAR a "new" website. I use "new" in quotes as a lot of the old website is still in use. What we've acutally done installed as well-known CMS and made it act as an interface to our old code.
Not the best of ideas, but it works. We get the benefits of the flexability of the CMS combined wiith the bespoke features unique to STAR.
I would post a link but I've to keep it hidden until we "launch".
However, that is not the end of this post. I mentioned about "monitors" in the title. This relates to my latest software endevour. I'm currently putting together a stream monitoring system for STAR that logs listener number over time. It's currently a fairly simple set of scripts that makes use of RRDTool. More on that when it is completed.
Wednesday, 30 July 2008
Problem Solved
You can view the Python script here. I will get onto packaging the rest of the source for your viewing some point in the near future.
EDIT: Full source code can be obtained here. Also, the application seems to use 100% CPU. I might want to put a sleep call in somewhere.
Monday, 28 July 2008
Dropping Down A Level
The application in question is a small command line application that calculates accurite track lengths. Making use of the FMOD Ex API, it plays a track, constantly checking the levels. From this the actual end point is calculated. The result is no dead air on STAR.
It's not been without its problems though. I've completed the audio part of the application and most of the database side of things. However, I have run into the error "Could not connect to database. Reason: could not create socket: Too many open files" when trying to connect to the database. Annoying, and surprisingly the suggested fixes on google are no help.
So, I'm planning to test it on one of the STAR machines. Problem being I'll need to install the FMOD library on the machine. Thankfully not really an issue as it is supplied compiled. The installer just copies files over. So we should be ok without having make on the machines to run through the script.
I've also been informed I should be packaging the application. Specifically in a .deb package as we are running debian. Not really a priority in my book (I'm more interested in getting the application working and running) but would be nice. Though I should point out that the debian packaging documentation was not the easiest to find. Once there, it seems easy enough.
Sunday, 20 July 2008
Get Voting
I decided to go ahead with allowing the user to vote on the last 5 played tracks. This currently includes jingles, promos and sweepers until I get the exceptions setup. However, the listeners are only choosing from tracks they have just heard. So, if it sounded rubbish, you vote it as rubbish.
The results are held displayed on the staff portal to all registered users. This could potentially allow presenters to integrate the voting into their shows.
There are a few restrictions in the system. You can only vote for each track a maximum of once per day and a vote will only hold weight for 1 week (this may be adjusted in the future). As the automatic logging system can only logs tracks on the playout system, only music played from the computer can be played. Though it should be noted that any playlisted music would have to be on the system anyway!
So, if you're eager to get voting, you'll have to wait until we launch again in the autumn. But when we do, you can vote by clicking on the "listen now" button then "click here" on the popup. Just follow the onscreen messages. (The overly eager can just click here).
Tuesday, 17 June 2008
Get Talking
I've put together a simple PHP application that sends messages to the database rather than /dev/null. These are retrieved via. an AJAX page that fits quite nicely into a popup. New messages are polled for roughly every 15 seconds. I say roughly as the next request will not start until the current one is completed.
One point I thought I would make is over the data format used to get data from the server. Due to the regular updates and amounts of data to be passed, I decided to make use of JSON. It carries less overhead than XML for the data being transferred and is quickly parsed by the Javascript through a simple call to eval(). Although not ideal for most situations, it seemed to make sense to me on this simple project.
Anyway, it's integrated and now up and running. However, I don't think I'll be posting a public URL for this one. Security through obscurity and all that. :)
Monday, 9 June 2008
Getting Things Going
One of the major items on my todo list this summer is STAR's website. It's not the most updated of sites. The committee are looking to get a new website. I've been a little more sensible and looking at all the options.
A New Site
If we go for a new site, we can keep it seperated from the admin side of things (mailing lists, etc.) possibly even keeping the current staff portal but slimmed down. There are a number of "off the shelf" options. However they would require a fair amount of customisation.
I've been experimenting with this option. In fact in a day I managed to get this site together for experimentation.
Update The Old One
The old site could easily have the look / layout changed without too much work. However, there is a fairly sizable list of "requests" from the old committee over the website. Considering I'm already getting flack for refusing to follow through an order for duckers (we don't need them and they would be too difficult to install correctly with our setup), I would have to implement most of these changes.
The old site can be found here.
Get Involved
The options are open, what's your opinion?
I've dropped the requirement to register to submit your comments. You will need to supply an e-mail address but I promise not to sell your information to anyone that looks a bit shifty.