[sdiy] Frequency shifted from BBD?

brianw brianw at audiobanshee.com
Sun Oct 27 23:22:50 CET 2024


The control system with ramp + triangle wave CV is very much the same as Shepard / Barberpole, but the end result is quite different, as you're probably aware. If you have a modular system that produces CV for a barberpole effect, then you could certainly reuse it for a BBD pitch shift (possibly with modifications to improve the effectiveness). The ramp feeds VCO pitch (Barberpole) or delay time (pitch shift) while the triangle controls a VCA-pair for crossfade.

In the barberpole effect, there's an illusion of constantly rising pitch. The pitch is not actually rising forever, because each VCO must eventually hit it's highest frequency and start over. The audio mix is perceived as constantly rising, though.

In the BBD pitch shift, there is no illusion. Any single channel actually has a pitch shift, but there's a potentially objectionable glitch, periodically. In this case, the crossfade merely avoids the glitch by fully attenuating the channel during the time that the glitch occurs.

Brian


On Oct 27, 2024, at 2:13 AM, S Ridley wrote:
> Isn't this just like applying Shepard / Barberpole to some BBDs, or am I missing something?
> 
> Steve
>   
> On Sun, 27 Oct 2024 at 04:49, Kylee Kennedy wrote:
>> Thanks for the insights Brian. 
>> Always great to brainstorm these weird circuit ideas here in this group. 
>> I also can't read the article you cited but it sounds similar to the idea I had where the BBDs are in parallel to the audio source and a scanner + VCAs circuit would go through the BBDs in round robin fashion. I was thinking four BBDs would be sufficient and it's interesting they mention just two and bouncing back and forth at the end of the 512 sample limit. 
>> 
>> I was thinking you'd have the next BBD in the scanner loop start recording halfway at 256 samples through the playback from the first BBD and the clock would always be the same rate during recording and then when the scanner gets to that BBD for playback it would shift to a second clock at the new pitch shift speed. Starting from halfway through the samples would allow more range to pitch up. Audio fade in may need a few samples delay before starting to clean up any pitch shifting glitches.
>> 
>> I might try to mock up a breadboard version to see how it sounds and or if it works at all as a pitch shifter. What could be an interesting mod is each scanner BBD step could have a different pitch which is an effect I like that's found on the H910/H949 Eventide effects.
>> 
>> Kylee
>> 
>> On Sat, Oct 26, 2024 at 2:07 AM Adam wrote:
>>> Wow, great find Brian! 
>>> I can't access the paper, but the abstract says it was presented at the 42nd convention, May 1972, and that
>>> "A demonstration will be given to illustrate the state of art in speech time compression-expansion.
>>> 
>>> I wonder if the demonstration was tape or BBD based? Maybe both?
>>> From your description it certainly seems to bring the BBD based scenario closer to the multiple tape-read-head systems capability
>>> 
>>> A
>>> 
>>> On 26 Oct 2024, at 2:56 PM, brian wrote:
>>>> On Oct 7, 2024, at 6:45 AM, Todd Sines wrote:
>>>>> [...] Varispeech II (cassette version of the Varispeech 27Y) which is more like a time stretcher, in that you can alter the speech but keep the pitch the same (in order to decipher fast-speaking conversations)
>>>>> https://obsoletetechnology.wordpress.com/repairs/lexicon-varispeech-27y/
>>>> 
>>>> Very interesting. This link lead to an AES paper from 1972 where the author described time compression and time expansion via BBD.
>>>> 
>>>> http://www.aes.org/e-lib/browse.cfm?elib=1793
>>>> 
>>>> I've never seen this technique used for BBD anywhere else, but the circuit actually counts the clocks and abruptly changes the rate when all the buckets are used. The BBD devices are used in parallel, where one is "recording" while the other is "playing" and then vice-versa. Furthermore, when the BBD is in "record" mode, it operates at a different clock rate than when that same BBD is in "playback" mode, but each mode has a steady clock for the counted number of cycles.
>>>> 
>>>> Thus, for a 512-stage BBD, the control circuits count exactly 512 clocks.
>>>> 
>>>> For "time compression" (pitching down), every 512 clocks, the output swaps between the two BBD chips. Meanwhile, the BBD that's not connected to the output is being clocked at a higher rate, so more than 512 clocks are issued, and some of the audio samples are lost because the output is not connected when those samples make it to the last bucket.
>>>> 
>>>> For "time expansion" (pitching up), every 512 clocks, the input (record mode) swaps between the two BBD chips. The BBD that's in output mode is running at a higher clock rate, so it would empty all the buckets. The clever trick in this mode is to connect the input to the output to make a little tape loop. That way, when the buckets are emptied of new material, the output continues playing old material. The clever part is that the input is only connected to the output when the BBD is in "play" mode, and is switched over to the live input when that BBD goes into "record" mode.
>>>> 
>>>> Seems like the BBD circuit described actually affects pitch in real time, while time compression or expansion would have to be altered by playing recorded material at a different speed using some other device, such that the BBD circuit can then restore the original pitch. I'm not sure why the author referred to this as time compression and time expansion, unless you're supposed to understand that it's only one part of the solution.
>>>> 
>>>> All of the BBD circuits that I'm familiar with provide a continuous clock, with input always connected and output always connected. Pitch shifting in this configuration is only seen by varying the clock over time, and that's usually small, contiguous changes in clock rate rather than an abrupt jump (well, except for the one abrupt jump in the ramp wave).
>>>> 
>>>> 
>>>> In a way, I suppose it's like comparing a BBD pitch shifter that operates via a VCO clock that's controlled by a ramp wave with and digital clock that's controlled by a square wave. The caveat is that the square wave method requires precise counting of clocks and abrupt synchronous switching of input and output connections, although that would be cheaper since no VCA are needed. The ramp wave method can completely ignore the precise number of clocks that happen to occur, and the transition between one BBD and the other can be handled by a smooth crossfade rather than an instantaneous switch.
>>>> 
>>>> The AES paper makes me think of a Chamberlin keyboard "sampler" that uses BBD chips instead of pieces of tape, and one that's constantly recording new samples onto the tapes in a way that playback occurs at different speeds. If there were a BBD large enough to hold 8 seconds of audio, you could make a very unique Chamberlin this way (even without the pitch change).
>>>> 
>>>> Brian Willoughby
>> 



More information about the Synth-diy mailing list