From: Jan Panteltje on
On a sunny day (Sun, 28 Mar 2010 19:05:29 +0100) it happened "markp"
<map.nospam(a)f2s.com> wrote in <819jqmFptsU1(a)mid.individual.net>:
>I think the best solution would be to do what another poster suggested, use
>an A2D on a processor, sample into a buffer and play the buffer back through
>a D2A at twice the sampled rate. This would of cource last 1/2 the time, so
>you would need to 'repeat' sections. To get the distortion down you'd choose
>zero crossing points in the waveform and repeat small sections. It's going
>to add some distortion but that's the best I can come up with.
>
>Mark.

I think:
audio -> ADC -> n byte audio sample -> fft -> modify spectral components -> reverse fft -> DAC -> audio

A bit like I do here for video:
http://panteltje.com/panteltje/subtitles/lowpass.html
From: markp on

"Jan Panteltje" <pNaonStpealmtje(a)yahoo.com> wrote in message
news:hoo722$orr$1(a)news.albasani.net...
> On a sunny day (Sun, 28 Mar 2010 19:05:29 +0100) it happened "markp"
> <map.nospam(a)f2s.com> wrote in <819jqmFptsU1(a)mid.individual.net>:
>>I think the best solution would be to do what another poster suggested,
>>use
>>an A2D on a processor, sample into a buffer and play the buffer back
>>through
>>a D2A at twice the sampled rate. This would of cource last 1/2 the time,
>>so
>>you would need to 'repeat' sections. To get the distortion down you'd
>>choose
>>zero crossing points in the waveform and repeat small sections. It's going
>>to add some distortion but that's the best I can come up with.
>>
>>Mark.
>
> I think:
> audio -> ADC -> n byte audio sample -> fft -> modify spectral
> components -> reverse fft -> DAC -> audio
>
> A bit like I do here for video:
> http://panteltje.com/panteltje/subtitles/lowpass.html

Interesting. However it's the time taken to do this that might kill it.
There can't be too much delay from signal in to signal out, so rules out a
micro. I like your approach though...

Mark.


From: Don Klipstein on
In article <819jqmFptsU1(a)mid.individual.net>, markp wrote:
>
>"�Leo�" <leo2100(a)gmail.com> wrote in message
>news:307f95c4-a330-43b9-a98a-bc2a033e7ead(a)g10g2000yqh.googlegroups.com...
>On 26 mar, 12:23, �Leo� <leo2...(a)gmail.com> wrote:
>> > I want to make a circuit that takes a guitar input signal, and then
>>> outputs a signal with fundamental and 2nd order harmonic with the same
>>> level (or arbitrary levels, I want to amplify the two components at
>>> will).
>>>
>>> I figured that there are various ways to do this, but I'm trying to do
>>> it all analog if possible (since it usually produces more pleasant
>>> sounds). Plus there are already commercial digital octave doublers,
>>> and the ones that are analog come as ring modulators (they add more
>>> components to the signal). The frequency range is 20hz-20khz at worst,
>>> the available DC source is 9V.
>>>
>>> I'm trying to get the 2nd order harmonic by taking the input signal
>>> through a emitter follower stage, biased so the amplification is
>>> sufficiently non-linear to produce 2nd order harmonic distortion (and
>>> a little 3rd). Then to isolate the 2nd harmonic, I thought of
>>> inverting the input through another signal path and then adding the
>>> two signals, and hope that the fundamental frequency cancels out.
>>> While trying to do this in spice, I realized that I'm going to have to
>>> have some kind of AGC so the two signals hace the same component of
>>> the fundamental. Designing the AGC has been rather complicated so far.
>>> So the idea that i had is getting a little bit complicated.
>>>
>>> Any help or new ideas would be appreciated.
>
>>> In response to all:
>
>>Thanks for the ideas. Some of them are much too complicated or
>>expensive for the scope I was aiming at.
>
>>The simple techniques with spurious frequencys are already
>>implemented, and the circuits are available on the web, so I don't
>>think I would try reinventing the wheel.
>
>>I was just trying to implement my original idea, but it doesn't seem
>>to be an easy task and I don't think it would be reliable in the end.
>
>>So, could I arrive to the conclusion that getting a 2nd order harmonic
>>from an audio source is not a trivial task (with as little distortion
>>as possible)?
>
>I think the best solution would be to do what another poster suggested, use
>an A2D on a processor, sample into a buffer and play the buffer back through
>a D2A at twice the sampled rate. This would of cource last 1/2 the time, so
>you would need to 'repeat' sections. To get the distortion down you'd choose
>zero crossing points in the waveform and repeat small sections. It's going
>to add some distortion but that's the best I can come up with.

I did try this on my own, and achieved results that a guitarist friend
of mine told me resembled those of some commercial products:

Precision full wave rectifier. Use a DC blocking capacitor and the
following resistor to ground afterwards.

A precision fullwave rectifier is an op-amp circuit that I expect to be
easy enough to find on the web.

