Forums > MaxMSP

altering movies with sound/ creating visuals

January 31, 2007 | 4:48 pm

Hi
I am trying to create visuals from live inpit from my turntables. I have got my turntables successfully creating signol is max/msp and showing up in the spectroscope. I now need to alter the frame rate of movies in max in conjunction with the bpm of the musical input. If anyone has anything they could tip me on that would be great.
Also if anyone has any tips on creating visuals in conjunction with live input, that would also be a great help.

Cheers


January 31, 2007 | 5:27 pm

I don’t do visuals (really) and I don’t do turntables (anymore) but have you checked out Ms. Pinky?

http://www.cycling74.com/products/mspinky

Perhpas the folks in the Jitter forum will have infos on creating visuals from live input?….you’ve done the Max and MSP and Jitter tutorials I hope?


January 31, 2007 | 5:43 pm


January 31, 2007 | 7:54 pm

Without doing pitch detection, you could use an amplitude gate to determine where (approx.) the beats are. This will work only if your music is fairly beat-heavy, and wouldn’t automatically carry over where there are breaks (unless you say so, by setting an automatic metronome using previous beats).

If your beats are going to be relatively constant, you could do a timer – tap tempo thing so you can manually enter the tempo along with the beats (just a couple clicks or keystrokes). Then it’ll run off that clock and carry over through breaks etc. If your tempo varies, you’d need the amplitude gate.

Ms. Pinky is also great as it provides a highly trackable sine wave for Max to use for other parameters (as is my understanding). Slowing / speeding / scratching the record will allow you to morph the params nicely. However, it uses up a turntable and doesn’t produce a very interesting musical sound in itself…. so…. maybe a good candidate for an older, less-used turntable off to the side.

You could use some MIDI controllers instead, or in addition to, your turntables. You can get a lot of knobs and faders in the space of one turntable… and mapping them using the ctlin object (and scale or zmap to scale the input values) is a snap in Max.

Try this out for beat detection and see if it helps–a variation of the thresh~ help file.

-C

————————-

max v2;
#N vpatcher 54 61 516 502;
#P window setfont "Sans Serif" 9.;
#P comment 29 112 120 9109513 connect when ready;
#P newex 28 136 50 9109513 adc~;
#P window linecount 4;
#P comment 147 28 157 9109513 Signal in will hopefully have beats that are relatively distinct and above the rest of the overall signal level;
#P comment 258 87 157 9109513 Keep low and high close together (the same , even) so that beats accurately open *and close* the gate at bottom;
#P window linecount 3;
#P comment 226 299 157 9109513 Right bang is your trigger — activated by a signal (beat) that went over the threshold;
#P window linecount 2;
#P comment 56 380 157 9109513 signal that got through (greater than high threshold);
#P window setfont "Sans Serif" 12.;
#P window linecount 1;
#P message 117 167 66 9109516 0.6;
#P message 196 167 66 9109516 0.7;
#P window setfont "Sans Serif" 9.;
#P newex 157 142 82 9109513 loadbang;
#P button 202 324 15 0;
#P button 164 324 15 0;
#P newex 163 298 50 9109513 sel 0;
#P toggle 56 300 23 0;
#P newex 56 330 50 9109513 gate~;
#P user number~ 56 355 95 370 9 139 3 2 0. 0. 0 0. 250 0. 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 18.;
#P comment 18 30 106 9109522 thresh~;
#B frgb 26 8 57;
#P window setfont "Sans Serif" 9.;
#P comment 314 192 65 9109513 • start audio;
#P message 382 206 27 9109513 stop;
#P message 314 206 65 9109513 startwindow;
#P newex 314 243 29 9109513 dac~;
#P user panel 299 187 123 43;
#X brgb 255 255 255;
#X frgb 100 202 30;
#X border 2;
#X rounded 0;
#X shadow 0;
#X done;
#P comment 227 221 51 9109513 high (set);
#P window setfont "Sans Serif" 14.;
#P flonum 217 198 49 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P flonum 122 198 49 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 9.;
#P user number~ 26 274 65 289 9 139 3 2 0. 0. 0 0. 250 0. 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 14.;
#P flonum 27 170 49 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
#P window setfont "Sans Serif" 9.;
#P newex 27 196 50 9109513 sig~;
#P newex 27 235 201 9109513 thresh~ 0. 1.;
#B color 5;
#P comment 131 221 59 9109513 low (reset);
#P comment 37 220 30 9109513 input;
#P comment 75 261 134 9109513 signal output (either 0 or 1);
#P connect 3 0 6 0;
#P connect 5 0 4 0;
#P connect 4 0 3 0;
#P connect 6 1 18 0;
#P connect 18 0 17 0;
#P connect 17 0 16 0;
#P connect 4 0 17 1;
#P connect 22 0 24 0;
#P connect 20 0 7 0;
#P connect 24 0 7 0;
#P connect 7 0 3 1;
#P connect 18 0 19 0;
#P connect 19 0 20 0;
#P connect 22 0 23 0;
#P connect 19 1 21 0;
#P connect 23 0 8 0;
#P connect 8 0 3 2;
#P connect 12 0 11 0;
#P fasten 13 0 11 0 387 234 319 234;
#P pop;


January 31, 2007 | 11:05 pm

This app was absolutely terrific.

http://www.pyramidedata.dk/autobpm.html

If someone could make it in max (and I think it should be possible), I might even be ready to pay a certain amount of money for it.

Mattijs


January 31, 2007 | 11:09 pm

You should also check out this dude:

http://www.e-mu.org/

and:

