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

sound freezer

DSP related issues, mathematics, processing and techniques

Re: sound freezer

Postby tester » Sat Mar 01, 2014 11:07 am

Generally it's difficult to say. I suppose however - randomizing phase per each replay gives more fluency to the frozen playback. Do you have some schematic that shows it? I have no experience with playing with such stuff.

I will play with Martin's solution in a few days, because some infection pulled me down a little bit.
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
tester
 
Posts: 1786
Joined: Wed Jan 18, 2012 10:52 pm
Location: Poland, internet

Re: sound freezer

Postby tester » Sat Mar 01, 2014 7:13 pm

martinvicanek wrote:Basically it records the incoming audio in a ring buffer. Upon pressing the Freeze button, it stops recording and proceeds playing back the last two wave cycles in a pitch-synchronous, cross-faded leapfrog scheme. It sounds a bit sterile so you might want to add some modulation to the "frozen" playback for musical effect.
Have fun!


Is it possible to make it less sterile? If I understood correctly, these two wavecycles you mention - are two different cycles (one after another), just measured per minus-to-plus zero crossing? If yes - then how to add few cycles between crossfade or how to make this crossfade per few more cycles? Ah, found the answer for the first part of my question; it looks it may sound better when adding a multiplier before the function generator.

But your idea is cool anyway - useful for other purposes (like finding by ear, new single-cycle wave shapes in audio signal).
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
tester
 
Posts: 1786
Joined: Wed Jan 18, 2012 10:52 pm
Location: Poland, internet

Re: sound freezer

Postby tester » Sun Mar 02, 2014 9:26 pm

Martin, I'm having here a weird problem, and it appears that this comes from the freezing component of yours (i.e. not the pitch tracking part). I have on my schematic multiple filters that use mono4 philosophy, and when your freezer is connected - (as a single mono pass-through, as it is) - filters stop to work (I'm getting error on 2nd channel). I suspect there is some problem within the mono/mono4 connections you made. When I disconnect your freezer, and move signal directly - then filters start to work again. Could you check it on your side?
Last edited by tester on Mon Mar 03, 2014 12:16 pm, edited 1 time in total.
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
tester
 
Posts: 1786
Joined: Wed Jan 18, 2012 10:52 pm
Location: Poland, internet

Re: sound freezer

Postby martinvicanek » Mon Mar 03, 2014 9:58 am

Tester, thanks for pointing that out. It was a silly division by zero bug in the freq/period conversion which propagated into the audio path and jammed your recursive filters. Fixed now in my original post.
User avatar
martinvicanek
 
Posts: 1328
Joined: Sat Jun 22, 2013 8:28 pm

Re: sound freezer

Postby tester » Mon Mar 03, 2014 12:16 pm

Thank you! Now it works.
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
tester
 
Posts: 1786
Joined: Wed Jan 18, 2012 10:52 pm
Location: Poland, internet

Re: sound freezer

Postby Perfect Human Interface » Tue Mar 04, 2014 9:03 am

martinvicanek wrote:Anyway, here is a setup for freezing single-pitched sound. Basically it records the incoming audio in a ring buffer. Upon pressing the Freeze button, it stops recording and proceeds playing back the last two wave cycles in a pitch-synchronous, cross-faded leapfrog scheme. It sounds a bit sterile so you might want to add some modulation to the "frozen" playback for musical effect.
Have fun!


Hell if I won't use this for evil plans :o
Perfect Human Interface
 
Posts: 643
Joined: Sun Mar 10, 2013 7:32 pm

Re: sound freezer

Postby tester » Mon Apr 28, 2014 1:03 am

Quick question.

I'd like to store frozen loop into a wavetable. How?
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
tester
 
Posts: 1786
Joined: Wed Jan 18, 2012 10:52 pm
Location: Poland, internet

Re: sound freezer

Postby KG_is_back » Thu May 01, 2014 3:39 pm

Turn the loop into a float array using mono to float array primitive and input that to the wavetable primitive which will create the wavetable for you. you could possibly use ruby to extract the float array if you need sample precise performance.
KG_is_back
 
Posts: 1196
Joined: Tue Oct 22, 2013 5:43 pm
Location: Slovakia

Re: sound freezer

Postby tester » Thu May 01, 2014 4:44 pm

Mono to float prim depends on green ticker, thus it may not work well. But I think there is other way, sample accurate. I have somewhere a converter (thakns again Jay), that makes able to convert audio files (as far I remember it worked with wavs) into scaled text files. That's said - the first tep would be to make a wave writter (I think I have somewhere working example), to make a temp wave file, and second step would be then to use that temp for conversion. Or maybe there is a simpler way to use directly - mono to mem and mem to float array? (or - how to use ruby for that?)
Need to take a break? I have something right for you.
Feel free to donate. Thank you for your contribution.
tester
 
Posts: 1786
Joined: Wed Jan 18, 2012 10:52 pm
Location: Poland, internet

Re: sound freezer

Postby KG_is_back » Thu May 01, 2014 5:09 pm

something like this should work to create the wavetable. However you'll have to input the indexes too (probably can be send as output from your looper).
Attachments
REC and create wavetable.fsm
(401 Bytes) Downloaded 1319 times
KG_is_back
 
Posts: 1196
Joined: Tue Oct 22, 2013 5:43 pm
Location: Slovakia

PreviousNext

Return to DSP

Who is online

Users browsing this forum: No registered users and 30 guests