Support

If you have a problem or need to report a bug please email : support@dsprobotics.com

There are 3 sections to this support area:

DOWNLOADS: access to product manuals, support files and drivers

HELP & INFORMATION: tutorials and example files for learning or finding pre-made modules for your projects

USER FORUMS: meet with other users and exchange ideas, you can also get help and assistance here

NEW REGISTRATIONS - please contact us if you wish to register on the forum

Users are reminded of the forum rules they sign up to which prohibits any activity that violates any laws including posting material covered by copyright

phase vocoder to time stretch

For general discussion related FlowStone

phase vocoder to time stretch

Postby BobF » Sat Nov 14, 2015 1:21 am

PhaseVocoder.osm
(141.33 KiB) Downloaded 824 times

Hello gang,

Ok I have been hoping for this for a while now but no one has posted one. It is way over my head, but I have been reading that TIME STRETCHING can be done with the same or modified algorithm of a phase vocoder. Now I know there is at least one phase vocoder or maybe 2 around the forum. I will post the one I found, osm.

Is it possible one of you VERY smart ones out there could make a time stretch module from the phase vocoder that is posted or is it just not possible.

ok, many thanks! later then, BobF......
BobF
 
Posts: 598
Joined: Mon Apr 20, 2015 9:54 pm

Re: phase vocoder to time stretch

Postby tulamide » Sat Nov 14, 2015 2:31 am

I don't know how phase vocoding works, and I know that there are some fine algorithms out there for time stretching (for example élastique Pro), but I would probably use a simpler approach, if I were to do it in Flowstone:

1. Buffer a certain amount of audio.
2. Divide the buffer into slices. Each slice needs to have an overlay towards the previous and next slice.
3. Play the slices delayed by whatever factor you want.

Should work ok down to half speed (no limit upwards). Just the overlay needs to be finetuned. Example:

A slice is 0.2 s long. Additional overlay: 0.2s towards the previous slice, 0.2s towards next slice (total length 0.6s). First of those slices plays (starting at 0.2s). As soon as the main 0.2s are played, crossfade between this slice and the next one. After 0.2s the start of the next 0.2s block is at full volume and everything repeats.

I know that isn't working all too well, but at least it is stretching time. Of course if wou want to play faster, you have to condense the slices (playing only a part of the slice).

EDIT: Also, it is proven to be very efficient for drums. It is exactly what .rex files do.
"There lies the dog buried" (German saying translated literally)
tulamide
 
Posts: 2688
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: phase vocoder to time stretch

Postby martinvicanek » Sat Nov 14, 2015 7:50 am

Bob, that's actually one of my early attempts at a phase vocoder. :) I have spent considerable effort since, however I never posted an update because there was still somthing that could be improved. Well, there always is. :lol:
Anyway, since you broght up this thing I might just as well share with you guys what I have. The two schematics below are for pitch shifting and time stretching, respectively. Right now I am just throwing this at you without explanation, sorry. If you have questions don't hesitate to ask. If you find glitches please report. Enjoy!
Attachments
PhaseVocoderTimeStretch.fsm
(434.58 KiB) Downloaded 840 times
PhaseVocoderPitchShift.fsm
(320.89 KiB) Downloaded 847 times
User avatar
martinvicanek
 
Posts: 1322
Joined: Sat Jun 22, 2013 8:28 pm

Re: phase vocoder to time stretch

Postby tulamide » Sat Nov 14, 2015 2:42 pm

I love those moments, when my head turns red and I feel like an idiot :lol:
"There lies the dog buried" (German saying translated literally)
tulamide
 
Posts: 2688
Joined: Sat Jun 21, 2014 2:48 pm
Location: Germany

Re: phase vocoder to time stretch

Postby BobF » Sat Nov 14, 2015 5:07 pm

Hello martin,

Thanks a bunch! They both are nice, a few clicks and pops now and then. At least on my pc. I was hoping for something that could be put in the feedback loop of a delay though, so on each pass the sound would get faster and faster or of course slower and slower. Any ideas!

Thanks again though, they both will come in handy.

Later then, BobF.....
BobF
 
Posts: 598
Joined: Mon Apr 20, 2015 9:54 pm

Re: phase vocoder to time stretch

Postby Father » Tue Nov 17, 2015 1:35 am

martinvicanek the pitch shifter looks great. Is there a way to manipulate the timbre as well?
Father
 
Posts: 177
Joined: Thu Jan 09, 2014 5:48 pm

Re: phase vocoder to time stretch

Postby martinvicanek » Tue Nov 17, 2015 10:07 pm

tulamide wrote:I love those moments, when my head turns red and I feel like an idiot :lol:

Sorry, tulamide, it was not my intention to hurt. Your proposed method may work well, however if you use such long grains you might run into problems with doublets or misses, depending on the stretch factor. Haen't tried though.
BobF wrote:I was hoping for something that could be put in the feedback loop of a delay though, so on each pass the sound would get faster and faster or of course slower and slower. Any ideas!

Hmm, how do you want to do time stretching in real time? :?: Maybe some sort of audio triggered delay? It can't be continuous because if you playback faster than you put sound in, then at some point your delayed signal would actually be ahead of the source! :o . Or in the other case you would need infinite amount of memory because your lag would increase forever. Hmmm....
Father wrote:martinvicanek the pitch shifter looks great. Is there a way to manipulate the timbre as well?

Thanks. What exactly do you mean by "manipulate the timbre"? Of course you can apply any amount of filtering. If you mean format shifting, that's not so easy with this technique.
User avatar
martinvicanek
 
Posts: 1322
Joined: Sat Jun 22, 2013 8:28 pm

Re: phase vocoder to time stretch

Postby Father » Fri Nov 20, 2015 12:30 am

martinvicanek wrote:What exactly do you mean by "manipulate the timbre"? Of course you can apply any amount of filtering. If you mean format shifting, that's not so easy with this technique.

So the timbre or formant has nothing to do with pitch shifting and its a separate subject?
I was blown away when i tried a pitch shifter plugin on my master track and setting it -4 semi tone and increasing the formant/timbre. Its like instantly your track is mastered by an expert and everything is glued together and sounds like its coming from an expensive hardware with such punch and warmth and organic at the same time. its really magical. except the artifacts.
Im really interested on knowing whats happening to the signal that automatically opens up room clears the mid bass mud and adds punch and true warmth. Any ideas?
Father
 
Posts: 177
Joined: Thu Jan 09, 2014 5:48 pm


Return to General

Who is online

Users browsing this forum: adamszabo and 35 guests