<?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"

			>

	<channel>
		<title>Cycling 74  &#187;  Topic: Where is the bottle neck in this signal chain?</title>
		<atom:link href="http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/feed" rel="self" type="application/rss+xml" />
		<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/feed</link>
		<description></description>
		<pubDate>Tue, 18 Jun 2013 19:21:38 +0000</pubDate>
		<generator>http://bbpress.org/?v=2.2.4</generator>
		<language></language>

		
														
					
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-38054</guid>
					<title><![CDATA[Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-38054</link>
					<pubDate>Mon, 26 May 2008 05:20:01 +0000</pubDate>
					<dc:creator>Danjel van Tijn</dc:creator>

					<description>
						<![CDATA[
						<p>Here is my signal chain:</p>
<p>External midi controller&#8212;->VDMX Midi (In plugin)&#8212;&#8212;>VDMX slider/knobs&#8212;->VDMX Midi out (plugin)&#8212;-via IAC bus&#8212;>Max patch with main code in a js object&#8212;->Serial Object out to wireless XBEE (9600 baud rate)&#8212;&#8211;wireless connection to a remote uP that controls an rgb led.</p>
<p>
So the issue is when I move more than one slider at a time on the external midi controller, the max patch only receives one of the controls. e.g. if I had three sliders each assigned to a different CC# and I move all three, only one of the CC# values gets read.</p>
<p>I think the bottleneck (other than the 9600 baud serial port) is with the vdmx midi in to midi out plugins not managing the multiple CC# (issue with it&#8217;s event handling/monitoring)</p>
<p>Anything I should consider in terms of optimising the real time response of this system?</p>
<p>is there potential max issues or is this purely a vdmx issue?</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131951</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131951</link>
					<pubDate>Mon, 26 May 2008 15:26:52 +0000</pubDate>
					<dc:creator>Anthony Palomba</dc:creator>

					<description>
						<![CDATA[
						<p>Generally as a rule of thumb, I do not do any time <br />
critical processing of data in javascript. Transferring<br />
data back and forth from ls is terribly inefficient.<br />
Assuming your data is not being lost somewhere up stream,<br />
you may need seperate data channels.</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131952</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131952</link>
					<pubDate>Mon, 26 May 2008 20:46:45 +0000</pubDate>
					<dc:creator>Stefan Tiedje</dc:creator>

					<description>
						<![CDATA[
						<p>Danjel van Tijn schrieb:<br />
> is there potential max issues or is this purely a vdmx issue?</p>
<p>As I do all my controls always with multiple faders, and never had a <br />
problem I&#8217;d assume its and vdmx issuee.<br />
I have no idea what it means, you seem to assume everybody knows about <br />
vdmx, that assumption doesn&#8217;t help, its wrong&#8230; ;-)</p>
<p>You might paste your patch into a mail, to have a look at it. Usually <br />
the reason for such problems is a bug in your patch&#8230;</p>
<p>Stefan</p>
<p>&#8211; <br />
Stefan Tiedje&#8212;&#8212;&#8212;&#8212;x&#8212;&#8212;-<br />
&#8211;_____&#8212;&#8212;&#8212;&#8211;|&#8212;&#8212;&#8212;&#8212;&#8211;<br />
&#8211;(_|_ &#8212;-|&#8212;&#8211;|&#8212;&#8211;()&#8212;&#8212;-<br />
&#8211; _|_)&#8212;-|&#8212;&#8211;()&#8212;&#8212;&#8212;&#8212;&#8211;<br />
&#8212;&#8212;&#8212;-()&#8212;&#8212;&#8211;www.ccmix.com</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131953</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131953</link>
					<pubDate>Mon, 26 May 2008 20:52:49 +0000</pubDate>
					<dc:creator>Danjel van Tijn</dc:creator>

					<description>
						<![CDATA[
						<p>Oops I should have mentioned that VDMX is a very popular VJing program for OS X.</p>
<p>The two big standards for VJing are Resolume and VDMX.</p>
<p>Also VDMX integrates really well with Quartz Composer.</p>
<p>
cheers,<br />
    Danjel</p>
<p><a href="http://www.audiovisualizers.com/toolshak/vjprgpix/vdmx/vdmx.htm" rel="nofollow">http://www.audiovisualizers.com/toolshak/vjprgpix/vdmx/vdmx.htm</a></p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131954</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131954</link>
					<pubDate>Tue, 27 May 2008 06:00:30 +0000</pubDate>
					<dc:creator>Danjel van Tijn</dc:creator>

					<description>
						<![CDATA[
						<p>Attached is my patch and the js file.</p>
<p>This patch basically takes an incoming midi cc and translates that into a command that an external device attached to the serial port can read (the external device is basically a uP hooked up to some rgb leds).</p>
<p>In order to do this the CC value is read in by the js object and matched to the right case. Most of the commands simply send a short ascii string.</p>
<p>The one that causes issues is part of &#8220;followcolormode&#8221;. For this I  use three different CC numbers to represent the color component R, G and B. In &#8220;followcolormode&#8221; changing an rgb value results in an instant color change message to be sent to the serial port. Whenever I am sending moving more than one fader at a time (e.g. sending r and g values) it gets stuck only sending one color. To me this is may be an issue in VDMX not merging the different streams of CC values.<br />
Or it could be that my js patch is too inefficient to deal with the steady stream of changing values.</p>
<p>if anyone checks out my code, I appreciate it!</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131955</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131955</link>
					<pubDate>Tue, 27 May 2008 06:17:01 +0000</pubDate>
					<dc:creator>Danjel van Tijn</dc:creator>

					<description>
						<![CDATA[
						<p>Looking more at my (sloppy) code I can see lot&#8217;s of room for optimizing, especially where I am applying a type changing function everytime I receive and rgb value.</p>
<p>e.g. when an r,g or b value comes in I change it from an integer to   a string and then format it for the message protocol (double digit ascii representation of a hex value).</p>
<p>This might be slowing things down&#8230;</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131956</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131956</link>
					<pubDate>Tue, 27 May 2008 08:59:50 +0000</pubDate>
					<dc:creator>Stefan Tiedje</dc:creator>

					<description>
						<![CDATA[
						<p>Danjel van Tijn schrieb:<br />
> Oops I should have mentioned that VDMX is a very popular VJing<br />
> program for OS X.</p>
<p>Ah, its software&#8230;</p>
<p>Then your solution is simple&#8230;<br />
Instead of</p>
<p>> External midi controller&#8212;->VDMX Midi (In plugin)&#8212;&#8212;>VDMX <br />
> slider/knobs&#8212;->VDMX Midi out (plugin)&#8212;-via IAC bus&#8212;>Max patch <br />
> with main code in a js object&#8212;->Serial Object out to wireless XBEE <br />
> (9600 baud rate)&#8212;&#8211;wireless connection to a remote uP that controls<br />
> an rgb led.</p>
<p>just skip the Midi route through VDMX, no IAC required, just get the <br />
midiin from your Midi interface directly into Max&#8230;</p>
<p>External midi controller&#8212;->Max patch with main code in a js <br />
object&#8212;->Serial Object out to wireless XBEE (9600 baud <br />
rate)&#8212;&#8211;wireless connection to a remote uP that controls an rgb led.</p>
<p>Stefan</p>
<p>&#8211; <br />
Stefan Tiedje&#8212;&#8212;&#8212;&#8212;x&#8212;&#8212;-<br />
&#8211;_____&#8212;&#8212;&#8212;&#8211;|&#8212;&#8212;&#8212;&#8212;&#8211;<br />
&#8211;(_|_ &#8212;-|&#8212;&#8211;|&#8212;&#8211;()&#8212;&#8212;-<br />
&#8211; _|_)&#8212;-|&#8212;&#8211;()&#8212;&#8212;&#8212;&#8212;&#8211;<br />
&#8212;&#8212;&#8212;-()&#8212;&#8212;&#8211;www.ccmix.com</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131957</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131957</link>
					<pubDate>Tue, 27 May 2008 14:56:45 +0000</pubDate>
					<dc:creator>Danjel van Tijn</dc:creator>

					<description>
						<![CDATA[
						<p>The problem is that we also need to receive midi generated internally by VDMX.</p>
<p>I did another test where I used VDMX to generate rgb values based on analysing frequency bands of music (yes I know I can also do this within max) which resulted in a steady stream of rgb values being generated. Again the messages got messed up so that only CC number was being listened to and the others ignored.<br />
(e.g. if r, g and b were constantly changing, usually only one value like g would be read and the other colors would get stuck).</p>
<p>I guess I would be suprised if VDMX is choking up while trying to send the midi for this since this should be a pretty common function (syncing audio or visual effects to external devices).</p>
<p>I guess I am just eliminating all other possibilties. You think the js part is not a bottleneck?</p>
<p>
cheers,<br />
   Danjel</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131958</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131958</link>
					<pubDate>Wed, 28 May 2008 11:37:37 +0000</pubDate>
					<dc:creator>Stefan Tiedje</dc:creator>

					<description>
						<![CDATA[
						<p>Danjel van Tijn schrieb:<br />
> The problem is that we also need to receive midi generated internally by VDMX.</p>
<p>No problem, just receive both with different ctlin/midiin or whatever&#8230;</p>
<p>Stefan</p>
<p>&#8211; <br />
Stefan Tiedje&#8212;&#8212;&#8212;&#8212;x&#8212;&#8212;-<br />
&#8211;_____&#8212;&#8212;&#8212;&#8211;|&#8212;&#8212;&#8212;&#8212;&#8211;<br />
&#8211;(_|_ &#8212;-|&#8212;&#8211;|&#8212;&#8211;()&#8212;&#8212;-<br />
&#8211; _|_)&#8212;-|&#8212;&#8211;()&#8212;&#8212;&#8212;&#8212;&#8211;<br />
&#8212;&#8212;&#8212;-()&#8212;&#8212;&#8211;www.ccmix.com</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131959</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131959</link>
					<pubDate>Wed, 28 May 2008 14:32:07 +0000</pubDate>
					<dc:creator>Hjalte Bested Møller</dc:creator>

					<description>
						<![CDATA[
						<p>my guess would also be the use of the js object,- javascript is very slow as mentioned</p>
						]]>
					</description>

					
					
				</item>

			
				<item>
					<guid>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131960</guid>
					<title><![CDATA[Re: Where is the bottle neck in this signal chain?]]></title>
					<link>http://cycling74.com/forums/topic/where-is-the-bottle-neck-in-this-signal-chain/#post-131960</link>
					<pubDate>Wed, 28 May 2008 14:53:24 +0000</pubDate>
					<dc:creator>Danjel van Tijn</dc:creator>

					<description>
						<![CDATA[
						<p>The midi internally generated by VDMX is also the midi data we need to use for the realtime RGB values. </p>
<p>JS was nice to use for this situation because it made it so easy to form the messages for the receiving device (a lot of converting between types and string formatting). <br />
For all the simple messages this worked out perfectly.</p>
<p>I guess what I can do is just look for the realtime messages (e.g. the rgb values in followcolormode) and process those with a different path than the other messages. I can do all their processing with max objects instead.</p>
<p>I guess another option is to learn how to make max objects written in C!</p>
<p>cheers,  <br />
    Danjel</p>
						]]>
					</description>

					
					
				</item>

					
		
	</channel>
	</rss>

