<?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>Death by Logic</title>
	<atom:link href="http://www.deathbylogic.com/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.deathbylogic.com</link>
	<description>Computers - Software - Electronics</description>
	<lastBuildDate>Tue, 31 Aug 2010 05:26:14 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Announcing the &#8216;Shutter Pod&#8217; project</title>
		<link>http://www.deathbylogic.com/?p=82</link>
		<comments>http://www.deathbylogic.com/?p=82#comments</comments>
		<pubDate>Tue, 31 Aug 2010 05:22:44 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[FOSS]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[ATmega]]></category>
		<category><![CDATA[LCD]]></category>
		<category><![CDATA[Shutter Pod]]></category>

		<guid isPermaLink="false">http://www.deathbylogic.com/?p=82</guid>
		<description><![CDATA[The goal of the project is to design a timer for SLR cameras capable of taking long exposure and time lapse photography. At the heart of the  device will be a ATmega micro-controller and a 16&#215;2 back lite LCD display. The entire project is being developed as open-source hardware and software being hosted on Google [...]]]></description>
			<content:encoded><![CDATA[<p>The goal of the project is to design a timer for SLR cameras capable of taking long exposure and time lapse photography. At the heart of the  device will be a ATmega micro-controller and a 16&#215;2 back lite LCD display. The entire project is being developed as open-source hardware and software being hosted on Google code under the Creative Commons 3.0 BY-SA (share alike, attribution) license for hardware and the GPL version 3 for code. For more information, up to date code and schematics visit <a title="code.google.com/p/shutterpod" href="code.google.com/p/shutterpod" target="_blank">http://code.google.com/p/shutterpod</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.deathbylogic.com/?feed=rss2&amp;p=82</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>BJT Equation Sheet</title>
		<link>http://www.deathbylogic.com/?p=77</link>
		<comments>http://www.deathbylogic.com/?p=77#comments</comments>
		<pubDate>Tue, 31 Aug 2010 05:05:53 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Electronics]]></category>
		<category><![CDATA[BJT]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[PDF]]></category>

		<guid isPermaLink="false">http://www.deathbylogic.com/?p=77</guid>
		<description><![CDATA[This is a handy little cheat sheet that I have been working on with equations for common Bi-Junction Transistor (BJT) configurations. It has schematics, DC equations and AC equations for 8 of the most common setups. It  is not quite finished yet but it&#8217;s a start so if you find any mistakes or know of [...]]]></description>
			<content:encoded><![CDATA[<p>This is a handy little cheat sheet that I have been working on with equations for common Bi-Junction Transistor (BJT) configurations. It has schematics, DC equations and AC equations for 8 of the most common setups. It  is not quite finished yet but it&#8217;s a start so if you find any mistakes or know of stuff I missed please let me know and I will update it.</p>
<p>Download: <a href="http://www.deathbylogic.com/wp-content/uploads/2010/08/BJT-Equation-Sheet.pdf">BJT Equation Sheet</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.deathbylogic.com/?feed=rss2&amp;p=77</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Notes on using the Robotics Connection I2C line following sensor with Arduino based boards</title>
		<link>http://www.deathbylogic.com/?p=61</link>
		<comments>http://www.deathbylogic.com/?p=61#comments</comments>
		<pubDate>Thu, 05 Nov 2009 08:49:37 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Robotics]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[Arduino]]></category>
		<category><![CDATA[I2C]]></category>
		<category><![CDATA[Line Sensor]]></category>

		<guid isPermaLink="false">http://www.deathbylogic.com/?p=61</guid>
		<description><![CDATA[After many of wasted hours of trying to get the I2C line following sensor from Robotics Connection working with an Arduino based controller board I was finally able to get it to communicate and since there was no other information out there on this issue I decided to write this post. To start off the [...]]]></description>
			<content:encoded><![CDATA[<p>After many of wasted hours of trying to get the I2C line following sensor from <a href="http://www.roboticsconnection.com" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.roboticsconnection.com?referer=');">Robotics Connection</a> working with an Arduino based controller board I was finally able to get it to communicate and since there was no other information out there on this issue I decided to write this post.<span id="more-61"></span></p>
<p>To start off the I2C master sends and 8 bit word onto the I2C bus consisting of a 7-bit address and a 1-bit read or write command for a total 8-bit word looking like &lt;7-bit address&gt;&lt;R/W bit&gt; with the R/W bit being the LSB. The 7-bit address is set by the device it&#8217;s self either in it&#8217;s firmware or through switches (In some cases like the I2C line following sensor this can be change through I2C). The read or write bit lets the device that you want to communicate with know if you want to receive data from it or write data to it. This bit is set to 0 if the master wants to receive data or to 1 if it wants to send data. When a device on the I2C bus that has this address detects a packet with it&#8217;s address it will read the last bit of the word and either wait to receive more data or start sending out data at the proper time.</p>
<p>The problem I had with the I2C line following sensor was that <a href="http://www.roboticsconnection.com" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.roboticsconnection.com?referer=');">Robotics Connection</a> lists the default address of the sensor in there <a href="http://www.roboticsconnection.com/p-67-line-following-sensor.aspx" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.roboticsconnection.com/p-67-line-following-sensor.aspx?referer=');">documentation</a> as 0&#215;50. What they do not mention is that this is the full 8-bit word that you must send to receive data not the 7-bit address of the device. So the actual 7-bit default address of the sensor is 0&#215;28 (which is 0&#215;50 shifted 1-bit to the right). This might not be an issue on other boards where you must specify the full 8-bit word when sending over I2C but in the Arduino language the Wire.requestFrom command adds the final R/W bit for you. So when i was attempting to communicate on the address 0&#215;50 the the wire library was adding the extra bit resulting in the word being 0xA0 while when using the proper address of 0&#215;28 results in the word being 0&#215;50. So in the end, when using the I2C line following sensor from <a href="http://www.roboticsconnection.com" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.roboticsconnection.com?referer=');">Robotics Connection</a> with an Arduino based board any values in their documentation must be shifted to the right one place for it to work.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.deathbylogic.com/?feed=rss2&amp;p=61</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Verilog: n-Bit Up Counter</title>
		<link>http://www.deathbylogic.com/?p=45</link>
		<comments>http://www.deathbylogic.com/?p=45#comments</comments>
		<pubDate>Sat, 17 Jan 2009 19:10:34 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[FPGA]]></category>
		<category><![CDATA[Verilog]]></category>

		<guid isPermaLink="false">http://www.deathbylogic.com/?p=45</guid>
		<description><![CDATA[This is a simple n-bit wrapping up counter. The n parameter can be changed to make this 4, 8, &#8230; bit counter were n = &#60;number of bits&#62; &#8211; 1. The CLK signal can be any signal you want and will increment the value of the counter on the positive edge of a pulse, RST [...]]]></description>
			<content:encoded><![CDATA[<p>This is a simple n-bit wrapping up counter. The <em>n</em> parameter can be changed to make this 4, 8, &#8230; bit counter were n = &lt;number of bits&gt; &#8211; 1. The <strong>CLK</strong> signal can be any signal you want and will increment the value of the counter on the positive edge of a pulse, <strong>RST</strong> is the negative edge reset signal which will reset the counter to 0 or any number of your choosing also be sure to change the initial value, which is the starting value when the module initialized. The output <strong>count</strong> is the current value of the counter.<span id="more-45"></span></p>
<pre class="post_code">module nBitCounter(count, CLK, RST);
  parameter n = 7;

  output reg [n:0] count;
  input CLK;
  input RST;

  // Set the initial value
  initial
    count = 0;

  // Increment count on clock
  always @(posedge CLK or negedge RST)
    if (!RST)
      count = 0;
    else
      count = count + 1;

endmodule</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.deathbylogic.com/?feed=rss2&amp;p=45</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Verilog: Dual Seven Segment Display Driver</title>
		<link>http://www.deathbylogic.com/?p=53</link>
		<comments>http://www.deathbylogic.com/?p=53#comments</comments>
		<pubDate>Tue, 16 Dec 2008 08:51:14 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[FPGA]]></category>
		<category><![CDATA[Spartan 3E]]></category>
		<category><![CDATA[Verilog]]></category>

		<guid isPermaLink="false">http://www.deathbylogic.com/?p=53</guid>
		<description><![CDATA[This is an expansion upon my SevenSegmentDisplayDriver module which will allow you to drive a dual seven segment display, specifically the add-on for the Spartan 3E but it should be quite easy to modify for other FPGA&#8217;s. The basic premise of this module is you have a dual seven segment display which activates the left [...]]]></description>
			<content:encoded><![CDATA[<p>This is an expansion upon my <a href="?p=47" target="_self">SevenSegmentDisplayDriver</a> module which will allow you to drive a dual seven segment display, specifically the add-on for the Spartan 3E but it should be quite easy to modify for other FPGA&#8217;s. The basic premise of this module is you have a dual seven segment display which activates the left or right display depending on whether the enable signal is high or low. So using the code below, when the clock signal is low (right display is active) we send the lower four bits of our number to the display so they show on the right hand side display. When the clock is high (left display is active) we send the upper four bit to the left hand display. By doing this a few hundred times a second both numbers apear be on the display at once. To use this module you must slow down the clock to an appropriate rate and assign it to the enable pin for the display and the <em>CLK</em> input on this module. <em>bIn</em> in the 8-bit number you wish to display and <em>ssOut</em> is the array of segments for the seven segment display (See the <a href="?p=47" target="_self">SevenSegmentDisplayDriver</a> post for more details)<span id="more-53"></span></p>
<pre class="post_code">module DualSevenSegmentDriver(ssOut, bIn, CLK);
  output [6:0] ssOut;
  input [7:0] bIn;
  input CLK;

  // Current nibble to display on LED's
  reg [3:0] dNibble;

  // Select the upper or lower nibble depending on CLK
  always @(CLK)
    dNibble = CLK?bIn[7:4]:bIn[3:0];

  // Decode nibble into LED segments
  SevenSegmentDisplayDecoder SSDD(ssOut, dNibble);
endmodule</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.deathbylogic.com/?feed=rss2&amp;p=53</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Verilog: Seven Segment Display Decoder</title>
		<link>http://www.deathbylogic.com/?p=47</link>
		<comments>http://www.deathbylogic.com/?p=47#comments</comments>
		<pubDate>Tue, 16 Dec 2008 08:18:39 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[FPGA]]></category>
		<category><![CDATA[Verilog]]></category>

		<guid isPermaLink="false">http://www.deathbylogic.com/?p=47</guid>
		<description><![CDATA[This code will take a four bit number and decode it into the seven individual segments to drive a seven segment display. nIn is the four bit number to be decoded and ssOut is the array of segments for the display going from a, being the LSB, to g being the MSB. module SevenSegmentDisplayDecoder(ssOut, nIn); [...]]]></description>
			<content:encoded><![CDATA[<p>This code will take a four bit number and decode it into the seven individual segments to drive a seven segment display. <em>nIn</em> is the four bit number to be decoded and <em>ssOut</em> is the array of segments for the display going from <strong>a</strong>, being the LSB, to <strong>g</strong> being the MSB.<span id="more-47"></span></p>
<pre class="post_code">module SevenSegmentDisplayDecoder(ssOut, nIn);
  output reg [6:0] ssOut;
  input [3:0] nIn;

  // ssOut format {g, f, e, d, c, b, a}

  always @(nIn)
    case (nIn)
      4'h0: ssOut = 7'b0111111;
      4'h1: ssOut = 7'b0000110;
      4'h2: ssOut = 7'b1011011;
      4'h3: ssOut = 7'b1001111;
      4'h4: ssOut = 7'b1100110;
      4'h5: ssOut = 7'b1101101;
      4'h6: ssOut = 7'b1111101;
      4'h7: ssOut = 7'b0000111;
      4'h8: ssOut = 7'b1111111;
      4'h9: ssOut = 7'b1100111;
      4'hA: ssOut = 7'b1110111;
      4'hB: ssOut = 7'b1111100;
      4'hC: ssOut = 7'b0111001;
      4'hD: ssOut = 7'b1011110;
      4'hE: ssOut = 7'b1111001;
      4'hF: ssOut = 7'b1110001;
    endcase
endmodule</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.deathbylogic.com/?feed=rss2&amp;p=47</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Verilog: n-Bit Adder</title>
		<link>http://www.deathbylogic.com/?p=37</link>
		<comments>http://www.deathbylogic.com/?p=37#comments</comments>
		<pubDate>Tue, 09 Dec 2008 05:53:20 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[FPGA]]></category>
		<category><![CDATA[Verilog]]></category>

		<guid isPermaLink="false">http://www.deathbylogic.com/?p=37</guid>
		<description><![CDATA[This is code is for an simple asynchronous wrapping n-bit adder. By changing the value of n you can make it a 2, 4, &#8230; bit adder where n = &#60;number of bits&#62; &#8211; 1. f is the output register that will have the current value of the counter, cOut is the carry output. a [...]]]></description>
			<content:encoded><![CDATA[<p>This is code is for an simple asynchronous wrapping n-bit adder. By changing the value of <em>n</em> you can make it a 2, 4, &#8230; bit adder where <em>n</em> = &lt;number of bits&gt; &#8211; 1. <em>f</em> is the output register that will have the current value of the counter, <em>cOut</em> is the carry output. <em>a</em> &amp; <em>b</em> are the number inputs and <em>cIn</em> is the carry input. Both the number outputs and inputs are set by the value of <em>n</em> so you can add two n-bit numbers and a carry bit then get an n-bit number plus carry bit out.<span id="more-37"></span></p>
<pre class="post_code">module nBitAdder(f, cOut, a, b, cIn);
  parameter n = 7; 	

  output reg [n:0] f;
  output reg cOut;
  input [n:0] a;
  input [n:0] b;
  input cIn;

  always @(a, b, cIn)
    {cOut, f} = a + b + cIn;
endmodule</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.deathbylogic.com/?feed=rss2&amp;p=37</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>State Machine for the Spartan 3E Knob</title>
		<link>http://www.deathbylogic.com/?p=17</link>
		<comments>http://www.deathbylogic.com/?p=17#comments</comments>
		<pubDate>Tue, 09 Dec 2008 05:19:47 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[Computers]]></category>
		<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Programming]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[FPGA]]></category>
		<category><![CDATA[Spartan 3E]]></category>
		<category><![CDATA[Verilog]]></category>

		<guid isPermaLink="false">http://www.deathbylogic.com/?p=17</guid>
		<description><![CDATA[The following code is a simple state machine that determines the direction that the knob on the Spartan 3E is turning and outputs a clock signal (Count) as it turns. A &#38; B are the inputs from the encoders on the knob, RST &#38; CLK are the reset and clock obviously. Count is the clock [...]]]></description>
			<content:encoded><![CDATA[<p>The following code is a simple state machine that determines the direction that the knob on the Spartan 3E is turning and outputs a clock signal (Count) as it turns. A &amp; B are the inputs from the encoders on the knob, RST &amp; CLK are the reset and clock obviously. Count is the clock signal that goes two cycle for each click of the knob. Dir is the current direction of the knob, 0 for clockwise and 1 for counter-clockwise. Be sure to de-bounce the A &amp; B inputs from the knob as they will have lots of noise and cause the state machine to be unstable.<span id="more-17"></span></p>
<pre class="post_code">module StateMachine(Dir, Count, A, B, RST, CLK);
  output reg Dir;
  output reg Count;
  input A;
  input B;
  input RST;
  input CLK;

  reg [1:0]PS, NS;

  parameter [1:0] ST_NORM = 'b00,
                  ST_A = 'b01,
                  ST_B = 'b11,
                  ST_C = 'b10;

  initial
    begin
      PS &lt;= ST_NORM;
      Count = 0;
    end

  always @(negedge RST or posedge CLK)
    if (!RST)
      PS &lt;= ST_NORM;
    else if (CLK)
      PS &lt;= NS;

  always @(A or B)
    begin
      case (PS)
        ST_NORM:
          if (A &amp; !B)
            begin
              Dir = 0;
              Count = 1;
              NS = ST_A;
            end
          else if (!A &amp; B)
            begin
              Dir = 1;
              Count = 1;
              NS = ST_C;
            end
          else
            NS = ST_NORM;
        ST_A:
          if (A &amp; B)
            begin
              Dir = 0;
              Count = 0;
              NS = ST_B;
            end
          else if (!A &amp; !B)
            begin
              Dir = 1;
              Count = 0;
              NS = ST_NORM;
            end
          else
            NS = ST_A;
        ST_B:
          if (!A &amp; B)
            begin
              Dir = 0;
              Count = 1;
              NS = ST_C;
            end
          else if (A &amp; !B)
            begin
              Dir = 1;
              Count = 1;
              NS = ST_A;
            end
          else
            NS = ST_B;
        ST_C:
          if (!A &amp; !B)
            begin
              Dir = 0;
              Count = 0;
              NS = ST_NORM;
            end
          else if (A &amp; B)
            begin
              Dir = 1;
              Count = 0;
              NS = ST_B;
            end
          else
            NS = ST_C;
      endcase
    end
endmodule</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.deathbylogic.com/?feed=rss2&amp;p=17</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Re-Mastering RiffTrax to DVD</title>
		<link>http://www.deathbylogic.com/?p=9</link>
		<comments>http://www.deathbylogic.com/?p=9#comments</comments>
		<pubDate>Sun, 25 May 2008 22:26:09 +0000</pubDate>
		<dc:creator>Daniel</dc:creator>
				<category><![CDATA[How To]]></category>
		<category><![CDATA[Movie]]></category>
		<category><![CDATA[Software]]></category>
		<category><![CDATA[DVD]]></category>
		<category><![CDATA[Movies]]></category>
		<category><![CDATA[RiffTrax]]></category>
		<category><![CDATA[VideoLan]]></category>

		<guid isPermaLink="false">http://www.deathbylogic.com/?p=9</guid>
		<description><![CDATA[After being a fan of MST3K for many years I was sad to see it go, but was able to entertain myself on DVDs of old episodes for awhile. So naturally I was thrilled I learned about RiffTrax and that most of the cast got back together and that they would finally be able to [...]]]></description>
			<content:encoded><![CDATA[<p>After being a fan of MST3K for many years I was sad to see it go, but was able to entertain myself on DVDs  of old episodes for awhile. So naturally I was thrilled I learned about <a title="RiffTrax website" href="http://www.rifftrax.com" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.rifftrax.com?referer=');">RiffTrax</a> and that most of the cast got back together and that they would finally be able to &#8216;riff&#8217; new movies and shows. After thinking for awhile I figured the best way to show a RiffTrax to a group of friends was to re-master the with the RiffTrax on it, that way I could pause, fast forward, rewind, &#8230; without any trouble or syncing problems. Now after making a few of these I think I have been able to refine the process down to an art, so that I can crank one out within a hour or two, not including ripping, encoding, burning and so on. <span id="more-9"></span>There are a few steps to this process:</p>
<ul>
<li>Rip the DVD to your local computer</li>
<li>Add the RiffTrax to the Video</li>
<li>Burn the video to a DVD</li>
</ul>
<h3>Ripping the DVD</h3>
<p>For ripping DVDs I find the best thing to use is <a title="VideoLan website" href="http://www.videolan.org" target="_blank" onclick="pageTracker._trackPageview('/outgoing/www.videolan.org?referer=');">VideoLan</a> if not for it&#8217;s shear power and flexibility, then for the fact that it is free, open source, and can make a perfect rip. Once you have VideoLan installed and running you want to use the &#8216;Open Disc&#8217; command to bring up the open dialog, and select the &#8216;DVD&#8217; option from the &#8216;Disk type&#8217; selection. Then you need to change the device name to whatever DVD drive you will be using (most of the time the default is fine). Next you need to set the &#8216;Title&#8217; to the correct title for the main feature / movie that you want to rip, you might want to open the DVD using your normal DVD player to find this out, as it should be listed somewhere fairly easy to see.</p>
<p><a href="http://www.deathbylogic.com/wp-content/uploads/2008/05/powerdvd_title.jpg"><img class="aligncenter size-medium wp-image-10" title="powerdvd_title" src="http://www.deathbylogic.com/wp-content/uploads/2008/05/powerdvd_title-300x25.jpg" alt="PowerDVD Control Panel" width="300" height="25" /></a></p>
<p>Now that we have where and what on the DVD to rip we need to check the &#8216;Save/Stream&#8217; option to save a copy of the DVD to the hard drive then click the &#8216;Settings&#8217; button to configure a few options. Under &#8216;Outputs&#8217; you will want to check &#8216;File&#8217; and then click &#8216;Browse&#8217; and find a good spot to save the DVD rip, be sure to give the filename a &#8216;.mpg&#8217; at the end as VideoLan will not assign it a file type automatically. For &#8216;Encapsulation Method&#8217; you want to select &#8216;MPEG PS&#8217;. Under &#8216;Transcoding options&#8217; you need check off &#8216;Audio codec&#8217; and select &#8216;mp2a&#8217; for MPEG Layer 2 Audio compression, this will remove any proprietary encoding methods like Dolby Surround as most video editing software does not support this out of the box. Once that is done click &#8216;OK&#8217; to save the settings and &#8216;OK&#8217; once again to begin the ripping process, which should take 30 min. to an hour depending on the length of the movie and the speed of the DVD drive.</p>
<p><a href="http://www.deathbylogic.com/wp-content/uploads/2008/05/vlc_save_stream.jpg"><img class="aligncenter size-medium wp-image-11" title="vlc_save_stream" src="http://www.deathbylogic.com/wp-content/uploads/2008/05/vlc_save_stream-300x229.jpg" alt="VideoLAN Save Options" width="300" height="229" /></a></p>
<h3>Adding the RiffTrax to the Movie</h3>
<p>Over the period of re-mastering a few RiffTrax onto DVD I have used a few different <a title="Non-linear editing system" href="http://en.wikipedia.org/wiki/Non-linear_editing_system" target="_blank" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/Non-linear_editing_system?referer=');">NLE</a> (Non-linear video editing) programs ranging from Adobe Premiere Elements and Adobe Premiere CS3 to Ulead Media Studio Pro, Cinelerra and Blender. Premiere Elements and Media Studio both became unstable when working with the roughly 6GB movie files. While Premiere CS3 would not open the <a title="24P video format" href="http://en.wikipedia.org/wiki/24P" target="_blank" onclick="pageTracker._trackPageview('/outgoing/en.wikipedia.org/wiki/24P?referer=');">24P</a> files correctly and I ended up wasting vasts amount of time trying to work around the problem and  it eventually kept giving me an error when encoding so I gave up on it. As of now I am working on Sony Vegas 8.0 (Trial Version) and as of yet I have not had any problems, glitches or stability issues, though I will note this is the first RiffTrax I have done on this.</p>
<p>This is the hardest part of the job and thus the most difficult to explain, but I will do my best. I will explain this in the most generic terms that I can so that you can use what ever NLE program you have or chose to get. Fist you must import the DVD rip and RiffTrax audio into your editing program. &lt;insert specifics&gt;. Once you import them it might take a few min. to a few hours for the software to parse the files so that you can edit them, some programs like Premiere do this in the background while others like Vegas do it in the foreground.</p>
<p><a href="http://www.deathbylogic.com/wp-content/uploads/2008/05/vegas-pro.jpg"><img class="aligncenter size-medium wp-image-12" title="Vegas Pro while working on Star Wars Ep 2." src="http://www.deathbylogic.com/wp-content/uploads/2008/05/vegas-pro-300x240.jpg" alt="Sony Vegas Pro" width="300" height="240" /></a></p>
<p>Once the files have been imported into and processed it is now time to add them to time line and sync them up. First drag and drop the movie into the time line, be sure to check that there is a track for both the video and the audio (possibly two for the audio) otherwise the software was unable to decode one of them and you will need to double check that the software can read MPEG2 encoded files. I will say this is very unlikely  since  just about every  NLE  will support  MPEG2 and it&#8217;s more likely that the audio is still in some form of surround sound.</p>
<p><a href="http://www.deathbylogic.com/wp-content/uploads/2008/05/premiere-pro.jpg"><img class="aligncenter size-medium wp-image-13" title="Premiere Pro while working on the RiffTrax of The Matrix." src="http://www.deathbylogic.com/wp-content/uploads/2008/05/premiere-pro-300x240.jpg" alt="Adobe Premiere Pro" width="300" height="240" /></a></p>
<p>Next you need to drag and drop the RiffTrax audio into the time line, this will be exactly the same as the video except that it will only create one new track. To sync the RiffTrax to the movie I find it&#8217;s easiest to listen to the audio to find at what time you are to pause the RiffTrax and what point in the movie you are supposed to restart it and try to sync those points as closely as possible. From there I find a point where DisembAudio speaks and then use that to sync the audio in a more precise manner, be sure to zoom in to get a more accuracy. Once you have the RiffTrax sync up the the movie be sure to save the project, and if you feel like it you can add DVD chapter marks to make browsing the DVD a little easier on you. I will usually take the time to figure out where the chapters are on the original DVD and match them as closely as possible, but that is me and if you don&#8217;t find it necessary then you can skip that part.</p>
<p>The last thing I do before creating the a DVD is to render a low quality version of the movie to double check that everything will line up once it is on a DVD. To do this there is usually a render or export option in the main file menu. You will want to first give it a file name in a good location and then pick encoding profile to use. The options here are limitless and the variations between programs makes it impossible to explain it in much detail. You will want to pick one that is NTSC if you are in the states or PAL for Europe, and is the same aspect ratio (widescreen vs. standard) as the original DVD. Once that is done you should look for an options or customize button and change the encoding quality to low or draft and lower the resolution down to 360 x 240 or something around that range. By doing this you will shorten the time it takes to render you draft copy as not to waste unneeded time and energy on a high quality copy.</p>
<h6>NOTE: For Sony Vegas 8 Pro, by default it does not render with sound so you must select the &#8216;Customize&#8217; button and go to the &#8216;Audio&#8217; tab and check the &#8216;Include audio stream&#8217; box in order to have sound.</h6>
<h3>Burning the DVD</h3>
<p>This is probably the easiest of the three steps as most video editing programs have a built in DVD encoding and burning feature. This might be a separate bundled piece of software like Adobe Encore or Sony DVD Architect, or seamlessly integrated into the software as is the case with Adobe Premiere Elements and Ulead Media Studio Pro. Before you start there are a few settings that you want to check. First is the DVD size wither it be the 4.5 GB or 8.5 GB disks. Most movies use the 8.5 GB type, so there will be some quality loss if you choose the 4.5 GB. Also in terms of the actual DVD you are going to burn if you want to watch these on a DVD player I would suggest that you spend the extra money and get high quality DVD&#8217;s as the standard DVD&#8217;s will work but tend to skip often. If you are using software that has a built in DVD encoder find the you will want to find the burn/make DVD option (usually in the file menu), while if you are using a separate program or you just want to watch it on your computer you will want to find the export/render video option. In the case of Adobe Premiere there is an option to export directly to Encore for burning the DVD.</p>
<p>You will want to save the video in the MPEG-2 video format as this is what DVD&#8217;s use, so that when you burn it to the DVD you will not need to render it again. The last thing to check before burning or rendering the video is to set whatever quality settings you want, most of the programs will allow you to set a bit-rate and of course larger is better but that also means more space on the DVD so it will depend on the size you choose, also some allow you render the frame twice and merge the result for a better quality, to enable this you will want to look for a option call &#8216;two-pass&#8217;. Finally you will want to double check the settings that I mentioned in the previous paragraph, except that you&#8217;ll want to keep the standard DVD resolution of 720 x 480 and whatever quality you choose. Then press the Save/Render/Export/&#8230; button to create the final video.</p>
<p>The final step if you are using a separate program to burn the video on to a DVD is to open the respective DVD burning software and to import the video. As I mentioned before this varies greatly from program to program, but for the most part is very similar to working with the NLE. If all goes well you should not have to re-render the video to burn in on to the DVD.</p>
<h6>NOTE: This is still a work in progress.</h6>
]]></content:encoded>
			<wfw:commentRss>http://www.deathbylogic.com/?feed=rss2&amp;p=9</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
