Signal modification(frequency). - Page 1
Forum section: electronics / projects

author: BlackFoxTom
author_rank: Newbie
timestamp: June 10, 2018, 10:17:21 pm
content: So I want to be able to essentially change frequency by "widening" and "narrowing" it.Well my eng isn't best. So let me try to say it different way also.Let's say signal take 1sec. I want to take that signal and make it for example into 0,5sec signal or for example 2sec signal. Effectively changing frequency.Also signal is supposed to be absolutely anything.Preferably something fully analogue, fully hardware based, real time.For what I need that? For audio synthesizer/controller.

author: MasterT
author_rank: Frequent Contributor
timestamp: June 10, 2018, 10:56:33 pm
content: Pitch shifting is right term, I think. Try google first, without specification - sampling rate, ADC resolution, your software skills - not possible to provide meaningful advise.

author: The Soulman
author_rank: Super Contributor
timestamp: June 10, 2018, 11:33:32 pm
content: Record on a tape recorder and playback at a different speed??

author: BlackFoxTom
author_rank: Newbie
timestamp: June 11, 2018, 12:15:22 am
content: Quote from: MasterT on June 10, 2018, 10:56:33 pmWell as I said preferably fully analog, hardware based.Software skills. Only theoretical at this point as I was not programming anything for quite few years already.Sampling rate and AC as I said I prefer analog circuit.And yes "pitch shifting" seem to be thing that I'm looking for.Question now is. Is it possible to do something like thishttp://www.technoblogy.com/show?1L02but using Bucked Brigade Device as it work essentially like sampler while being fully analogue.

author: JS
author_rank: Frequent Contributor
timestamp: June 11, 2018, 01:13:20 am
content: BBD is the only thing that comes to mind, fully analog delay line, if you sweep the clock signal will get out faster, you only get a few (analog) samples of the signal to work with and you only need a clock but you could do cascade multiple of those of the required time.There are a few guitar pedals working like this.A chorus, that pitch the signal up and down, here is an schematic for you to have an example on how to work with it. If you use a ramp generator for the clock source it will do what you want. but in steps, starts doing what you want till the ramp ends.http://www.tonepad.com/getFile.asp?id=101Uses an analog BBD MN3007http://www.experimentalistsanonymous.com/diy/Datasheets/MN3007.pdfAnd a dedicated clock generator MN3101http://www.experimentalistsanonymous.com/diy/Datasheets/MN3101.pdfAn alternative is a digital delay chip, which operates similar to the BBD but with digital sampling. You don't need to do any programing or nothing like that, you just adjust external values and the thing do its thing. An example of this is the PT2399, here is the datasheet.http://www.princeton.com.tw/Portals/0/Product/PT2399_1.pdfand here a circuit as example, it just does the delay, not the modulation:http://www.tonepad.com/getFile.asp?id=98JS

author: ejeffrey
author_rank: Super Contributor
timestamp: June 11, 2018, 03:10:52 am
content: Recording on a tape and playback at different speed is probably the only "reasonable" fully analog way to do it over more than a fraction of a second. You could do that in quasi-real time by running the same tape past two heads at different speeds with some mechanism in the middle with variable slack. Obviously your ability to do it in real-time will be limited by the speed difference. Pitch shifting _without_ changing the duration is much more challenging.Really though, this is a job for digital. It's nothing to do digitally,

author: jazz
author_rank: Contributor
timestamp: June 11, 2018, 07:35:39 am
content: Would maybe afrequency mixerdo what you want to do? And aring modulatorin particular, since you mention synthesizers? Or am I misunderstanding your requirements?You would need some LO to set the amount of frequency shift of course, but everything could be analog.

author: hamster_nz
author_rank: Super Contributor
timestamp: June 11, 2018, 08:03:01 am
content: Analog techniques usually move frequencies +/- a fixed number of Hz. Although useful for keeping the bandwidth of a signal the same it isn't very nice for audio as harmonic relationships between frequencies are not maintained....Is anybody aware of any analog way to multiply frequencies of a signal other than to record and play back at a different speed (possibly overlapping snippets to preserve duration)?

author: mark03
author_rank: Frequent Contributor
timestamp: June 11, 2018, 03:55:37 pm
content: As ejeffrey pointed out, the OP's stated requirement to "take a 1 sec signal and make it 0.5 sec or 2 sec" obviously cannot be performed in real time, because you would either accumulate or lose time as you go. So he needs to clarify whether he wants time stretching or pitch shifting, which are two different things.Pitch shifting, especially by large factors, is a surprisingly difficult problem and remains an active research area. Google "phase vocoder" for a start. I was interested in methods to compress a wide spectrum into a narrower one, in real time, for a bat receiver. So, e.g., I want to shift and compress a 20-100 kHz band into, say, 0-10 kHz. There may be some cutting-edge DSP techniques capable of this, but they are highly proprietary ($$$) and I wasn't able to find much in the open literature.

author: BlackFoxTom
author_rank: Newbie
timestamp: June 11, 2018, 05:03:42 pm
content: Well most probably I want "pitch shifter"Albeit what's is difference between pitch and time stretching. As pitch shifters seem to work by changing time.

author: Bassman59
author_rank: Super Contributor
timestamp: June 11, 2018, 05:12:28 pm
content: Quote from: BlackFoxTom on June 11, 2018, 05:03:42 pmPitch shifting changes the note (frequency) without changing the tempo of the song.Time stretching changes the tempo without changing the notes (pitch, key).

author: Zero999
author_rank: Super Contributor
timestamp: June 11, 2018, 05:17:19 pm
content: Quote from: BlackFoxTom on June 11, 2018, 05:03:42 pmA pitch shifter does't usually work by changing time. They shift the pitch by a fixed offset, by heterodyning, which involves multiplying the signal with a fixed frequency to get upper and lower side-bands and removing the lower side-band.It seems like you want to increase the frequency by a certain percentage, which is different. As mentioned above, it can be done by recording it and playing it back at a different speed, but that won't work in real time: the only way to do that is with digital signal processing.

author: mark03
author_rank: Frequent Contributor
timestamp: June 11, 2018, 05:28:42 pm
content: I disagree with the last two posts, but I guess it all comes down to definitions. To me, time stretching generally refers to the simple speeding up or slowing down of a recording, which results in change of pitch also. Speeding up or slowing down without changing the pitch (like the speed control on youtube) could also be called time stretching, I guess. I prefer to think of it as speeding up or slowing down the recording, followed by pitch shifting to bring the pitches back to where they were.To me "pitch shifting" implies the use of a phase vocoder or something similar, *not* heterodyning. I think pitch shifting has the connotation that harmonic relationships will be preserved. But maybe I am just familiar with the usage in music circles?Anyway, to answer the OPs question more directly, yes, a range of 0.5x to 2x can be achieved with only moderate loss of quality, especially if we are talking about speech. But you need a fancy DSP algorithm, so, no analog solution AFAIK.

author: emece67
author_rank: Frequent Contributor
timestamp: June 11, 2018, 07:15:01 pm
content: .

author: BlackFoxTom
author_rank: Newbie
timestamp: June 14, 2018, 05:27:12 pm
content: Well essentially analog pitch shifter