The main faults here:

1: Waveform changes, making the "harmonic recipe" closer to that of a
mildly to moderately lowpass-filtered sawtooth wave. Not that this is
always bad... :) But it does makes things different...

2: The half-cycles are usually non-identical, leaving some remnant of
odd multiples of the original fundamental frequency. There is not always
sensation of "up 1 octave".

(I base this on when I was "most-into" guitar effects in the early
1990's.)

- Don Klipstein (don(a)misty.com)
From: Tony on
On Sun, 28 Mar 2010 22:06:18 +0100, "markp" <map.nospam(a)f2s.com> wrote:

>
>"Jan Panteltje" <pNaonStpealmtje(a)yahoo.com> wrote in message
>news:hoo722$orr$1(a)news.albasani.net...
>> On a sunny day (Sun, 28 Mar 2010 19:05:29 +0100) it happened "markp"
>> <map.nospam(a)f2s.com> wrote in <819jqmFptsU1(a)mid.individual.net>:
>>>I think the best solution would be to do what another poster suggested,
>>>use
>>>an A2D on a processor, sample into a buffer and play the buffer back
>>>through
>>>a D2A at twice the sampled rate. This would of cource last 1/2 the time,
>>>so
>>>you would need to 'repeat' sections. To get the distortion down you'd
>>>choose
>>>zero crossing points in the waveform and repeat small sections. It's going
>>>to add some distortion but that's the best I can come up with.
>>>
>>>Mark.
>>
>> I think:
>> audio -> ADC -> n byte audio sample -> fft -> modify spectral
>> components -> reverse fft -> DAC -> audio
>>
>> A bit like I do here for video:
>> http://panteltje.com/panteltje/subtitles/lowpass.html
>
>Interesting. However it's the time taken to do this that might kill it.
>There can't be too much delay from signal in to signal out, so rules out a
>micro. I like your approach though...
>
>Mark.

ALL the (many) solutions that work use a micro of some sort. You play back short segments
of recorded signal at 2x speed, each about as long as the wavelength of the common
fundamental (so they overlap), choosing the transitions between segments where the signal
value and at least the first few derivatives match. A few ms of average delay is never a
problem (same as standing a few feet further from the speaker). Most modern multi-fx boxes
have decent pitch-shift algorithms along these lines, and the specialist ones like
Digitech, TC Helicon etc go to far greater lengths to make it work better.

Tony
From: markp on

"Tony" <tony(a)nowhere.com> wrote in message
news:dni0r5heom1vl55lutp3rc0u07qbo09jk2(a)4ax.com...
> On Sun, 28 Mar 2010 22:06:18 +0100, "markp" <map.nospam(a)f2s.com> wrote:
>
>>
>>"Jan Panteltje" <pNaonStpealmtje(a)yahoo.com> wrote in message
>>news:hoo722$orr$1(a)news.albasani.net...
>>> On a sunny day (Sun, 28 Mar 2010 19:05:29 +0100) it happened "markp"
>>> <map.nospam(a)f2s.com> wrote in <819jqmFptsU1(a)mid.individual.net>:
>>>>I think the best solution would be to do what another poster suggested,
>>>>use
>>>>an A2D on a processor, sample into a buffer and play the buffer back
>>>>through
>>>>a D2A at twice the sampled rate. This would of cource last 1/2 the time,
>>>>so
>>>>you would need to 'repeat' sections. To get the distortion down you'd
>>>>choose
>>>>zero crossing points in the waveform and repeat small sections. It's
>>>>going
>>>>to add some distortion but that's the best I can come up with.
>>>>
>>>>Mark.
>>>
>>> I think:
>>> audio -> ADC -> n byte audio sample -> fft -> modify spectral
>>> components -> reverse fft -> DAC -> audio
>>>
>>> A bit like I do here for video:
>>> http://panteltje.com/panteltje/subtitles/lowpass.html
>>
>>Interesting. However it's the time taken to do this that might kill it.
>>There can't be too much delay from signal in to signal out, so rules out a
>>micro. I like your approach though...
>>
>>Mark.
>
> ALL the (many) solutions that work use a micro of some sort. You play back
> short segments
> of recorded signal at 2x speed, each about as long as the wavelength of
> the common
> fundamental (so they overlap), choosing the transitions between segments
> where the signal
> value and at least the first few derivatives match. A few ms of average
> delay is never a
> problem (same as standing a few feet further from the speaker). Most
> modern multi-fx boxes
> have decent pitch-shift algorithms along these lines, and the specialist
> ones like
> Digitech, TC Helicon etc go to far greater lengths to make it work better.
>
> Tony

Indeed, the A2D and D2A approach only adds a few ms, but taking the fft,
changing co-efficients and taking the inverse fft is going to take somewhat
longer than that with a micro...

Mark.


First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5 6 7 8 9
Prev: accuracy of BCV62
Next: PCI express