<?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>[ a n y m a &#124; research - blog ] &#187; video</title>
	<atom:link href="http://www.anyma.ch/blogs/research/tag/video/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.anyma.ch/blogs/research</link>
	<description>news from the lab...</description>
	<lastBuildDate>Thu, 02 Sep 2010 12:35:08 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Videobass is under version control</title>
		<link>http://www.anyma.ch/blogs/research/2010/01/20/videobass-is-under-version-control/</link>
		<comments>http://www.anyma.ch/blogs/research/2010/01/20/videobass-is-under-version-control/#comments</comments>
		<pubDate>Tue, 19 Jan 2010 23:38:26 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[Videobass]]></category>
		<category><![CDATA[code]]></category>
		<category><![CDATA[max/msp]]></category>
		<category><![CDATA[subversion]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.anyma.ch/blogs/research/?p=87</guid>
		<description><![CDATA[Good resolutions sometimes take a long time, but never give up your hopes! I have finally put the videobass code base under version control: http://code.google.com/p/videobass/source/checkout My last publication of videobass sources was in 2004, I believe. And I&#8217;m not even sure if that included the videobass application written in Max/MSP. Since then the instrument has [...]]]></description>
			<content:encoded><![CDATA[<p>Good resolutions sometimes take a long time, but never give up your hopes! I have finally put the videobass code base under version control: <a href="http://code.google.com/p/videobass/source/checkout">http://code.google.com/p/videobass/source/checkout</a></p>
<p><span id="more-87"></span>My last publication of videobass sources was in 2004, I believe. And I&#8217;m not even sure if that included the videobass application written in <a href="http://cycling74.com/">Max/MSP</a>. Since then the instrument has evolved a lot, but changes are incremental, most of the times very small, and not always worth a big anouncement. When we received the <a href="http://www.digitalbrainstorming.ch/programm/genf">award of the Migros Kulturprozent</a> for this project, I took the pledge to document more and publish all under open source licenses. But before publishing I wanted to develop a little more, advance and clean up the code &#8211; small improvements not really worth a big announcement&#8230;</p>
<p>If I had my code up on a public version control server, a big part of the documentation would be there automatically, with the log messages of all these small improvements&#8230; And if I had <strong>any</strong> sort of version control, maybe the code would not have been always a mess and I would not have rewritten it about four times from scratch?</p>
<p>Anyway, I&#8217;ve just rewritten almost everything again, and it&#8217;s too early to see all the edgy corners so I&#8217;m still quite proud of it. That&#8217;s a good moment to put this project on some stable grounds.</p>
<h3>Why did it take so long?</h3>
<p>I still don&#8217;t really understand what my problem is with <a href="http://en.wikipedia.org/wiki/Revision_control">version control</a>. I do fundamentally understand why it is important. I experienced so many times where I was completely lost in the mess of my code and I wished I could roll back to an older version (most of all if a last-minute change half an hour before a live concert completely broke my software, and I had to hack my way all up on stage instead of eating with the rest of the band&#8230;). I wish I had a log of my changes. I would love to know when I come back to the project after some months in other worlds, which one of the five folders in different places on my harddisk is the most recent version&#8230; videobass2010? oh no, that&#8217;s just an unfinished aproach to a complete rewrite. vb09? looks nice, but there&#8217;s a lot of files in videobass_2007 that have more recent modification dates&#8230;.</p>
<p>One question is <strong>how?</strong></p>
<p>I tried my hands on <a href="http://bazaar.canonical.com/en/">Bazaar,</a> which seemed to suit my unorganized style quite well, but I forgot which projects are controlled by Bazaar, and copied files and folders back and forth and it&#8217;s a complete mess now, with .bzr directories in completely unrelated projects, because I copied another as a template and I do not <strong>see</strong> that it is versioned &#8211; I do not ls -a every time before I duplicate a folder in the Finder&#8230;</p>
<p>And <a href="http://subversion.tigris.org/">subversion</a> is even worse because it puts a .svn in every f***ing directory and I have to think to do a svn export before zipping and sending the stuff in an email to somebody.</p>
<p>So one of the questions that held me back was what system do I use? Well now the answer is subversion but I&#8217;m still triyng to get used to it (you can see my commit log if you want to get an idea&#8230;)</p>
<p>And the other question is: <strong>where?</strong></p>
<p>Sourceforge was the obvious answer in 2004 for <a href="http://livecut.sourceforge.net/">LiveCut</a>. But sourceforge is bloated, slow, and I always forget how to do this stuff if I&#8217;m not constantly updating my project. Uploads for the website go to projects.sourceforge.net/l/li/liv/livecut/htdocs ?? It&#8217;s been a long time, I can&#8217;t remember&#8230;</p>
<p>Do I trust Google? Should I put all my precious work in <span style="text-decoration: line-through;">not</span> <span style="text-decoration: line-through;">evil</span> Google&#8217;s hands? I don&#8217;t know.</p>
<p>We also tried to set up our own subversion server on the G4 in the closet. It worked well. I can&#8217;t remember how. I don&#8217;t remember the password. I don&#8217;t remember what code is on there, but I&#8217;m sure I have much more recent versions of the same software on my hard disc&#8230;</p>
<p>It&#8217;s a mess</p>
<h3>Why did it go so fast?</h3>
<p>Last weekend we recorded some songs and did a <a href="http://www.anyma.ch/2010/info/naima-in-concert-au-bilboquet-fribourg-15-janvier-2010/">concert</a> with <a href="http://www.oliviernussbaum.com/naima/">Naïma</a> &#8211; with the newest version of the VideoBass. At the rehearsals Maïté found some severe problems with the software and I had to do something about it quickly. The problem is, I did the latest corrections in december directly on the new MacMini that will go into the VideoBass Amp and the Max/MSP Demo license on that machine has expired since. On my MacBook I have a license, so i can edit the patches, but it&#8217;s not the same machine. I could copy the whole thing back to a new folder on my MacBook, code, try, and copy back to see if it also works on the MacMini. But in doing so I contribute to the duplication of code and the subsequent proliferation of different versions. Or I can modify the patches over the network, but this means I can&#8217;t debug and I can&#8217;t see the immediate effects of my changes &#8211; one of the greatest advantages of Max/MSP.</p>
<p>I found that if you install Max/MSP but never use it as a user with administrator rights, every time you create a new user on the same machine, you&#8217;ll get another 30 days of demo license. Neat.</p>
<p>So I started hacking away as a new user on the MacMini, with a copy of the videobass code. But with the deadline of the concert arriving I was getting more and more terrified of not remembering which version was the newest, which one still works, which one I can roll back if the additional ideas I had don&#8217;t work out at all. And swapping between users on the same machine, under terrible pressure, I found myself modifying .js files one the one side where I just wantetd to have a look how the original solution was, and modifying the corresponding .maxpat files on the other side where I had my precious demo license. A nightmare.</p>
<p>It all worked out well and we had a great concert, but that&#8217;s when I swore that I won&#8217;t do any more work before this code gets under version control. I don&#8217;t care how and where, but it must be now!</p>
<p>So now our VideoBass lives at Google&#8217;s, just because it was the fastest and most painless option (as usual ?). And it&#8217;s on Subversion. I really hope I will get used to it.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.anyma.ch/blogs/research/2010/01/20/videobass-is-under-version-control/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Powersupply &amp; observations</title>
		<link>http://www.anyma.ch/blogs/research/2010/01/04/powersupply-observations/</link>
		<comments>http://www.anyma.ch/blogs/research/2010/01/04/powersupply-observations/#comments</comments>
		<pubDate>Sun, 03 Jan 2010 23:56:12 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[Synkie]]></category>
		<category><![CDATA[lm1881]]></category>
		<category><![CDATA[power supply]]></category>
		<category><![CDATA[schematics]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.anyma.ch/blogs/research/?p=59</guid>
		<description><![CDATA[sk00 power supply Here&#8217;s the schematics and the board for the power supply. I have not built it, yet, so I have no idea if it works as intended. Originally, we wanted to supply up to 2 Amps per channel, but when I started to order the parts, I found out that the LM78xx series [...]]]></description>
			<content:encoded><![CDATA[<h2>sk00 power supply</h2>
<p>Here&#8217;s the schematics and the board for the power supply. I have not built it, yet, so I have no idea if it works as intended. Originally, we wanted to supply up to 2 Amps per channel, but when I started to order the parts, I found out that the LM78xx series of voltage regulators can only supply 1A. For starters this is way enough, but someday we&#8217;d maybe want to change the design, using a LM350 or something? I also didn&#8217;t include HF-coils at the moment, maybe critical modules should have their own coils ? Or should we straight things out more in the power supply ? We&#8217;ll see how this develops when there are more modules connected&#8230;</p>
<p><a href="http://www.anyma.ch/blogs/research/wp-content/uploads/2010/01/sk00-supply.zip">sk00-supply</a></p>
<h2>Some final words</h2>
<p>We all have to move to more serious stuff again, so that&#8217;s it for the moment:</p>
<p><a href="http://www.anyma.ch/blogs/research/wp-content/uploads/2010/01/sk01-sync-splitter.zip">sk01-sync-splitter</a>, <a href="http://www.anyma.ch/blogs/research/wp-content/uploads/2010/01/sk02-resyncer.zip">sk02-resyncer</a>, <a href="http://www.anyma.ch/blogs/research/wp-content/uploads/2010/01/synkie-frontpanel.pdf">synkie-frontpanel</a></p>
<p>We&#8217;ll certainly continue at the &#8220;Makers Forschungswoche&#8221; in Fribourg in April. Some things have become clear already:</p>
<h3>Change the bus layout</h3>
<p>Instead of a monolithic bus, where most of the signals are used by few modules, we&#8217;ll move to three busses:</p>
<ul>
<li>Power: -5V | GND | +5V | VCC</li>
<li>Sync: H-Sync | V-Sync | Backporch | Odd/Even</li>
<li>Digital: A four wire digital bus, the specs are to be determined.</li>
</ul>
<p>Interconnects will be standard 4 x 1 pinheaders with ribbon cables between bus and modules. The sk00-supply module already reflects these changes.</p>
<p>The video-sync signal (genlock) should be treated like any video signal and be carried out on a front cinch connector, so we can fool around with it too, or feed it to other devices like mixers or surveillance cameras as a genlock signal.</p>
<h3>LM1881 signals</h3>
<p>As you can see in the waveforms below,we&#8217;ve got two problems with the output of the LM1881 sync separator chip that we have to clean up:</p>
<p>There&#8217;s a small gap between the H-sync and the backporch pulses, that gives us spikes in both the picture and the sync signal. The H-sync comes a bit late, we&#8217;ll can&#8217;t do anything about that, but the second problem is that the backporch impulse is way too short.</p>
<div id="attachment_66" class="wp-caption alignnone" style="width: 330px"><a href="http://www.anyma.ch/blogs/research/wp-content/uploads/2010/01/WA00001C.gif"><img class="size-full wp-image-66" title="WA00001C" src="http://www.anyma.ch/blogs/research/wp-content/uploads/2010/01/WA00001C.gif" alt="" width="320" height="234" /></a><p class="wp-caption-text">H-Sync and backporch combined</p></div>
<p>Here we can see the backporch before it is fed to the NAND gates. They seem to trigger immediately. We&#8217;ll have to slow the ramp or maybe have a look at the LM1881 datasheet again&#8230;</p>
<div id="attachment_67" class="wp-caption alignnone" style="width: 330px"><a href="http://www.anyma.ch/blogs/research/wp-content/uploads/2010/01/WA00001D.gif"><img class="size-full wp-image-67" title="WA00001D" src="http://www.anyma.ch/blogs/research/wp-content/uploads/2010/01/WA00001D.gif" alt="" width="320" height="234" /></a><p class="wp-caption-text">LM1881 Backporch output</p></div>
<h3>Black level</h3>
<p>I&#8217;m still not really sure where we want the black level. Right now it seems that black is at 0V, with the sync pulses going below 0. We also had to turn the potentiometer for the black level on the sk01 module all the way down to zero &#8211; it doesn&#8217;t serve a purpose anymore. We&#8217;ve seen also the back level move with the brightness of the input picture from our camera. The signal seems to be ac-coupled but we sure want to have a clear reference. Next thing I will build a module around the Maxim MAX7450 chip, a &#8220;Video-Signal Conditioner with AGC and Back-Porch Clamp&#8221;, which we happen to have lying around. Let&#8217;s see if we can get this straight with a simple additional module.</p>
<p>I&#8217;m impatient to continue theses explorations. Thanks as well to Max who did all the work, while I was mostly blogging <img src='http://www.anyma.ch/blogs/research/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> , and to Flo for all the helpful inputs.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.anyma.ch/blogs/research/2010/01/04/powersupply-observations/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Synkie 2010-01-02</title>
		<link>http://www.anyma.ch/blogs/research/2010/01/02/synkie-2010-01-02/</link>
		<comments>http://www.anyma.ch/blogs/research/2010/01/02/synkie-2010-01-02/#comments</comments>
		<pubDate>Sat, 02 Jan 2010 16:27:20 +0000</pubDate>
		<dc:creator>Michael</dc:creator>
				<category><![CDATA[Eagle]]></category>
		<category><![CDATA[Synkie]]></category>
		<category><![CDATA[effect]]></category>
		<category><![CDATA[lm1881]]></category>
		<category><![CDATA[video]]></category>

		<guid isPermaLink="false">http://www.anyma.ch/blogs/research/?p=19</guid>
		<description><![CDATA[Here&#8217;s the eagle files for the first three synkie-modules: Power supply, sync-separator and resyncer. synkie20100102 We&#8217;re just soldering them right now, no idea if they work like this&#8230; More as it develops]]></description>
			<content:encoded><![CDATA[<p>Here&#8217;s the eagle files for the first three synkie-modules: Power supply, sync-separator and resyncer.</p>
<p><a href="http://www.anyma.ch/blogs/research/wp-content/uploads/2010/01/synkie20100102.zip">synkie20100102</a></p>
<p>We&#8217;re just soldering them right now, no idea if they work like this&#8230;</p>
<p>More as it develops</p>
]]></content:encoded>
			<wfw:commentRss>http://www.anyma.ch/blogs/research/2010/01/02/synkie-2010-01-02/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
