<?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>Signals</title>
	<atom:link href="http://www.kevindemarco.com/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.kevindemarco.com</link>
	<description>research, music, and robots</description>
	<lastBuildDate>Thu, 09 May 2013 15:48:02 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>MORSE Ranger Bot Tutorial</title>
		<link>http://www.kevindemarco.com/2013/05/08/morse-ranger-bot-tutorial/</link>
		<comments>http://www.kevindemarco.com/2013/05/08/morse-ranger-bot-tutorial/#comments</comments>
		<pubDate>Wed, 08 May 2013 21:00:40 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=607</guid>
		<description><![CDATA[I&#8217;m trying to use MORSE / ROS for future robotics simulations with the Turtlebot and the VideoRay (ROV).  Thus, I&#8217;m going through the tutorials on MORSE (http://www.openrobots.org/morse/doc/latest/tutorials.html) This video shows the result of the &#8220;A Journey to a New Simulation&#8221; &#8230; <a href="http://www.kevindemarco.com/2013/05/08/morse-ranger-bot-tutorial/"><em>Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></em></a>]]></description>
				<content:encoded><![CDATA[<p><iframe src="http://www.youtube.com/embed/U5fk4fvRLeE" height="315" width="560" allowfullscreen="" frameborder="0"></iframe></p>
<p>I&#8217;m trying to use MORSE / ROS for future robotics simulations with the Turtlebot and the VideoRay (ROV).  Thus, I&#8217;m going through the tutorials on MORSE (<a title="http://www.openrobots.org/morse/doc/latest/tutorials.html" href="http://www.openrobots.org/morse/doc/latest/tutorials.html">http://www.openrobots.org/morse/doc/latest/tutorials.html</a>)</p>
<p>This video shows the result of the &#8220;A Journey to a New Simulation&#8221; tutorial, located at: <a title="http://www.openrobots.org/morse/doc/latest/user/advanced_tutorials/a_journey_to_a_new_simulation.html" href="http://www.openrobots.org/morse/doc/latest/user/advanced_tutorials/a_journey_to_a_new_simulation.html">http://www.openrobots.org/morse/doc/latest/user/advanced_tutorials/a_journey_to_a_new_simulation.html</a></p>
<p>&nbsp;</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2013/05/08/morse-ranger-bot-tutorial/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Nikon D3200 &#8211; New DSLR</title>
		<link>http://www.kevindemarco.com/2013/05/01/nikon-d3200-new-dslr/</link>
		<comments>http://www.kevindemarco.com/2013/05/01/nikon-d3200-new-dslr/#comments</comments>
		<pubDate>Wed, 01 May 2013 18:24:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=599</guid>
		<description><![CDATA[I just purchased a Nikon D3200 to take videos and photos of my various projects.  Here is the first shot I took of one of my dogs, Jacy.]]></description>
				<content:encoded><![CDATA[<p>I just purchased a Nikon D3200 to take videos and photos of my various projects.  Here is the first shot I took of one of my dogs, Jacy.</p>
<div id="attachment_600" class="wp-caption aligncenter" style="width: 810px"><a href="http://www.kevindemarco.com/wp-content/uploads/2013/05/DSC_0002.jpg"><img class="size-full wp-image-600 " style="border: 1px solid black;" alt="Serious Jacy" src="http://www.kevindemarco.com/wp-content/uploads/2013/05/DSC_0002.jpg" width="800" height="532" /></a><p class="wp-caption-text">Serious Jacy</p></div>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2013/05/01/nikon-d3200-new-dslr/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Emacs + Auctex + Synctex + Okular on Ubuntu 12.04</title>
		<link>http://www.kevindemarco.com/2013/04/24/emacs-auctex-synctex-okular-on-ubuntu-12-04/</link>
		<comments>http://www.kevindemarco.com/2013/04/24/emacs-auctex-synctex-okular-on-ubuntu-12-04/#comments</comments>
		<pubDate>Wed, 24 Apr 2013 01:01:01 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=590</guid>
		<description><![CDATA[It&#8217;s amazing how difficult it is to gather information on getting emacs to work with a pdf viewer like okular to perform forward and backward searches.  One problem is that the pdf viewers in Ubuntu 12.04 and newer have broken &#8230; <a href="http://www.kevindemarco.com/2013/04/24/emacs-auctex-synctex-okular-on-ubuntu-12-04/"><em>Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></em></a>]]></description>
				<content:encoded><![CDATA[<p>It&#8217;s amazing how difficult it is to gather information on getting emacs to work with a pdf viewer like okular to perform forward and backward searches.  One problem is that the pdf viewers in Ubuntu 12.04 and newer have broken reverse searches, so people have to put hacks in their .emacs files to support viewers like xpdf and evince.  I don&#8217;t really care which pdf viewer I use and I found it was easiest to get Okular to work with emacs and synctex.  I haven&#8217;t tried this on other versions of Ubuntu, but it should work.</p>
<p>First, you need to install some dependencies for latex, auctex, and okular&#8230;</p>
<pre>$ sudo apt-get install okular texlive-full auctex</pre>
<p>The texlive-full package is quite large, so grab some coffee.</p>
<p>Then add the following lines to your .emacs file your home directory:</p>
<pre>;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Latex for Emacs
;; 
;; Dependencies: okular, texlive-full, auctex
;;
;; Okular setup: 
;; 1.) Open Okular and go to...
;; 2.) Settings -&gt; Configure Okular -&gt; Editor
;; 3.) Set Editor to "Emacs client"
;; 4.) Command should automatically set to: 
;; emacsclient -a emacs --no-wait +%l %f
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; only start server for okular comms when in latex mode
(add-hook 'LaTeX-mode-hook 'server-start)
(setq TeX-PDF-mode t) ;; use pdflatex instead of latex

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Standard emacs/latex config
;; http://emacswiki.org/emacs/AUCTeX
(setq TeX-auto-save t)
(setq TeX-parse-self t)
(setq-default TeX-master nil)

(add-hook 'LaTeX-mode-hook 'visual-line-mode)
(add-hook 'LaTeX-mode-hook 'flyspell-mode)
(add-hook 'LaTeX-mode-hook 'LaTeX-math-mode)

; enable auto-fill mode, nice for text
(add-hook 'LaTeX-mode-hook 'auto-fill-mode)
(add-hook 'LaTeX-mode-hook 'turn-on-reftex)
(setq reftex-plug-into-AUCTeX t)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Enable synctex correlation
(setq TeX-source-correlate-method 'synctex)
;; Enable synctex generation. Even though the command shows
;; as "latex" pdflatex is actually called
(custom-set-variables '(LaTeX-command "latex -synctex=1") )
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; Use Okular as the pdf viewer. Build okular 
;; command, so that Okular jumps to the current line 
;; in the viewer.
(setq TeX-view-program-selection
 '((output-pdf "PDF Viewer")))
(setq TeX-view-program-list
 '(("PDF Viewer" "okular --unique %o#src:%n%b")))
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;</pre>
<p>You can read through the comments on individual lines if you are interested in what&#8217;s going on.</p>
<p>As described in the comments, you have to configure Okular to accept commands from emacs.</p>
<ol>
<li>Open Okular</li>
<li>Navigate to: Settings -&gt; Configure Okular -&gt; Editor</li>
<li>Set Editor to &#8220;Emacs client&#8221;</li>
<li>This should automatically set Command to :  <span style="font-family: Consolas, Monaco, monospace; font-size: 12px; line-height: 18px;">emacsclient -a emacs &#8211;no-wait +%l %f</span></li>
</ol>
<p>That&#8217;s it for installation!  Congratulations!</p>
<p>To work with latex in emacs, open your favorite latex file (.tex extension)</p>
<p>You can use the buttons to compile the latex file and view the pdf viewer, but you really should use the emacs short cuts! Here is an example of my work flow after I open the latex file&#8230;</p>
<p>C-c C-c  : This command automatically runs the most appropriate latex command.  Thus, if you are starting from scratch, when you issue a C-c C-c, it will run latex (really pdflatex) on your .tex file.  If you have a .bib file with the same name as your latex file in the same directory, when you run C-c C-c again, it will automatically run bibtex! Then, due to how latex works, you issue C-c C-c two more times to resolve reference numbers.  Now that the latex file has been fully processed, if you run C-c C-c one more time, it will automatically issue the view pdf command.  When Okular opens up, it centers the pdf on the line that your cursor in emacs is located.  To test the backward search from Okular, click a line in the Okular pdf with SHIFT + LEFT CLICK and the cursor in emacs will jump to that same line!  All is right in the world.</p>
<p>Here is a cheat sheet for latex/auctex commands: <a href="http://devcheatsheet.com/static/pdf/auctex-ref.pdf">http://devcheatsheet.com/static/pdf/auctex-ref.pdf</a></p>
<p>Also, the users at tex.stackexchange came up with a list of very useful commands:</p>
<p><a href="http://tex.stackexchange.com/questions/20843/useful-shortcuts-or-key-bindings-or-predefined-commands-for-emacsauctex">http://tex.stackexchange.com/questions/20843/useful-shortcuts-or-key-bindings-or-predefined-commands-for-emacsauctex</a></p>
<pre></pre>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2013/04/24/emacs-auctex-synctex-okular-on-ubuntu-12-04/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Code Repos</title>
		<link>http://www.kevindemarco.com/2012/10/24/code-repos/</link>
		<comments>http://www.kevindemarco.com/2012/10/24/code-repos/#comments</comments>
		<pubDate>Wed, 24 Oct 2012 22:07:53 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=575</guid>
		<description><![CDATA[Here are some code repositories that I maintain&#8230; MOOS / ROS Bridge MOOS Code Example for GT students]]></description>
				<content:encoded><![CDATA[<p>Here are some code repositories that I maintain&#8230;</p>
<p><a href="http://github.com/SyllogismRXS/moos-ros-bridge">MOOS / ROS Bridge</a></p>
<p><a href="http://code.google.com/p/gt-syllo/">MOOS Code Example for GT students</a></p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2012/10/24/code-repos/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Georgia Tech Student Project Open Source Repository</title>
		<link>http://www.kevindemarco.com/2012/10/18/georgia-tech-student-project-open-source-repository/</link>
		<comments>http://www.kevindemarco.com/2012/10/18/georgia-tech-student-project-open-source-repository/#comments</comments>
		<pubDate>Thu, 18 Oct 2012 15:16:05 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=573</guid>
		<description><![CDATA[As an employee / PhD student at Georgia Tech, I&#8217;ve been assisting Georgia Tech undergrads complete their senior design projects quite a bit lately. I decided I need a simple way to provide them with code examples and templates.  Thus, &#8230; <a href="http://www.kevindemarco.com/2012/10/18/georgia-tech-student-project-open-source-repository/"><em>Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></em></a>]]></description>
				<content:encoded><![CDATA[<p>As an employee / PhD student at Georgia Tech, I&#8217;ve been assisting Georgia Tech undergrads complete their senior design projects quite a bit lately. I decided I need a simple way to provide them with code examples and templates.  Thus, I created a Google Code repository.  The repo holds various robotics, computer vision, digital communications, and control theory projects.  To get your own copy of the repo on Ubuntu or similar UNIX system, use the following commands&#8230;</p>
<p>1.) Install git.  The following command works on Ubuntu-like systems.  If you have another operating system see the <a href="http://git-scm.com/book/en/Getting-Started-Installing-Git">git manual</a> for installation.</p>
<p><code>$ sudo apt-get install git-core</code></p>
<p>2.) I keep all of my git repositories in the same folder for organizational reasons.  Typically, I keep them in the ~/git-repos folder.  So create it&#8230;</p>
<p><code>$ mkdir ~/git-repos</code></p>
<p><code>$ cd ~/git-repos</code></p>
<p>3.) Use git to clone (copy) the repository to your system</p>
<p><code>$ git clone https://code.google.com/p/gt-syllo/</code></p>
<p>&nbsp;</p>
<p>&nbsp;</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2012/10/18/georgia-tech-student-project-open-source-repository/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Tutorials for Undergraduate Robotics Course</title>
		<link>http://www.kevindemarco.com/2012/08/23/new-tutorials-for-undergraduate-robotics-course/</link>
		<comments>http://www.kevindemarco.com/2012/08/23/new-tutorials-for-undergraduate-robotics-course/#comments</comments>
		<pubDate>Thu, 23 Aug 2012 05:27:36 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=569</guid>
		<description><![CDATA[I wrote some robotics software tutorials for undergraduate students at Georgia Tech taking a course on marine robotics. The tutorials deal with topics such as using virtual machines, Linux, and robotic middleware software.]]></description>
				<content:encoded><![CDATA[<p>I wrote some <a title="http://www.gtrirobolab.gtri.gatech.edu/index.php/tutorials/" href="http://www.gtrirobolab.gtri.gatech.edu/index.php/tutorials/">robotics software tutorials </a>for undergraduate students at Georgia Tech taking a course on <a href="http://vip.gatech.edu/aquabots/index.html">marine robotics</a>. The tutorials deal with topics such as using <a href="http://www.gtrirobolab.gtri.gatech.edu/index.php/installing-linux-in-a-virtual-machine/">virtual machines</a>, <a href="http://www.gtrirobolab.gtri.gatech.edu/index.php/an-introduction-to-the-linux-experience/">Linux</a>, and <a href="http://www.gtrirobolab.gtri.gatech.edu/index.php/an-introduction-to-moos/">robotic middleware software</a>.</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2012/08/23/new-tutorials-for-undergraduate-robotics-course/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MORSE / ROS Installation Notes</title>
		<link>http://www.kevindemarco.com/2012/08/21/morse-ros-installation-notes/</link>
		<comments>http://www.kevindemarco.com/2012/08/21/morse-ros-installation-notes/#comments</comments>
		<pubDate>Tue, 21 Aug 2012 14:50:14 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=555</guid>
		<description><![CDATA[MORSE is a really capable simulator based on the Blender physics and game engine, but its really difficult to get it working with ROS.  I put up my own install notes. http://www.kevindemarco.com/tutorials/morse-ros-installation/]]></description>
				<content:encoded><![CDATA[<p><a title="http://www.openrobots.org/morse/doc/stable/morse.html" href="http://www.openrobots.org/morse/doc/stable/morse.html">MORSE</a> is a really capable simulator based on the Blender physics and game engine, but its really difficult to get it working with <a title="http://www.ros.org" href="http://www.ros.org">ROS</a>.  I put up my own install notes.</p>
<p><a title="http://www.kevindemarco.com/tutorials/morse-ros-installation/" href="http://www.kevindemarco.com/tutorials/morse-ros-installation/">http://www.kevindemarco.com/tutorials/morse-ros-installation/</a></p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2012/08/21/morse-ros-installation-notes/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Live Image Processing</title>
		<link>http://www.kevindemarco.com/2012/08/20/live-image-processing/</link>
		<comments>http://www.kevindemarco.com/2012/08/20/live-image-processing/#comments</comments>
		<pubDate>Mon, 20 Aug 2012 05:48:24 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=546</guid>
		<description><![CDATA[I&#8217;m experimenting with Cinder, which provides a nice API for opengl. I plan on synchronizing the video with incoming audio or MIDI signals for generative visuals.]]></description>
				<content:encoded><![CDATA[<p>I&#8217;m experimenting with Cinder, which provides a nice API for opengl.  I plan on synchronizing the video with incoming audio or MIDI signals for generative visuals.<br />
<iframe src="http://www.youtube.com/embed/10i_AdfuSzE" frameborder="0" width="420" height="315"></iframe></p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2012/08/20/live-image-processing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Video Tutorial: MIDI from Ableton Live to Pure Data (IAC Driver)</title>
		<link>http://www.kevindemarco.com/2012/08/18/video-tutorial-midi-from-ableton-live-to-pure-data-iac-driver/</link>
		<comments>http://www.kevindemarco.com/2012/08/18/video-tutorial-midi-from-ableton-live-to-pure-data-iac-driver/#comments</comments>
		<pubDate>Sat, 18 Aug 2012 17:15:18 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=542</guid>
		<description><![CDATA[Since I couldn&#8217;t find any good, short tutorials on setting up a MIDI connection between Ableton Live and Pure Data via the MAC OS IAC Driver, I decided to put this together really quickly.  To accomplish the same sort of &#8230; <a href="http://www.kevindemarco.com/2012/08/18/video-tutorial-midi-from-ableton-live-to-pure-data-iac-driver/"><em>Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></em></a>]]></description>
				<content:encoded><![CDATA[<p>Since I couldn&#8217;t find any good, short tutorials on setting up a MIDI connection between Ableton Live and Pure Data via the MAC OS IAC Driver, I decided to put this together really quickly.  To accomplish the same sort of function in Windows, you will need to use the <a title="http://www.midiox.com/" href="http://www.midiox.com/">MIDI-Yoke</a> application. In the video, I demonstrate how to&#8230;</p>
<ol>
<li>Setup the IAC Driver in MAC OS X</li>
<li>Enable MIDI output from Ableton Live</li>
<li>Process MIDI input in Pure Data</li>
<li>See the output of the Pure Data patch that converts the MIDI to OSC.</li>
</ol>
<p><iframe width="420" height="315" src="http://www.youtube.com/embed/Si2kIyMBaTw" frameborder="0" allowfullscreen></iframe></p>
<p>I recorded this video tutorial in support of a previous post on MIDI to OSC conversion.</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2012/08/18/video-tutorial-midi-from-ableton-live-to-pure-data-iac-driver/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>MIDI to OSC Conversion with Pure Data (pd) and Ableton Live</title>
		<link>http://www.kevindemarco.com/2012/08/18/midi-to-osc-conversion-with-pure-data-pd-and-ableton-live/</link>
		<comments>http://www.kevindemarco.com/2012/08/18/midi-to-osc-conversion-with-pure-data-pd-and-ableton-live/#comments</comments>
		<pubDate>Sat, 18 Aug 2012 17:02:16 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Uncategorized]]></category>

		<guid isPermaLink="false">http://www.kevindemarco.com/?p=538</guid>
		<description><![CDATA[I&#8217;m putting together a live audio/visual performance setup which will include two laptops.  The first laptop will be processing all audio and MIDI triggers, while the second laptop will be converting the MIDI information into some sort of visual representation. &#8230; <a href="http://www.kevindemarco.com/2012/08/18/midi-to-osc-conversion-with-pure-data-pd-and-ableton-live/"><em>Continue&#160;reading&#160;<span class="meta-nav">&#8594;</span></em></a>]]></description>
				<content:encoded><![CDATA[<p>I&#8217;m putting together a live audio/visual performance setup which will include two laptops.  The first laptop will be processing all audio and MIDI triggers, while the second laptop will be converting the MIDI information into some sort of visual representation. I&#8217;ll get into the visuals that I will be coding with the use of  <a title="http://libcinder.org/" href="http://libcinder.org/">Cinder</a> in a future post.  For now, I just wrote two Pure Data patches: one to convert MIDI information to OSC messages and one to set the OSC message endpoint for LiveOSC.</p>
<p>1.) Convert MIDI note information to OSC messages.<br />
OSC (Open Sound Control) is just human readable &#8220;MIDI-like&#8221; information sent over UDP network packets. If you don&#8217;t know what UDP really is, you can think of it as a stream of information being blasted over your network from one program to another program (without any feedback on whether the message was received properly).  However, there is a lot of open source code out there that has been written to transmit, receive, and parse these OSC messages, so its a nice protocol to use when transmitting MIDI-like information over a network. For this patch, I targeted sending MIDI information from Ableton Live to Pure Data, where it was packed into an OSC message and broadcasted to the other computer. To setup Ableton live to transmit MIDI note information, go to a MIDI track in your Ableton live setup and select a software MIDI output device (See my post on <a title="Video Tutorial: MIDI from Ableton Live to Pure Data (IAC Driver)" href="http://www.kevindemarco.com/2012/08/18/video-tutorial-midi-from-ableton-live-to-pure-data-iac-driver/">IAC Driver for MAC</a> or use <a title="http://www.midiox.com/" href="http://www.midiox.com/">MIDI-Yoke for Windows</a>).  Then you will need to setup a MIDI track in Ableton live to transmit its MIDI information to the IAC Driver, which is received through the IAC Driver in Pure Data. The following Pure Data patch converts the MIDI to OSC and transmits it over the appropriate network.</p>
<div id="attachment_539" class="wp-caption aligncenter" style="width: 619px"><a href="http://www.kevindemarco.com/wp-content/uploads/2012/08/midi-to-osc.png"><img class="size-full wp-image-539" title="MIDI to OSC" src="http://www.kevindemarco.com/wp-content/uploads/2012/08/midi-to-osc.png" alt="MIDI to OSC" width="609" height="481" /></a><p class="wp-caption-text">MIDI to OSC in Pure Data</p></div>
<p>You can download the patch here: <a title="http://www.kevindemarco.com/archive/midi-to-osc.pd" href="http://www.kevindemarco.com/archive/midi-to-osc.pd">http://www.kevindemarco.com/archive/midi-to-osc.pd</a></p>
<p>The end point for the OSC message is determined by the &#8220;local&#8221; vs &#8220;remote&#8221; radio button and the IP address in the connect message.  Use localhost when you want the OSC endpoint to be on your current machine, use &#8220;remote&#8221; when you want to send the OSC messages to another computer.  Also, when using &#8220;remote&#8221; make sure to set the IP address in the connect message.</p>
<p>I tested the network activity with a combination of <a title="http://www.wireshark.org/" href="http://www.wireshark.org/">WireShark</a> and the example OSC listener in Cinder. If you have never used WireShark and you plan on doing any network related activities, you really need to learn to use it&#8230; and it&#8217;s open source.</p>
<p>I&#8217;ll write about the LiveOSC endpoint selector patch in another post. This is too long already.</p>
<p>-Kevin</p>
<div class='wb_fb_comment'><br/></div>]]></content:encoded>
			<wfw:commentRss>http://www.kevindemarco.com/2012/08/18/midi-to-osc-conversion-with-pure-data-pd-and-ableton-live/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
