<?xml version="1.0" encoding="iso-8859-1" ?>
<rss version="2.0">
<channel>
	<title><![CDATA[EricBall's Tech Projects]]></title>
	<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&module=showblog&blogid=7]]></link>
	<description><![CDATA[EricBall's Tech Projects Syndication]]></description>
	<pubDate>Sun, 28 Feb 2010 21:03:06 +0000</pubDate>
	<webMaster>editor@atariage.com (AtariAge Forums)</webMaster>
	<generator>IP.Blog</generator>
	<ttl>60</ttl>
	<item>
		<title>Bloombox is not green!</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6864]]></link>
		<category></category>
		<description><![CDATA[I was listening to the 60 Minutes podcast and they were doing a segment on the <a href='http://en.wikipedia.org/wiki/Bloombox#Bloom_Energy' class='bbc_url' title='External link' rel='nofollow'>Bloombox</a>, which is based on a fuel cell.  The thing which annoys me is they call this "green energy".  Umm, folks . . . you're generating electricity by consuming gaseous hydrocarbons (typically natural gas), which isn't green IMHO unless you are capturing bio-methane.  And even then you're replacing the power grid with some sort of hydrocarbon delivery system.  They also talk about avoiding grid losses, but half of my gas bill is "delivery charges"!  Pushing gas down a pipeline ain't free folks!<br />
<br />
This is not to say a fuel cell can't be used to generate power, or that it won't have value in some situations.  But listening to the segment I couldn't believe the hype and spin which were being presented as fact.  (OTOH, it's a good thing it wasn't broadcast with last week's segment on con artists and Ponzi schemes.  Bloombox has taken a lot of VC money, and the few boxes they have sold weren't cheap either.)]]></description>
		<pubDate>Thu, 25 Feb 2010 18:08:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6864]]></guid>
	</item>
	<item>
		<title>Home network monitoring</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6852]]></link>
		<category></category>
		<description><![CDATA[My wife plays Cafe World and other games on Facebook.  She's noticed that her MacBook gets hot while she's playing.  I suspect it's just because Flash is a hog, but it occurs to me that I really have no idea what it's doing.  And although my home network is safely hidden behind a NAT router, that doesn't protect me if something which is running from inside Flash (which has security holes) or other "trusted" environments.<br />
<br />
What I'd like to do is put a sniffer on a hub connected between my cable modem and the NAT router to watch the traffic coming out of my network.  Eventually I could scale this up to a full IDS (Intrusion Detection System) which would do some analysis and flag any suspicious traffic for later investigation.  But first I'd like to get a basic idea of what is going on, and thus what the IDS will need to deal with.<br />
<br />
Unfortunately, I haven't been able to find a plug&play LiveCD which does what I want.  There's a few network tools LiveCDs out there, but they assume you a) want to do more than capture packets b) understand all of the tools they provide.  So I think I'm going to go with plan B, which is to install Wireshark under Windows, capture a bunch of data, then analyze it myself.]]></description>
		<pubDate>Thu, 18 Feb 2010 18:20:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6852]]></guid>
	</item>
	<item>
		<title>mythbuntu woes</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6788]]></link>
		<category></category>
		<description><![CDATA[Both my new Dell (very fast and near silent) and the two ATI HDTV Wonder cards arrived this week.  So after backing up the old system last night I tried to install Mythbuntu today.<br />
<br />
The install itself went okay.  I think most of the problems I had were self-inflicted.  Unfortunately, my capture cards weren't automatically recognized, but I expected that because I had the digital-only VE version.  However, even if I had the normal cards, I would have had to jump through hoops to get the cards recognized.  But I think that's all okay now, the channel scan picks up the local stations and it's no longer complaining about no local channels.<br />
<br />
Unfortunately, I haven't been able to establish connectivity otherwise.  The web interface isn't active and the LiveCD front end doesn't want to connect either.]]></description>
		<pubDate>Sun, 31 Jan 2010 03:12:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6788]]></guid>
	</item>
	<item>
		<title>MythTV plotting</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6763]]></link>
		<category></category>
		<description><![CDATA[Well, I just bought two ATI HDTV Wonders on eBay, so I guess it's gone beyond plotting.<br />
<br />
I've read as much as I can without taking the plunge.  In theory it should be fairly simple.<br />
1. Acquire PC to use as a back-end server.  This server contains the capture cards and the hard drives to store the recordings.  Since I'm dealing with ATSC the CPU specs don't matter.<br />
2. Acquire <a href='http://www.linuxtv.org/wiki/index.php/ATSC_PCI_Cards' class='bbc_url' title='External link' rel='nofollow'>compatible capture card(s)</a>.  Sure, there may be cheaper cards out there which you might be able to get working, but it's reasonable to assume if no-one has done it, it can't be done.<br />
3. Download and burn the install ISO.  I'm going to play with <a href='http://www.linhes.org/' class='bbc_url' title='External link' rel='nofollow'>LinHES</a> as it seems to be minimalist (so probably better for my needs).  However <a href='http://www.mythbuntu.org/' class='bbc_url' title='External link' rel='nofollow'>Mythbuntu</a> seems to have a more active community (and is on the current release of MythTV.  <br />
4. Install & test.  In theory LinHES is also a LiveCD which will allow any computer to be used as a front end.  If so, that would allow me to use another computer during the test.<br />
5. Get PS3 interface working.<br />
<br />
4a. <a href='http://www.mythtv.org/wiki/File_Storage#Example_setup' class='bbc_url' title='External link' rel='nofollow'>Filesystem configuration</a>:<br />
hda1 is the /boot partition, ext2 formatted<br />
hda2 is the / partition, Reiser3 formatted<br />
hda3 is the swap partition<br />
hda5 is the /usr partition, Reiser3 formatted<br />
hda6 is the /var, ReiserFS formatted<br />
hdb1 is the /mythtv partition, JFS formatted]]></description>
		<pubDate>Wed, 20 Jan 2010 18:31:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6763]]></guid>
	</item>
	<item>
		<title>new project curse</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6751]]></link>
		<category></category>
		<description><![CDATA[I have too many unfinished projects.  I think of a project and I can think of nothing else.  It rattles inside my head, making it difficult to think of anything else.  But as I actually start the project the noise quiets down and life returns to normal.  But then I get another idea and I can never quite get back to finishing off the project.<br />
<br />
Currently rattling around in my head is an idea for an MPEG Transport Stream separator.  This relates back to my idea of using my PS3 as a MythTV front end.  (That project is stalled for a few reasons, including my unfinished outdoor antenna project.)  I have some sample ATSC captures which the PS3 won't play back without "transcoding", which I'd like to avoid.  The files are basically raw MPEG Transport Streams, and I suspect the reason my PS3 won't play them is because they 1 - are slightly corrupted and don't begin nicely and 2 - contain multiple channels.<br />
<br />
However, the transport stream is a fairly simple container format.  The audio & video streams are chopped up into 184 byte chunks, then a 4 byte header is added.  (Except for the start & end of frames which have a timestamp or padding added respectively.)  The whole mess is then multiplexed together with some metadata packets.  So unlike other container formats, my program only has to deal with packets and parsing some of the metadata.  Everything else can be passed through unchanged.<br />
<br />
The audio and video streams for each channel in the transport stream are identified by the Program Map Table and the PMTs are identified by the Program Access Table.  So, to extract a single channel I need to find and parse the PAT and the PMT then copy over all of the packets for just those audio and video streams along with the PMT and a PAT which only contains that channel.<br />
<br />
Surprisingly, I haven't found a tool which does this.  However, there are other tools which do various repairs on transport streams.  So I don't know if I need to implement something like that.]]></description>
		<pubDate>Wed, 13 Jan 2010 18:56:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6751]]></guid>
	</item>
	<item>
		<title>PS3 as ATSC PVR?</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6728]]></link>
		<category></category>
		<description><![CDATA[Of course, now that I've ordered a new computer the "dead" one stops crashing and actually transcodes overnight.  So now I have a spare computer to find a use for.<br />
<br />
I have two SD TiVos - a dual tuner connected to the HDTV for analog and digital cable, and an old Sony S1 in the bedroom for analog cable.  I also have an antenna connected to the HDTV for getting OTA (over the air) channels in HD.  I'd love to add an HD TiVo but I can't quite justify it for recording network television; and I can't justify the rental cost of a cableco HD PVR when I get HD OTA for free.  But would it be possible to use my old computer as a cheaper solution?<br />
<br />
An ATSC PVR does two things - first it stores the bitstream to disk and second it decodes that bitstream for display.  The first step just requires the right hardware and a large hard disk.  The second step is CPU or GPU intensive.  So my old computer should be able to handle the first step without any problems, I just need to buy the ATSC capture hardware; but the second step is quite beyond the capabilities of the system.  However, if the display were handled by another system, like my PS3 which is already attached to the HDTV, then I'd be laughing.  (The old system is also noisy, so I don't want it next to the HDTV anyway.<br />
<br />
That brings in two more challenges - first is getting the video to the PS3 so it can display it and second is getting the video in a format the PS3 will display.  The PS3 can function as a DLNA client, displaying video streamed by a DLNA server.  There are several DLNA server applications for PCs, including <a href='http://code.google.com/p/ps3mediaserver/' class='bbc_url' title='External link' rel='nofollow'>PS3 Media Server</a> which will automatically transcode video into a format the PS3 can use.  Unfortunately, transcoding is even more CPU intensive than simply decoding.  So unless the PS3 can display something very close to ATSC this idea still won't work.<br />
<br />
Fortunately, (based upon a simple test) it looks like it can.  One problem is the PS3 Media Server interface is dang ugly - it's a very simple folder tree structure.  So then the question is whether I can find some free software which will behave as a kind of minimalist PVR (ideally controllable via a web interface).]]></description>
		<pubDate>Thu, 07 Jan 2010 15:49:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6728]]></guid>
	</item>
	<item>
		<title>just buy a Dell?</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6715]]></link>
		<category></category>
		<description><![CDATA[My home computer is close to dead - random reboots and errors which point to a hardware failure.  It's at least 7 years old, so I guess it's time for an upgrade.  Sigh. <br />
<br />
I've spec'd out a Dell replacement for C$878+tax etc.  My question is whether there's any real point in looking at other makes etc.  Unlike the old machine, I'm not interested in researching each component and assembling it myself.  I have consoles for playing games so I don't need the ultimate in performance.  I just want good value for money.<br />
<br />
I guess my thinking is HP et al are sold via channels like Future Shop, who are going to take a slice of the profit.  But Dell can take some of that cost and give me a better price.<br />
<br />
I'd look at Macs too if I didn't have a bunch of Windows only software.  Macs are great if you can stay inside the box of available software.  Unfortunately, I tend to wander off that trail.]]></description>
		<pubDate>Sun, 03 Jan 2010 21:29:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6715]]></guid>
	</item>
	<item>
		<title>Beatles Rock Band</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6705]]></link>
		<category></category>
		<description><![CDATA[Two years ago when Rock Band was released, we gave it some serious consideration for a family Christmas gift.  But we ended up giving the whole plastic instrument craze a pass until this year where we used some gift money and took advantage of the post-Christmas sales to buy Beatles Rock Band.  The big advantage is we "know" most of the songs.<br />
<br />
And we're having a blast.  C is getting better banging on the skins, and I play bass while K handles the vocals (although we might swap).  We've worked our way through the story mode (on easy for the most part) already, so now we'll probably explore and see what else the game has to offer.  We might buy some DLC (like the Sgt. Pepper album) and maybe even one of the other games (since we have the instruments).]]></description>
		<pubDate>Fri, 01 Jan 2010 00:23:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6705]]></guid>
	</item>
	<item>
		<title>FAST! DHT</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6684]]></link>
		<category></category>
		<description><![CDATA[I've finally finished (and debugged) my Fast Discrete Hartley Transform for the Propeller.  It takes 2^N signed 32 bit input samples and produces the output in the same array.  I've measured the following:<br />
16 samples in 12,496 clock cycles<br />
64 samples in 87,648 clock cycles<br />
256 samples in 534,656 clock cycles<br />
1024 samples in 2,899,504 clock cycles<br />
4096 samples in 14,668,112 clock cycles<br />
<br />
At 80MHz that's 27.5 1024 sample DHTs per second!]]></description>
		<pubDate>Mon, 21 Dec 2009 02:39:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6684]]></guid>
	</item>
	<item>
		<title>Hartley Transform</title>
		<link><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6654]]></link>
		<category></category>
		<description><![CDATA[Sample code (unoptimized).  Comment if you want more details.<br />
<br />
<pre class='prettyprint'>
L = log2(N)
for i = 0 to N-1
  j = bitreverse( i, L )
  if j &gt; i then
    t = x&#91;i&#93;
    x&#91;i&#93; = x&#91;j&#93;
    x&#91;j&#93; = t
  endif
next i

for i = 0 to N-1 step 4
  t0 = x&#91;i&#93;
  t2 = x&#91;i+1&#93;
  t1 = x&#91;i+2&#93;
  t3 = x&#91;i+3&#93;
  x&#91;i+0&#93;=(t0+t1+t2+t3)/2
  x&#91;i+1&#93;=(t0+t1-t2-t3)/2
  x&#91;i+2&#93;=(t0-t1+t2-t3)/2
  x&#91;i+3&#93;=(t0-t1-t2+t3)/2
next i

for o = 3 to L
  s = 1 &lt;&lt; o
  h = s / 2
  q = s / 4
  for i = 0 to N-1 step s
    t0 = x&#91;i&#93;
    t1 = x&#91;i+q&#93;
    t2 = x&#91;i+h&#93;
    t2 = x&#91;i+h+q&#93;
    x&#91;i&#93; = t0 + t2
    x&#91;i+q&#93; = t1 + t3
    x&#91;i+h&#93; = t0 - t2
    x&#91;i+h+q&#93; = t1 - t3
    for j = 1 to h-1
      t0 = x&#91;i+j&#93; / sqrt(2) 
      t1 = x&#91;i+h-j&#93; / sqrt(2) 
      t2 = x&#91;i+h+j&#93; / sqrt(2) 
      t2 = x&#91;i+s-j&#93; / sqrt(2)
      x&#91;i+j&#93;   = t0 + t1 * cos(2*pi()*j/N) + t3 * sin(2*pi()*j/N)
      x&#91;i+h-j&#93; = t2 + t1 * sin(2*pi()*j/N) - t3 * cos(2*pi()*j/N)
      x&#91;i+h+j&#93; = t0 - t1 * cos(2*pi()*j/N) - t3 * sin(2*pi()*j/N)
      x&#91;i+s-j&#93; = t2 - t1 * sin(2*pi()*j/N) + t3 * cos(2*pi()*j/N)
    next j
  next i
next o
</pre>]]></description>
		<pubDate>Mon, 07 Dec 2009 20:15:00 +0000</pubDate>
		<guid><![CDATA[http://www.atariage.com/forums/index.php?app=blog&blogid=7&showentry=6654]]></guid>
	</item>
</channel>
</rss>