Looping .wav files
Hello everyone,
This is my first venture into PD so bare with my Newb-ness...
I have a video crossfader and audio crossfader being controlled by the same input data. The problem is that my video loops automatically, but the audio does not. I have done some searching in the forums and none seem to make any sense. Is there an easy way to tell the audio files to replay once they have finished?
here is my project so far...
thanks in advance
Modifying sounds
@kalignos said:
I had thought of slowing down. If I smoothed out the waves in a sound file using something like sound forge so that they had a basic shape would that work? I'll try that as well...weekend project.
A lowpass filter should be able to do this. And, yeah, since you'll basically be getting rid of frequencies, it should make it less "fuzzy." The higher frequencies probably are the ones that do the most damage, anyway, because they result in sidebands that are spread farther out. Some of those are likely to get aliased as well.
Is there a better way to go about something like this? I was thinking that it would be cool to get the hint of like a power tool recorded sound when running an instrument into pd. I see the crossfading possibility, but I wanted something that kind of works like the modulation so that I could easily transform it to a weird vocal patch without adjusting all of the settings all of the time.
Hmm...I'm not sure I entirely now what you mean.
I'm not we'll versed in AM synthesis, but if you're still trying to maintain some semblance of the carrier sound, you could try it. AM is similar to ring modulation in that it produces the same sidebands. But with AM, you also keep the original carrier's frequencies, whereas with ring mod they disappear. All you have to do is take the modulator and make it unipolar positive (i.e., in the range of 0-1 instead of -1 - 1):
[adc~] [tabread~] (or whatever)
| |
| [+~ 1]
| |
| [*~ .5]
| /
| /
| /
[*~ ]
Crossfading between the original and this will should sound like a wet/dry mix of the sidebands.
Of course, now that I think about, just independently mixing the ring mod with the original instead of crossfading might work just as well. 
Interaction Design Student Patches Available
Greetings all,
I have just posted a collection of student patches for an interaction design course I was teaching at Emily Carr University of Art and Design. I hope that the patches will be useful to people playing around with Pure Data in a learning environment, installation artwork and other uses.
The link is: http://bit.ly/8OtDAq
or: http://www.sfu.ca/~leonardp/VideoGameAudio/main.htm#patches
The patches include multi-area motion detection, colour tracking, live audio looping, live video looping, collision detection, real-time video effects, real-time audio effects, 3D object manipulation and more...
Cheers,
Leonard
Pure Data Interaction Design Patches
These are projects from the Emily Carr University of Art and Design DIVA 202 Interaction Design course for Spring 2010 term. All projects use Pure Data Extended and run on Mac OS X. They could likely be modified with small changes to run on other platforms as well. The focus was on education so the patches are sometimes "works in progress" technically but should be quite useful for others learning about PD and interaction design.
NOTE: This page may move, please link from: http://www.VideoGameAudio.com for correct location.
Instructor: Leonard J. Paul
Students: Ben, Christine, Collin, Euginia, Gabriel K, Gabriel P, Gokce, Huan, Jing, Katy, Nasrin, Quinton, Tony and Sandy
GabrielK-AsteroidTracker - An entire game based on motion tracking. This is a simple arcade-style game in which the user must navigate the spaceship through a field of oncoming asteroids. The user controls the spaceship by moving a specifically coloured object in front of the camera.
Features: Motion tracking, collision detection, texture mapping, real-time music synthesis, game logic
GabrielP-DogHead - Maps your face from the webcam onto different dog's bodies in real-time with an interactive audio loop jammer. Fun!
Features: Colour tracking, audio loop jammer, real-time webcam texture mapping
Euginia-DanceMix - Live audio loop playback of four separate channels. Loop selection is random for first two channels and sequenced for last two channels. Slow volume muting of channels allows for crossfading. Tempo-based video crossfading.
Features: Four channel live loop jammer (extended from Hardoff's ma4u patch), beat-based video cross-cutting
Huan-CarDance - Rotates 3D object based on the audio output level so that it looks like it's dancing to the music.
Features: 3D object display, 3d line synthesis, live audio looper
Ben-VideoGameWiiMix - Randomly remixes classic video game footage and music together. Uses the wiimote to trigger new video by DarwiinRemote and OSC messages.
Features: Wiimote control, OSC, tempo-based video crossmixing, music loop remixing and effects
Christine-eMotionAudio - Mixes together video with recorded sounds and music depending on the amount of motion in the webcam. Intensity level of music increases and speed of video playback increases with more motion.
Features: Adaptive music branching, motion blur, blob size motion detection, video mixing
Collin-LouderCars - Videos of cars respond to audio input level.
Features: Video switching, audio input level detection.
Gokce-AVmixer - Live remixing of video and audio loops.
Features: video remixing, live audio looper
Jing-LadyGaga-ing - Remixes video from Lady Gaga's videos with video effects and music effects.
Features: Video warping, video stuttering, live audio looper, audio effects
KatyC_Bunnies - Triggers video and audio using multi-area motion detection. There are three areas on each side to control the video and audio loop selections. Video and audio loops are loaded from directories.
Features: Multi-area motion detection, audio loop directory loader, video loop directory loader
Nasrin-AnimationMixer - Hand animation videos are superimposed over the webcam image and chosen by multi-area motion sensing. Audio loop playback is randomly chosen with each new video.
Features: Multi-area motion sensing, audio loop directory loader
Quintons-AmericaRedux - Videos are remixed in response to live audio loop playback. Some audio effects are mirrored with corresponding video effects.
Features: Real-time video effects, live audio looper
Tony-MusicGame - A music game where the player needs to find how to piece together the music segments triggered by multi-area motion detection on a webcam.
Features: Multi-area motion detection, audio loop directory loader
Sandy-Exerciser - An exercise game where you move to the motions of the video above the webcam video. Stutter effects on video and live audio looper.
Features: Video stutter effect, real-time webcam video effects
Help me catch a thief, please!
I'm trying to figure out what's wrong with this patch - it seems to be eating way too much CPU power (40% on my Pentium M 1.6GHz). When metro is unticked, it seems to half the CPU usage. But even 20% seems a bit too high.
What I am trying to do is crossfade between the two noise sources. As soon as the crossfade starts, filter frequency has to start going up incrementally. Is there an easier / more efficient way to achieve this?
I would be grateful for any advice / comment.
Many many thanks!
GEM (pix\_film): CPU at 100%!
Hi All,
I am using the method described
to crossfade between two Quicktime video clips. Both 640x480, 25fps, compressed using Photo-JPEG codec at 75%, approximately 15 seconds in length each. This task seems impossible - the CPU jumps to and stays at 100%. My machine is Pentium M Centrino 1.6GHz with 1.5GB of RAM, ATI Mobility Radeon 9600 (64MB). Video editing software I use has no problem crossfading two DV-PAL clips at 720x576 in real time. Even then CPU doesn't go above 50%.Is it an issue with GEM on Windows? Would doing this from Linux be more efficient? Perhaps my ATI drivers? I'm using the latest. My machine too slow? Well, it's not the fastest, but I'm only trying to play two clips at less than full-frame SD resolution... Should I forget about crossfading two clips at 720x576?... Perhaps not the most efficient codec?
Only 2 weeks to go before I have to exhibit my piece at a gallery. Is GEM not the way to go? vvvv? PiDiP? Jitter? What are your experiences?
Any ideas / advice would be much appreciated!
Thanks!
Vytis
Fourier resynthesis: saving / morphing between tables?
domien - I guess that for white noise the result of "morphing" or "crossfading" will probably sound very similar. So perhaps you are right.
... But what I'm thinking about is that the process of morphing should also affect frequencies inbetween. I've drawn this quick sketch to illustrate it:

Red curve is table1, Blue is table2, Black - transition. As you can see, it affects frequencies in between which I don't think is the case with crossfading.
Such morphing possibility would make PD a most powerful sound design platform for synthesising very complex sounds in a rather user-friendly way. I came to this conclusion when altering curves in real time, it produced some very realistic bird call sounds, car brake squeaks and creaks etc. I don't think that this can be achieved with regular crossfading.
Am I asking too much?
I'd like to take this opportunity to say that this forum is simply amazing! I've learnt so much in the last couple of weeks. It has encouraged me to actually start using PD for my sound design work. I'll certainly share my patches as soon as I develop something interesting.
Thanks guys!
Fourier resynthesis: saving / morphing between tables?
Claudius, this is indeed a very interesting patch with a very nice explanation inside.
@ Vytis : i might be wrong but isn't crossfading the same as "morphing" since each band (point) in each table is "amplified" more or less depending on the crossfade-slider, which goes from 0 to 1? Or how would you define morphing?
Fourier resynthesis: saving / morphing between tables?
@vytis said:
- But I'm not quite sure where you mean the original [tabreceive~ ] is in the resynthesis patch... [tabreceive~ $0-gain] in the fft-analysis window I assume? But where exactly do I connect those [*~ ] objects?
Try the attached, has crossfade slider, but you could equally use [line] to control the morphing.
General technique would be to:
1. fade from table 1 to table 2
2. load something new into table 1
3. fade from table 2 to table 1
4. load something new into table 2
and repeat
http://www.pdpatchrepo.info/hurleur/I03.resynthesis-crossfade.pd
Fft unpack
hi,
first of all, as its my first post on this forum, i think i should introduce myself : i am a french student in sound engineering and i have been introduced to pure data a few month ago.
I have good knowledge of audio theory and lot of practice to, but i am not that good at programming or mathematics, eventhoug i have notions...
so, here i go with my question.
i am trying to create a simple patch with two audio input between wich i want to manually crossfade to morph them. kind of a convolved crossfader in fact.
but my problem is : how can i unpack the data that comes out of the rfft~, as puredata seems to considere it is audio signal?
or am i missing something fundamental??
cheers,
pierre.
Multitrack Analysis Module
ha ha, nice idea.
i would go with feeding pure tones into the mixer. that way you can use the crossfader. if you just put noise into both channels, then you'd be crossfading noise->noise, which wouldn't really do anything.
for a 2 channel mixer, i'd go with 2 fairly seperate tones, say 200hz, and 2000hz
and feed those tones into the mixer..
then, take the audio output of the mixer, and run it through a couple of bandpass fllters with fairly sharp q values, that way you'd separate the two tines...then through an [env~] object to get the total level of each tone.
[bp~ 200 10]
|
[bp~ 200 10]
|
[env~]
then i would recommend using [dbtorms], which will convert the decibel output of [env~] into RMS, which is a bit easier to work with.
and then do some simple multiplications/divisions/additions/subtractions to scale the output of that into a nice range of values.
if you set up a patch and need some help, then let us know.


