<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Andrew M. Whalen &#187; programming</title>
	<atom:link href="http://amwhalen.com/archives/tag/programming/feed" rel="self" type="application/rss+xml" />
	<link>http://amwhalen.com</link>
	<description>Thoughts on the web, programming and other nerdery by Andrew M. Whalen.</description>
	<lastBuildDate>Thu, 29 Dec 2011 14:13:12 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
		<item>
		<title>Editing Songbird Add-ons</title>
		<link>http://amwhalen.com/archives/2009/04/08/editing-songbird-add-ons</link>
		<comments>http://amwhalen.com/archives/2009/04/08/editing-songbird-add-ons#comments</comments>
		<pubDate>Wed, 08 Apr 2009 19:35:58 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[add-on]]></category>
		<category><![CDATA[hacks]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[songbird]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/?p=594</guid>
		<description><![CDATA[The <a href="http://addons.songbirdnest.com/addon/1301">Notify Me</a> add-on allows you to get <a href="http://growl.info/">Growl</a> notifications when the song changes. Unfortunately, the add-on hadn't been updated in 4 months. Here's how I made it work with the latest version of Songbird.]]></description>
			<content:encoded><![CDATA[<p>If you haven&#8217;t seen it yet, <a href="http://getsongbird.com/">Songbird</a> is a Mozilla-based open-source music player. I&#8217;ve been using for some time now and it&#8217;s amazing.</p>
<p>Just like Firefox, it has a system of add-ons. The <a href="http://addons.songbirdnest.com/addon/1301">Notify Me</a> add-on allows you to get <a href="http://growl.info/">Growl</a> notifications when the song changes. Unfortunately, the add-on hasn&#8217;t been updated in 4 months. Here&#8217;s how I made it work with the latest version of Songbird.</p>
<p>Download the add-on from the <a href="http://addons.songbirdnest.com">Songbird Add-ons</a> page. The .xpi file is just a zip file, and we have to unzip it to modify the contents. In Terminal, change to the directory where the .xpi file is (mine was on my desktop). Make a temporary folder to put the add-on files into when they&#8217;re unzipped. Put the .xpi into that folder and unzip it, then move the .xpi file out of there. Here&#8217;s the process in Terminal:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">cd</span> ~<span style="color: #000000; font-weight: bold;">/</span>Desktop
<span style="color: #c20cb9; font-weight: bold;">mkdir</span> notifyme
<span style="color: #c20cb9; font-weight: bold;">mv</span> notifyme-osx-1.1.0.xpi notifyme<span style="color: #000000; font-weight: bold;">/</span>
<span style="color: #7a0874; font-weight: bold;">cd</span> notifyme
<span style="color: #c20cb9; font-weight: bold;">unzip</span> notifyme-osx-1.1.0.xpi
<span style="color: #c20cb9; font-weight: bold;">mv</span> notifyme-osx-1.1.0.xpi ..<span style="color: #000000; font-weight: bold;">/</span></pre></div></div>

<p>Once unzipped you&#8217;ll find a file named <code>install.rdf</code>. Open that up in a plain-text editor (Not MS Word) and change the <code>maxVersion</code> variable to whatever version you want. I&#8217;m changing it from 1.1.0rc1 to 1.2.0a.</p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;em:maxVersion<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>1.1.0rc1<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/em:maxVersion<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

<p>Save <code>install.rdf</code> and zip the add-on back up (notice I changed the file name):</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">zip</span> <span style="color: #660033;">-r</span> ..<span style="color: #000000; font-weight: bold;">/</span>notifyme-osx-1.2.0a-unofficial.xpi .</pre></div></div>

<p>You can then go to Tools -> Add-ons&#8230; in Songbird, click Install&#8230; and find the .xpi file you just zipped. It shouldn&#8217;t warn you about the version being incompatible anymore.</p>
<p>Although I just detailed how to do this and it worked for this add-on, I don&#8217;t recommended it. The max version is there for a reason. There may have been changes to Songbird that make an add-on incompatible with a higher version. Don&#8217;t blame me if you try this and your computer catches fire.</p>
<p><strong>Here&#8217;s the finished product:</strong> <a href="http://amwhalen.com/blog/wp-content/uploads/2009/04/notifyme-osx-120a-unofficial.xpi" onClick="javascript:pageTracker._trackPageview('/downloads/notifyme-osx-120a-unofficial.xpi');" class="download">notifyme-osx-120a-unofficial.xpi</a></p>
]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2009/04/08/editing-songbird-add-ons/feed</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Project: Time Lapse Photography</title>
		<link>http://amwhalen.com/archives/2009/01/22/project-time-lapse-photography</link>
		<comments>http://amwhalen.com/archives/2009/01/22/project-time-lapse-photography#comments</comments>
		<pubDate>Thu, 22 Jan 2009 20:26:51 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[audacity]]></category>
		<category><![CDATA[ffmpeg]]></category>
		<category><![CDATA[gphoto]]></category>
		<category><![CDATA[imagemagick]]></category>
		<category><![CDATA[nin]]></category>
		<category><![CDATA[photography]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[Projects]]></category>
		<category><![CDATA[timelapse]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/?p=471</guid>
		<description><![CDATA[I&#8217;ve recently come up with a good workflow for creating time lapse videos from still images, so I added time lapse photography to my projects page. While doing this, I&#8217;ve had a chance to use gphoto2, ImageMagick, FFmpeg, and Audacity. All of those are free and open source utilities, so anyone can follow the same [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve recently come up with a good workflow for creating time lapse videos from still images, so I added <a href="http://amwhalen.com/blog/projects/time-lapse-photography/">time lapse photography</a> to my <a href="http://amwhalen.com/blog/projects/">projects</a> page. While doing this, I&#8217;ve had a chance to use <a href="http://www.gphoto.org/">gphoto2</a>, <a href="http://www.imagemagick.org/">ImageMagick</a>, <a href="http://ffmpeg.org">FFmpeg</a>, and <a href="http://audacity.sourceforge.net">Audacity</a>. All of those are free and open source utilities, so anyone can follow the same procedure.</p>
<p>Here&#8217;s a video I made last January, but I&#8217;ve updated it by recreating it from the original photos, and I added an audio track &#8220;1 Ghosts I&#8221; from the Nine Inch Nails album <cite>Ghosts I-IV</cite>.</p>
<div id="vid20080118">To view this video you&#8217;ll need the latest <a href="http://www.adobe.com/products/flashplayer/">Flash Player</a>.</div>
<p><script type='text/javascript'>
var s1 = new SWFObject('/flv/current/player.swf','player','615','429','8');
s1.addParam('allowfullscreen','true');
s1.addParam('allowscriptaccess','always');
s1.addParam('flashvars','file=/blog/wp-content/uploads/2009/01/timelapse_with_audio.flv&#038;image=/blog/wp-content/uploads/2009/03/2008-01-18_poster.jpg');
s1.write('vid20080118');
</script></p>
]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2009/01/22/project-time-lapse-photography/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Time Lapse Sunrise</title>
		<link>http://amwhalen.com/archives/2007/04/27/time-lapse-sunrise</link>
		<comments>http://amwhalen.com/archives/2007/04/27/time-lapse-sunrise#comments</comments>
		<pubDate>Fri, 27 Apr 2007 14:14:45 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[gphoto]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[photography]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[timelapse]]></category>
		<category><![CDATA[unix]]></category>
		<category><![CDATA[video]]></category>
		<category><![CDATA[youtube]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/archives/2007/04/27/time-lapse-sunrise/</guid>
		<description><![CDATA[Way back in January I was playing around with this great software called gphoto. It allows you to attach your digital camera to your computer and take photos. This has many uses, one of which is to create time lapse movies by writing a script to take pictures every so often. So that&#8217;s what I [...]]]></description>
			<content:encoded><![CDATA[<div class="video"><object width="425" height="350"><param name="movie" value="http://www.youtube.com/v/cT7pZrv1vLg"></param> <embed src="http://www.youtube.com/v/cT7pZrv1vLg" type="application/x-shockwave-flash" width="425" height="350"></embed></object></div>
<p>Way back in January I was playing around with this great software called <a href="http://www.gphoto.org/">gphoto</a>. It allows you to attach your digital camera to your computer and take photos. This has many uses, one of which is to create time lapse movies by writing a script to take pictures every so often. So that&#8217;s what I did, one January night. I wrote a script to take a picture every 15 seconds or so, and set it to run from 6am to 6pm. Unfortunately, my battery died only an hour or two in, so I came out with an 11 second video of a partial time lapse sunrise.</p>
]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2007/04/27/time-lapse-sunrise/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Changing File Extensions</title>
		<link>http://amwhalen.com/archives/2007/04/20/changing-file-extensions</link>
		<comments>http://amwhalen.com/archives/2007/04/20/changing-file-extensions#comments</comments>
		<pubDate>Fri, 20 Apr 2007 15:28:52 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[bash]]></category>
		<category><![CDATA[How-To]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[unix]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/archives/2007/04/20/changing-file-extensions/</guid>
		<description><![CDATA[Today at work I needed to change a whole directory (with many sub-directories and sub-sub-directories and&#8230; etc.) of .php files to the .html file extension. Since the files were on a Unix server, I wrote a quick Bash shell script to take care of this for me. #!/bin/bash &#160; function change_extension_recursive &#123; &#160; #change all [...]]]></description>
			<content:encoded><![CDATA[<p>Today at work I needed to change a whole directory (with many sub-directories and sub-sub-directories and&#8230; etc.) of .php files to the .html file extension. Since the files were on a Unix server, I wrote a quick Bash shell script to take care of this for me.</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #666666; font-style: italic;">#!/bin/bash</span>
&nbsp;
<span style="color: #000000; font-weight: bold;">function</span> change_extension_recursive <span style="color: #7a0874; font-weight: bold;">&#123;</span>
&nbsp;
	<span style="color: #666666; font-style: italic;">#change all .php to .html</span>
	<span style="color: #000000; font-weight: bold;">for</span> f <span style="color: #000000; font-weight: bold;">in</span> <span style="color: #007800;">$1</span><span style="color: #000000; font-weight: bold;">/*</span>.php; <span style="color: #000000; font-weight: bold;">do</span>
		<span style="color: #c20cb9; font-weight: bold;">mv</span> <span style="color: #007800;">$f</span> <span style="color: #007800;">$1</span><span style="color: #000000; font-weight: bold;">/`</span><span style="color: #c20cb9; font-weight: bold;">basename</span> <span style="color: #007800;">$f</span> .php<span style="color: #000000; font-weight: bold;">`</span>.html;
		<span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #007800;">$f</span>;
	<span style="color: #000000; font-weight: bold;">done</span>;
&nbsp;
	<span style="color: #666666; font-style: italic;"># recurse on any directories</span>
	<span style="color: #000000; font-weight: bold;">for</span> d <span style="color: #000000; font-weight: bold;">in</span> <span style="color: #007800;">$1</span><span style="color: #000000; font-weight: bold;">/*</span>; <span style="color: #000000; font-weight: bold;">do</span>
&nbsp;
		<span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">test</span> <span style="color: #660033;">-d</span> <span style="color: #007800;">$d</span>; <span style="color: #000000; font-weight: bold;">then</span>
			change_extension_recursive <span style="color: #007800;">$d</span>;
		<span style="color: #000000; font-weight: bold;">fi</span>;
&nbsp;
	<span style="color: #000000; font-weight: bold;">done</span>;
&nbsp;
<span style="color: #7a0874; font-weight: bold;">&#125;</span>
&nbsp;
<span style="color: #007800;">dir</span>=<span style="color: #000000; font-weight: bold;">`</span><span style="color: #7a0874; font-weight: bold;">pwd</span><span style="color: #000000; font-weight: bold;">`</span>;
&nbsp;
change_extension_recursive <span style="color: #007800;">$dir</span>;</pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2007/04/20/changing-file-extensions/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Flash, _lockroot, Stage, and hitTest</title>
		<link>http://amwhalen.com/archives/2007/04/03/flash-_lockroot-stage-and-hittest</link>
		<comments>http://amwhalen.com/archives/2007/04/03/flash-_lockroot-stage-and-hittest#comments</comments>
		<pubDate>Wed, 04 Apr 2007 03:35:35 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[actionscript]]></category>
		<category><![CDATA[flash]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/archives/2007/04/03/flash-_lockroot-stage-and-hittest/</guid>
		<description><![CDATA[While working on my portfolio project for my Flash class, I realized that _lockroot doesn&#8217;t help at all with Stage and hitTest when loading one SWF from another. I had to search around the Internet until I finally found something about _lockroot and hitTest on this guy&#8217;s blog. This is what I found to remedy [...]]]></description>
			<content:encoded><![CDATA[<p>While working on my portfolio project for my Flash class, I realized that _lockroot doesn&#8217;t help at all with Stage and hitTest when loading one SWF from another. I had to search around the Internet until I finally found something about _lockroot and hitTest on <a href="http://www.bit-101.com/blog/?p=499">this guy&#8217;s blog</a>. This is what I found to remedy the hitTest situation. This code overrides the hitTest function, and translates the coordinates to the global frame. It should go in the SWF that&#8217;s being imported.</p>

<div class="wp_syntax"><div class="code"><pre class="actionscript" style="font-family:monospace;"><span style="color: #0066CC;">MovieClip</span>.<span style="color: #0066CC;">prototype</span>.<span style="color: #006600;">oldHitTest</span> = <span style="color: #0066CC;">MovieClip</span>.<span style="color: #0066CC;">prototype</span>.<span style="color: #0066CC;">hitTest</span>;
<span style="color: #0066CC;">MovieClip</span>.<span style="color: #0066CC;">prototype</span>.<span style="color: #0066CC;">hitTest</span> = <span style="color: #000000; font-weight: bold;">function</span><span style="color: #66cc66;">&#40;</span>x, y, sf<span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#123;</span>
	<span style="color: #000000; font-weight: bold;">var</span> obj = <span style="color: #66cc66;">&#123;</span>x:x, y:y<span style="color: #66cc66;">&#125;</span>;
	<span style="color: #0066CC;">this</span>.<span style="color: #0066CC;">_parent</span>.<span style="color: #0066CC;">localToGlobal</span><span style="color: #66cc66;">&#40;</span>obj<span style="color: #66cc66;">&#41;</span>;
	<span style="color: #b1b100;">return</span> <span style="color: #0066CC;">this</span>.<span style="color: #006600;">oldHitTest</span><span style="color: #66cc66;">&#40;</span>obj.<span style="color: #006600;">x</span>, obj.<span style="color: #006600;">y</span>, sf<span style="color: #66cc66;">&#41;</span>;
<span style="color: #66cc66;">&#125;</span></pre></div></div>

<p><strong>Warning:</strong> this still doesn&#8217;t work for the version of the hitTest function that takes in a MovieClip as its parameter. That&#8217;s that, and hopefully I won&#8217;t have that problem again.</p>
]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2007/04/03/flash-_lockroot-stage-and-hittest/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A New Era</title>
		<link>http://amwhalen.com/archives/2006/07/21/a-new-era</link>
		<comments>http://amwhalen.com/archives/2006/07/21/a-new-era#comments</comments>
		<pubDate>Fri, 21 Jul 2006 20:00:10 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[upgrades]]></category>
		<category><![CDATA[wordpress]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/archives/2006/07/21/a-new-era/</guid>
		<description><![CDATA[After many long years of dealing with my own implementations of content management systems, I have finall caved in. I&#8217;m now using WordPress for my main &#8220;blog&#8221; and front page of amwhalen.com. I like all the nifty features, and I especially like the fact that someone else is coding the upgrades instead of me. When [...]]]></description>
			<content:encoded><![CDATA[<p>After many long years of dealing with my own implementations of content management systems, I have finall caved in. I&#8217;m now using <a title="WordPress.org" target="_blank" href="http://wordpress.org">WordPress</a> for my main &#8220;blog&#8221; and front page of amwhalen.com. I like all the nifty features, and I especially like the fact that someone else is coding the upgrades instead of me.</p>
<p>When it comes to programming, I&#8217;ve found that 9 out of 10 times I tend to reinvent the wheel when writing something. This site has always been handled with a CMS I coded, but I grew tired of maintaining it. I&#8217;ve gained a lot of experience in building database-driven web applications that suit my specific purposes, but it&#8217;s time to move on and do something new.</p>
<p>All the old blogging content is still here, as well as some new content. I went for a much simpler styling of the page, mainly to help with cross-browser complications and whatnot. I trimmed down many (ok, all) of the useless pages that went on and on explaining details of things that <em>I</em> don&#8217;t even care about anymore. Expect more frequent posts about very random things.</p>
]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2006/07/21/a-new-era/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>TV Tuner With Linux</title>
		<link>http://amwhalen.com/archives/2006/06/29/tv-tuner-with-linux</link>
		<comments>http://amwhalen.com/archives/2006/06/29/tv-tuner-with-linux#comments</comments>
		<pubDate>Thu, 29 Jun 2006 23:00:26 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[tvtuner]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/archives/2006/06/29/tv-tuner-with-linux/</guid>
		<description><![CDATA[I&#8217;ve had a Hauppauge WinTV Go Plus TV Tuner for about a year now. Originally, I installed it in my Windows machine. The software that came with the card was horrible, and the drivers were even worse. Since the right driver for Windows XP apparently didn&#8217;t come in the box, I had to hunt it [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve had a Hauppauge WinTV Go Plus TV Tuner for about a year now. Originally, I installed it in my Windows machine. The software that came with the card was horrible, and the drivers were even worse. Since the right driver for Windows XP apparently didn&#8217;t come in the box, I had to hunt it down on the Internet. Installing the driver involved a chicken, a goat, and some arcane incantations. I had enough, especially when the sound on the card intermittently worked when I scheduled a show to be recorded. Nothing is worse than 2 gigs of video with no sound.</p>
<p>Present day&#8230;<br />
After some research on the good ol&#8217; Internet, I found how to get the tv tuner to work with my machine. I have Ubuntu installed with a 2.6 version linux kernel. I had to set some driver flags to make everything happy. I recommend TVtime if you&#8217;ll be watching the TV right on your monitor. It has a nice interface, and it&#8217;s really easy to use.</p>
<p>Here are some of the details that finally made the tuner work:</p>
<p>Removing the drivers that got loaded at boot time:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">rmmod tuner
rmmod bt878
rmmod bttv</pre></div></div>

<p>Adding the drivers with correct settings:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">modprobe bttv <span style="color: #007800;">card</span>=<span style="color: #000000;">10</span> <span style="color: #007800;">tuner</span>=<span style="color: #000000;">50</span>
modprobe tuner <span style="color: #007800;">card</span>=<span style="color: #000000;">10</span> <span style="color: #007800;">tuner</span>=<span style="color: #000000;">50</span>
modprobe bt878</pre></div></div>

<p>You may have to fool around with the tuner number. I&#8217;ve seen that 2, 39, and some other tuner numbers may work for WinTV cards. To make sure that your tuner is using the right tuner number, try the command:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #c20cb9; font-weight: bold;">dmesg</span> <span style="color: #000000; font-weight: bold;">|</span> <span style="color: #c20cb9; font-weight: bold;">grep</span> bttv</pre></div></div>

<p>You should find a line that says something like:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;">bttv0: using <span style="color: #007800;">tuner</span>=<span style="color: #000000;">50</span></pre></div></div>

<p>If you do, you should be golden. This is what my output looked like:</p>

<div class="wp_syntax"><div class="code"><pre class="bash" style="font-family:monospace;"><span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.355000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv: driver version 0.9.15 loaded
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.355000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv: using <span style="color: #000000;">8</span> buffers with 2080k <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">520</span> pages<span style="color: #7a0874; font-weight: bold;">&#41;</span> each <span style="color: #000000; font-weight: bold;">for</span> capture
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.364000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv: Bt8xx card found <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #000000;">0</span><span style="color: #7a0874; font-weight: bold;">&#41;</span>.
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.364000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: Bt878 <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #c20cb9; font-weight: bold;">rev</span> <span style="color: #000000;">17</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> at 0000:01:<span style="color: #000000;">02.0</span>, irq: <span style="color: #000000;">9</span>, latency: <span style="color: #000000;">132</span>, mmio: 0xf4000000
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.365000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: detected: Hauppauge WinTV <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #007800;">card</span>=<span style="color: #000000;">10</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>, PCI subsystem ID is 0070:13eb
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.366000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: using: Hauppauge <span style="color: #7a0874; font-weight: bold;">&#40;</span>bt878<span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #007800;">card</span>=<span style="color: #000000;">10</span>,insmod option<span style="color: #7a0874; font-weight: bold;">&#93;</span>
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.366000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: gpio: <span style="color: #007800;">en</span>=00000000, <span style="color: #007800;">out</span>=00000000 <span style="color: #007800;">in</span>=00ffffdb <span style="color: #7a0874; font-weight: bold;">&#91;</span>init<span style="color: #7a0874; font-weight: bold;">&#93;</span>
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.368000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: Hauppauge<span style="color: #000000; font-weight: bold;">/</span>Voodoo msp34xx: reset line init <span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">5</span><span style="color: #7a0874; font-weight: bold;">&#93;</span>
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.510000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: using <span style="color: #007800;">tuner</span>=<span style="color: #000000;">50</span>
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.510000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: i2c: checking <span style="color: #000000; font-weight: bold;">for</span> MSP34xx <span style="color: #000000; font-weight: bold;">@</span> 0x80... not found
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.512000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: i2c: checking <span style="color: #000000; font-weight: bold;">for</span> TDA9875 <span style="color: #000000; font-weight: bold;">@</span> 0xb0... not found
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.514000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: i2c: checking <span style="color: #000000; font-weight: bold;">for</span> TDA7432 <span style="color: #000000; font-weight: bold;">@</span> 0x8a... not found
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.541000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: i2c: checking <span style="color: #000000; font-weight: bold;">for</span> TDA9887 <span style="color: #000000; font-weight: bold;">@</span> 0x86... not found
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.846000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: registered device video0
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.852000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: registered device vbi0
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.859000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: registered device radio0
<span style="color: #7a0874; font-weight: bold;">&#91;</span><span style="color: #000000;">4358448.859000</span><span style="color: #7a0874; font-weight: bold;">&#93;</span> bttv0: PLL: <span style="color: #000000;">28636363</span> =<span style="color: #000000; font-weight: bold;">&gt;</span> <span style="color: #000000;">35468950</span> .. ok</pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2006/06/29/tv-tuner-with-linux/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Something New</title>
		<link>http://amwhalen.com/archives/2006/02/04/something-new</link>
		<comments>http://amwhalen.com/archives/2006/02/04/something-new#comments</comments>
		<pubDate>Sat, 04 Feb 2006 15:31:09 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[math]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[school]]></category>
		<category><![CDATA[umass]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/archives/2006/02/04/something-new/</guid>
		<description><![CDATA[The last post here was September of last year, a little under five months ago. I&#8217;ve been through a whole semester since then, and lots of things have happened. So far, this Spring 2006 semester is going well. I&#8217;ve got a database class, software engineering, C++, physics 2, and differential equations. Math is the only [...]]]></description>
			<content:encoded><![CDATA[<p>The last post here was September of last year, a little under five months ago. I&#8217;ve been through a whole semester since then, and lots of things have happened. So far, this Spring 2006 semester is going well. I&#8217;ve got a database class, software engineering, C++, physics 2, and differential equations.</p>
<p>Math is the only class I&#8217;m not looking forward to, and it&#8217;s not hard to figure out why. With a name like differential equations, it&#8217;s not exactly a class any normal person would enjoy taking. Physics this semester deals with electricity, which I&#8217;m looking forward to. My database class obviously deals with databases. For you to view these words, a database had to be accessed. Databases aren&#8217;t something new to me, so hopefully I&#8217;ll be able to slide through this class without much trouble.</p>
<p>Software Engineering seems like it may be just a fun class in general. Learning how to deal with producing a piece of software for a customer is the main focus of the class. This should be a good skill for when I someday make it to the &#8220;real world.&#8221; I&#8217;m also taking a one credit class on learning C++. I&#8217;ve bought a book before on C++, but never sat down and actually taught it to myself. This will be a good opportunity to force myself to learn a new language.</p>
<p>Someday soon I might get around to taking some new pictures, and updating the old photoblog. It&#8217;s been almost a month since that&#8217;s been updated. I&#8217;ve gotta get on that. Taking pictures in the snow with dark and cloudy skies isn&#8217;t much fun. Maybe with all this rain, something will spark my interest.</p>
]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2006/02/04/something-new/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>I&#8217;ve Finally Learned A Database</title>
		<link>http://amwhalen.com/archives/2004/06/15/ive-finally-learned-a-database</link>
		<comments>http://amwhalen.com/archives/2004/06/15/ive-finally-learned-a-database#comments</comments>
		<pubDate>Tue, 15 Jun 2004 21:02:54 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[database]]></category>
		<category><![CDATA[mysql]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[sql]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[upgrades]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/archives/2004/06/15/ive-finally-learned-a-database/</guid>
		<description><![CDATA[I&#8217;ve put it off for a long time as something I didn&#8217;t need, but now that I have the skill, I don&#8217;t know how I&#8217;ve gone without it. PHP with a MySQL database is extremely awesome. Before I learned how to use it, I was making my own way of storing and retrieving any dynamic [...]]]></description>
			<content:encoded><![CDATA[<p>I&#8217;ve put it off for a long time as something I didn&#8217;t need, but now that I have the skill, I don&#8217;t know how I&#8217;ve gone without it. PHP with a MySQL database is extremely awesome. Before I learned how to use it, I was making my own way of storing and retrieving any dynamic information I kept on the site. This meant that everything was slow, and may not have worked correctly. That is no longer the case. The site is much faster when it&#8217;s drawing from the database, and the data comes out so much &#8220;cleaner&#8221; that it would have with one of my methods of storing and retrieving it.</p>
<p>This is a good day for AMWhalen.com, as the new site works as I want it to. At this point it&#8217;s not completed (as I still need to add content to some places), but it will soon be unveiled to the world of the internet.</p>
]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2004/06/15/ive-finally-learned-a-database/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PHP and JavaScript Photo Slideshow</title>
		<link>http://amwhalen.com/archives/2003/06/14/php-and-javascript-photo-slideshow</link>
		<comments>http://amwhalen.com/archives/2003/06/14/php-and-javascript-photo-slideshow#comments</comments>
		<pubDate>Sun, 15 Jun 2003 00:22:39 +0000</pubDate>
		<dc:creator>Andrew</dc:creator>
				<category><![CDATA[uncategorized]]></category>
		<category><![CDATA[javascript]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[programming]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[upgrades]]></category>

		<guid isPermaLink="false">http://amwhalen.com/blog/archives/2003/06/14/php-and-javascript-photo-slideshow/</guid>
		<description><![CDATA[This post refers only to my old gallery. My new gallery can be found at http://www.amwhalen.com/gallery. In my picture gallery, (which is run by a PHP program I made from scratch) I have a added a cool slideshow option when you view a picture. Browsing through images will be much easier now, since you don&#8217;t [...]]]></description>
			<content:encoded><![CDATA[<p>This post refers only to my old gallery. My new gallery can be found at <a href="http://www.amwhalen.com/gallery/">http://www.amwhalen.com/gallery</a>.</p>
<p>In my picture gallery, (which is run by a PHP program I made from scratch) I have a added a cool slideshow option when you view a picture. Browsing through images will be much easier now, since you don&#8217;t have to close the larger image to click on another thumbnail. You can scroll through them by clicking on the &#8220;next&#8221; or &#8220;previous&#8221; buttons, or you can click &#8220;play&#8221;, and the photos will show every 10 seconds. This is a great stride for my photos also, since I&#8217;ve made the photo-viewer &#8220;smarter&#8221;. It now resizes pictures to a predetermined height. This is because I was noticing that my pictures were too big for many monitors out there, so you couldn&#8217;t see the whole picture. There was also a problem before with not always being able to see the whole caption. Hopefully that problem ahs been resolved as well. The sizing of the pictures has been a problem for awhile, and I&#8217;m glad that I could finally think of a way to fix it.</p>
]]></content:encoded>
			<wfw:commentRss>http://amwhalen.com/archives/2003/06/14/php-and-javascript-photo-slideshow/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

