<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=ISO-8859-1">
</head>
<body bgcolor="#ffffff" text="#000000">
Hello all,<br>
<br>
So LCA wrapped up today; not sure how many people were watching the
streams or seen the news, but next years its in <b>Ballarat,
Victoria</b>. We've got our next meeting on <b>Tuesday 8th Feb </b>where
all our crew who were there will give us a run down on what
happened.<br>
<br>
Which got me thinking about streams. I set up a test Icecast server
to relay the LCA feeds - I should have through about this sooner and
organised a direct upstream server to relay from, because it turned
out that relaying from the public icecast servers was a little
intermittent. I started to think about counting all the people
connected to the relays in near-real time, to judge audience
numbers. Icecast has a nice admin interface, but you need an admin
password to see that; there's very little else you can do without
the admin authroisation...<br>
<br>
So I thought I'd cobble together a very quick scraper that collects
the statistics from the admin interface, and then makes that
available in a compact format that could be polled across all the
edge relay hosts (in parallel), and then summed together. Hence I
hacked together a few bits ad pieces: some XPath to extract content
from a web page, JSON to encode the data for transport, and Curl
Multi to access multiple servers at the same time, to distill out
two scripts.<br>
<br>
<a class="moz-txt-link-freetext" href="https://www.james.rcpt.to/svn/trunk/Icecast_Counting/">https://www.james.rcpt.to/svn/trunk/Icecast_Counting/</a><br>
<br>
The first script, icecast_client_count.cgi, is run by the icecast
admin, who needs to configre it with the credentials to scrape the
passwd. They can of course limit the exposure of this data using
standard web server tools (IP address restriction, etc?). The second
script, poll_icecasters.pl is run to retrieve this data; it could
then pop this information into an RRD, and you've got instant viewer
numbers! for your stream(s).<br>
<br>
Anyway, the video streams were pretty good, a few interruptions, and
a little bit too much of "one shot for 20 minutes", but its pretty
solid. I was wondering if anyone was interested in playing with this
kind of tech - get a couple of cameras, a mixing desk, and see what
works and what doesn't, and seeing what can be done to improve it.
Some of the ideas I had:<br>
<br>
* Titling. Have the name of each talk shown during the talk. Have
the name of the speaker(s) overlaid at the start of their talk (or
when speakers change)<br>
* Branding: overlay the conference logo?<br>
* Additional content: as soon as a presentation ends, the streams
often stop abruptly or the camera i left pointing at a random spot
on the wall. What else could be done?<br>
<br>
Anyone else interested in tinkering at some stage?<br>
<br>
James<br>
<pre class="moz-signature" cols="72">--
Mobile: +61 422 166 708, Email: james_AT_rcpt.to</pre>
</body>
</html>