Real-time digital audio reverberation system
AssigneeInternational Business Machines Corporation
InventorsRonald H. Jones, Jr., Bruce D. Jobse
Life of this patent
Estimating the term…
Abstract
A software reverberator system produces a sequence of "reverberated" samples from an input digital word sequence where each word in the input sequence comprises a digitized sample of an original analog audio signal. The invention generates the reverberated samples by adding together several scaled and delayed input words to produce a corresponding reverberated output word. The resulting reverberated output word stream can be converted to analog form in sequence to produce a reverberated version of the original audio signal. The delays are produced by clocking the input words through multi-stage first-in, first-out buffers with a number of stages selected to give the desired delay.
Claims20
An audio signal processor for generating a reverberated digital word stream at an output from a sequential stream of input digital words, each of the input digital words comprising a digitized audio sample, the audio processor comprising:
- a first first-in, first-out buffer having an input for receiving the input digital words, a first number of stages, wherein each stage stores one of the digital words, a first timing mechanism for clocking the input digital words through the first first-in, first-out buffer at a constant rate and an output for producing first delayed words corresponding to audio samples delayed by a time interval taken for the input digital words to pass through the first number of stages;
- a second first-in, first-out buffer having an input for receiving the input digital words, a second number of stages, wherein each stage stores one of the digital words, a second timing mechanism for clocking the input digital words through the second first-in, first-out buffer at a constant rate and an output for producing second delayed words corresponding to audio samples delayed by a time interval taken for the input digital words to pass through the second number of stages;
- a first digital multiplier responsive to the input digital words for multiplying the input digital words by a first adjustable coefficient;
- a second digital multiplier connected to the second first-in, first-out buffer for multiplying the second delayed words by a second adjustable coefficient;
- a first digital adder responsive to the input digital words, the first delayed words, the second delayed words and feedback words for generating first sum output words;
- a third first-in, first-out buffer having an input for receiving the first sum output words, a third number of stages, wherein each stage stores one of the first sum output words, a third timing mechanism for clocking the first sum output words through the third first-in, first-out buffer at a constant rate and an output for producing intermediate words corresponding to the first sum output words delayed by a time interval taken for the first sum output words to pass through the third number of stages;
- a third digital multiplier responsive to the intermediate words for multiplying the intermediate words by a third adjustable coefficient to produce the feedback words;
- and
- output apparatus for transmitting the first sum output words to the output as the reverberated digital word stream.
A computer system comprising:
- a central processing unit for coordinating the operation of the computer;
- a memory having a plurality of memory locations for storing data and programs for controlling the central processing unit;
- a clock for generating timing signals;
- an audio signal source responsive to an analog audio signal for generating a sequential stream of input digital words, each of the input digital words comprising
- a digitized audio sample;
- a first first-in, first-out buffer having an input for receiving the input digital words, a first number of stages, wherein each stage stores one of the digital words, a first timing mechanism responsive to the timing signals for clocking the input digital words through the first first-in, first-out buffer at a constant rate and an output for producing first delayed words corresponding to audio samples delayed by a time interval taken for the input digital words to pass through the first number of stages;
- a second first-in, first-out buffer having an input for receiving the input digital words, a second number of stages, wherein each stage stores one of the digital words, a second timing mechanism responsive to the timing signals for clocking the input digital words through the second first-in, first-out buffer at a constant rate and an output for producing second delayed words corresponding to audio samples delayed by a time interval taken for the input digital words to pass through the second number of stages;
- a first digital multiplier responsive to the input digital words for multiplying the input digital words by a first adjustable coefficient;
- a second digital multiplier connected to the second first-in, first-out buffer for multiplying the second delayed words by a second adjustable coefficient;
- a first digital adder responsive to the input digital words, the first delayed words, the second delayed words and feedback words for generating first sum output words;
- a third first-in, first-out buffer having an input for receiving the first sum output words, a third number of stages, wherein each stage stores one of the first sum output words, a third timing mechanism responsive to the timing signals for clocking the first sum output words through the third first-in, first-out buffer at a constant rate and an output for producing intermediate words corresponding to the first sum output words delayed by a time interval taken for the first sum output words to pass through the third number of stages;
- a third digital multiplier responsive to the intermediate words for multiplying the intermediate words by a third adjustable coefficient to produce the feedback words;
- and
- output apparatus for transmitting the first sum output words to the output as a reverberated digital word stream.
A method for generating a reverberated digital word stream at an output from a stream of input digital words, each of the input digital words comprising a digitized audio sample, the method comprising the steps of:
- A. delaying the input digital words by a first time interval to produce first delayed words corresponding to audio samples delayed by a first time interval;
- B. delaying the input digital words for a second time interval to produce second delayed words corresponding to audio samples delayed by a second time interval;
- C. adding the input digital words, the first delayed words, the second delayed words and feedback words for generating first sum output words;
- D. delaying the first sum output words for producing the feedback words or responding to the first sum output words delayed by a third time interval;
- and
- E. transmitting the first sum output words to the output as the reverberated digital word stream.
A computer program product for use with a graphics display device, said computer program product comprising:
- a computer usable medium having computer readable program code means embodied in said medium for generating a reverberated output digital word stream at an output from an input digital word stream, each of the input digital words comprising a digitized audio sample, the computer program product comprising:
- a means for delaying the input digital words by a first time interval to produce first delayed words corresponding to audio samples delayed by the first time interval;
- a means for delaying the input digital words by a second time interval to produce second delayed words corresponding to audio samples delayed by the second time interval;
- a means for adding the input digital words, the first delayed words, the second delayed words and feedback words to generate first sum output words;
- a means for delaying the first sum output words by a third time interval to produce the feedback words corresponding to the first sum output words delayed by the third time interval;
- and
- a means for causing a computer to transmit the first sum output words to the output as the reverberated digital word stream.
A computer program product comprising:
- a computer usable medium having computer readable program code means embodied in said medium for generating a reverberated output digital word stream at an output from an input digital word stream, each of the input digital words comprising a digitized audio sample, the computer program product comprising:
- a means for delaying the input digital words by a first time interval to produce first delayed words corresponding to audio samples delayed by the first time interval;
- a means for delaying the input digital words by a second time interval to produce second delayed words corresponding to audio samples delayed by the second time interval;
- a means for adding the input digital words, the first delayed words, the second delayed words and feedback words to generate first sum output words;
- a means for delaying the first sum output words by a third time interval to produce the feedback words corresponding to the first sum output words delayed by the third time interval;
- and
- a means for causing a computer to transmit the first sum output words to the output as the reverberated digital word stream.
Dependencies are inferred from the claim text.