http://vvvv.org/tiki-index.php

Cheers,

Carey

On 1/31/07, Seejay James wrote:
>
> Without doing pitch detection, you could use an amplitude gate to determine where (approx.) the beats are. This will work only if your music is fairly beat-heavy, and wouldn’t automatically carry over where there are breaks (unless you say so, by setting an automatic metronome using previous beats).
>
> If your beats are going to be relatively constant, you could do a timer – tap tempo thing so you can manually enter the tempo along with the beats (just a couple clicks or keystrokes). Then it’ll run off that clock and carry over through breaks etc. If your tempo varies, you’d need the amplitude gate.
>
> Ms. Pinky is also great as it provides a highly trackable sine wave for Max to use for other parameters (as is my understanding). Slowing / speeding / scratching the record will allow you to morph the params nicely. However, it uses up a turntable and doesn’t produce a very interesting musical sound in itself…. so…. maybe a good candidate for an older, less-used turntable off to the side.
>
> You could use some MIDI controllers instead, or in addition to, your turntables. You can get a lot of knobs and faders in the space of one turntable… and mapping them using the ctlin object (and scale or zmap to scale the input values) is a snap in Max.
>
>
> Try this out for beat detection and see if it helps–a variation of the thresh~ help file.
>
> -C
>
>
> ————————-
>
>
>
> max v2;
> #N vpatcher 54 61 516 502;
> #P window setfont "Sans Serif" 9.;
> #P comment 29 112 120 9109513 connect when ready;
> #P newex 28 136 50 9109513 adc~;
> #P window linecount 4;
> #P comment 147 28 157 9109513 Signal in will hopefully have beats that are relatively distinct and above the rest of the overall signal level;
> #P comment 258 87 157 9109513 Keep low and high close together (the same , even) so that beats accurately open *and close* the gate at bottom;
> #P window linecount 3;
> #P comment 226 299 157 9109513 Right bang is your trigger — activated by a signal (beat) that went over the threshold;
> #P window linecount 2;
> #P comment 56 380 157 9109513 signal that got through (greater than high threshold);
> #P window setfont "Sans Serif" 12.;
> #P window linecount 1;
> #P message 117 167 66 9109516 0.6;
> #P message 196 167 66 9109516 0.7;
> #P window setfont "Sans Serif" 9.;
> #P newex 157 142 82 9109513 loadbang;
> #P button 202 324 15 0;
> #P button 164 324 15 0;
> #P newex 163 298 50 9109513 sel 0;
> #P toggle 56 300 23 0;
> #P newex 56 330 50 9109513 gate~;
> #P user number~ 56 355 95 370 9 139 3 2 0. 0. 0 0. 250 0. 0 0 0 221 221 221 222 222 222 0 0 0;
> #P window setfont "Sans Serif" 18.;
> #P comment 18 30 106 9109522 thresh~;
> #B frgb 26 8 57;
> #P window setfont "Sans Serif" 9.;
> #P comment 314 192 65 9109513 • start audio;
> #P message 382 206 27 9109513 stop;
> #P message 314 206 65 9109513 startwindow;
> #P newex 314 243 29 9109513 dac~;
> #P user panel 299 187 123 43;
> #X brgb 255 255 255;
> #X frgb 100 202 30;
> #X border 2;
> #X rounded 0;
> #X shadow 0;
> #X done;
> #P comment 227 221 51 9109513 high (set);
> #P window setfont "Sans Serif" 14.;
> #P flonum 217 198 49 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
> #P flonum 122 198 49 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
> #P window setfont "Sans Serif" 9.;
> #P user number~ 26 274 65 289 9 139 3 2 0. 0. 0 0. 250 0. 0 0 0 221 221 221 222 222 222 0 0 0;
> #P window setfont "Sans Serif" 14.;
> #P flonum 27 170 49 14 0 0 0 139 0 0 0 221 221 221 222 222 222 0 0 0;
> #P window setfont "Sans Serif" 9.;
> #P newex 27 196 50 9109513 sig~;
> #P newex 27 235 201 9109513 thresh~ 0. 1.;
> #B color 5;
> #P comment 131 221 59 9109513 low (reset);
> #P comment 37 220 30 9109513 input;
> #P comment 75 261 134 9109513 signal output (either 0 or 1);
> #P connect 3 0 6 0;
> #P connect 5 0 4 0;
> #P connect 4 0 3 0;
> #P connect 6 1 18 0;
> #P connect 18 0 17 0;
> #P connect 17 0 16 0;
> #P connect 4 0 17 1;
> #P connect 22 0 24 0;
> #P connect 20 0 7 0;
> #P connect 24 0 7 0;
> #P connect 7 0 3 1;
> #P connect 18 0 19 0;
> #P connect 19 0 20 0;
> #P connect 22 0 23 0;
> #P connect 19 1 21 0;
> #P connect 23 0 8 0;
> #P connect 8 0 3 2;
> #P connect 12 0 11 0;
> #P fasten 13 0 11 0 387 234 319 234;
> #P pop;
>
>


February 1, 2007 | 9:36 am

Quote: dodgeroo wrote on Thu, 01 February 2007 00:09
—————————————————-
> You should also check out this dude:
> http://www.e-mu.org/
>
> and:
> http://vvvv.org/tiki-index.php
>
> Cheers,
>
> Carey
>

Yeah, this could be nice (never really checked though), but I always find it a little suspicious if people are proud to show patches like these on their website:

http://vvvv.org/tiki-browse_image.php?imageId=3385

Mattijs


Viewing 7 posts - 1 through 7 (of 7 total)