Is there a way to generate a bit stream, and output it directly to a single stage simple RC filter, and the output be pink noise up to some cutoff, say 20khz? This would seem to be a very easy, cheap, simple way to make a pink noise generator. I assume you cant output the square-wave bitstream directly to a transducer (speaker, etc..) since it will contain the dominant switching frequency, (right?)
pre-made bitstream, pink noise with only one RC filter?
Started by ●March 17, 2006
Reply by ●March 18, 20062006-03-18
acannell@wwc.com wrote:> Is there a way to generate a bit stream, and output it directly to a > single stage simple RC filter, and the output be pink noise up to some > cutoff, say 20khz? This would seem to be a very easy, cheap, simple way > to make a pink noise generator. I assume you cant output the > square-wave bitstream directly to a transducer (speaker, etc..) since > it will contain the dominant switching frequency, (right?)Pink noise rolls off at 3 dB/octave. An RC rolloff is 6 dB/octave. Sorry! Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Reply by ●March 18, 20062006-03-18
in article Ru-dndl0tJ__vYHZRVn-iA@rcn.net, Jerry Avins at jya@ieee.org wrote on 03/18/2006 09:59:> acannell@wwc.com wrote: >> Is there a way to generate a bit stream, and output it directly to a >> single stage simple RC filter, and the output be pink noise up to some >> cutoff, say 20khz? This would seem to be a very easy, cheap, simple way >> to make a pink noise generator. I assume you cant output the >> square-wave bitstream directly to a transducer (speaker, etc..) since >> it will contain the dominant switching frequency, (right?) > > Pink noise rolls off at 3 dB/octave. An RC rolloff is 6 dB/octave. Sorry!suppose the "bit stream" had a power spectrum that rose at +3 dB/octave, then the RC might be just what the doctor (or M.S.) ordered. there is also the sinc() rolloff that would have to be compensated for (if the bit rate is low enough). essentially this is doable, but it is a design problem. you have to decide on the sample rate (ca. 44.1 kHz?) and where the corner of the RC filter is (below 20 Hz?). that along with the sinc filter of the implicit ZOH on the bit output tells us what the spectrum has to be in the discrete-time world. then design a white noise generator (linear congruence or something), filter it, then do sigma-delta conversion (that might also affect the frequency response and need to be comepensated) to convert to a bit stream. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
Reply by ●March 18, 20062006-03-18
robert bristow-johnson wrote:> in article Ru-dndl0tJ__vYHZRVn-iA@rcn.net, Jerry Avins at jya@ieee.org wrote > on 03/18/2006 09:59: > > >>acannell@wwc.com wrote: >> >>>Is there a way to generate a bit stream, and output it directly to a >>>single stage simple RC filter, and the output be pink noise up to some >>>cutoff, say 20khz? This would seem to be a very easy, cheap, simple way >>>to make a pink noise generator. I assume you cant output the >>>square-wave bitstream directly to a transducer (speaker, etc..) since >>>it will contain the dominant switching frequency, (right?) >> >>Pink noise rolls off at 3 dB/octave. An RC rolloff is 6 dB/octave. Sorry! > > > suppose the "bit stream" had a power spectrum that rose at +3 dB/octave, > then the RC might be just what the doctor (or M.S.) ordered. there is also > the sinc() rolloff that would have to be compensated for (if the bit rate is > low enough). > > essentially this is doable, but it is a design problem. you have to decide > on the sample rate (ca. 44.1 kHz?) and where the corner of the RC filter is > (below 20 Hz?). that along with the sinc filter of the implicit ZOH on the > bit output tells us what the spectrum has to be in the discrete-time world. > then design a white noise generator (linear congruence or something), filter > it, then do sigma-delta conversion (that might also affect the frequency > response and need to be comepensated) to convert to a bit stream.A few years ago, you posted the details of a 3 db/octave filter for making pink noise that covered the 3 decades of the nominal audio band. wouldn't that be the most straightforward approach? Jerry -- Engineering is the art of making what you want from things you can get. �����������������������������������������������������������������������
Reply by ●March 19, 20062006-03-19
in article dpmdnbiOm-S9XoHZRVn-gg@rcn.net, Jerry Avins at jya@ieee.org wrote on 03/18/2006 21:34:> robert bristow-johnson wrote: >> in article Ru-dndl0tJ__vYHZRVn-iA@rcn.net, Jerry Avins at jya@ieee.org wrote >> on 03/18/2006 09:59: >> >> >>> acannell@wwc.com wrote: >>> >>>> Is there a way to generate a bit stream, and output it directly to a >>>> single stage simple RC filter, and the output be pink noise up to some >>>> cutoff, say 20khz? This would seem to be a very easy, cheap, simple way >>>> to make a pink noise generator. I assume you cant output the >>>> square-wave bitstream directly to a transducer (speaker, etc..) since >>>> it will contain the dominant switching frequency, (right?) >>> >>> Pink noise rolls off at 3 dB/octave. An RC rolloff is 6 dB/octave. Sorry! >> >> >> suppose the "bit stream" had a power spectrum that rose at +3 dB/octave, >> then the RC might be just what the doctor (or M.S.) ordered. there is also >> the sinc() rolloff that would have to be compensated for (if the bit rate is >> low enough). >> >> essentially this is doable, but it is a design problem. you have to decide >> on the sample rate (ca. 44.1 kHz?) and where the corner of the RC filter is >> (below 20 Hz?). that along with the sinc filter of the implicit ZOH on the >> bit output tells us what the spectrum has to be in the discrete-time world. >> then design a white noise generator (linear congruence or something), filter >> it, then do sigma-delta conversion (that might also affect the frequency >> response and need to be comepensated) to convert to a bit stream. > > A few years ago, you posted the details of a 3 db/octave filter for > making pink noise that covered the 3 decades of the nominal audio band.this was mentioned, among other methods, at http://www.firstpr.com.au/dsp/pink-noise/ . just for information purposes.> wouldn't that be the most straightforward approach?perhaps, once you really get the target well defined. i am still not sure exactly what it is. something like: 1/sqrt(f) = |H(f)| * sinc(f/Fs) * |1/(1 + j*2*pi*f*R*C)| but maybe something about the sigma-delta conversion (remember the OP wants a bit stream) needs to be tossed into the mix. -- r b-j rbj@audioimagination.com "Imagination is more important than knowledge."
Reply by ●August 28, 20062006-08-28
>in article dpmdnbiOm-S9XoHZRVn-gg@rcn.net, Jerry Avins at jya@ieee.orgwrote>on 03/18/2006 21:34: > >> robert bristow-johnson wrote: >>> in article Ru-dndl0tJ__vYHZRVn-iA@rcn.net, Jerry Avins at jya@ieee.orgwrote>>> on 03/18/2006 09:59: >>> >>> >>>> acannell@wwc.com wrote: >>>> >>>>> Is there a way to generate a bit stream, and output it directly toa>>>>> single stage simple RC filter, and the output be pink noise up tosome>>>>> cutoff, say 20khz? This would seem to be a very easy, cheap, simpleway>>>>> to make a pink noise generator. I assume you cant output the >>>>> square-wave bitstream directly to a transducer (speaker, etc..)since>>>>> it will contain the dominant switching frequency, (right?) >>>> >>>> Pink noise rolls off at 3 dB/octave. An RC rolloff is 6 dB/octave.Sorry!>>> >>> >>> suppose the "bit stream" had a power spectrum that rose at +3dB/octave,>>> then the RC might be just what the doctor (or M.S.) ordered. there isalso>>> the sinc() rolloff that would have to be compensated for (if the bitrate is>>> low enough). >>> >>> essentially this is doable, but it is a design problem. you have todecide>>> on the sample rate (ca. 44.1 kHz?) and where the corner of the RCfilter is>>> (below 20 Hz?). that along with the sinc filter of the implicit ZOHon the>>> bit output tells us what the spectrum has to be in the discrete-timeworld.>>> then design a white noise generator (linear congruence or something),filter>>> it, then do sigma-delta conversion (that might also affect thefrequency>>> response and need to be comepensated) to convert to a bit stream. >> >> A few years ago, you posted the details of a 3 db/octave filter for >> making pink noise that covered the 3 decades of the nominal audioband.> >this was mentioned, among other methods, at >http://www.firstpr.com.au/dsp/pink-noise/ . just for informationpurposes.> >> wouldn't that be the most straightforward approach? > >perhaps, once you really get the target well defined. i am still notsure>exactly what it is. something like: > > > 1/sqrt(f) = |H(f)| * sinc(f/Fs) * |1/(1 + j*2*pi*f*R*C)| > >but maybe something about the sigma-delta conversion (remember the OPwants>a bit stream) needs to be tossed into the mix. > >-- > >r b-j rbj@audioimagination.com > >"Imagination is more important than knowledge." > > >For some valuable information about this topic please visit: http://www.firstpr.com.au/dsp/pink-noise/ For a simple approach using several 1st order IIR filters whose outputs are summed up to build the pink-noise signal refer to header Filtering white noise to make it pink talking about 2 IIR filters designed by Paul Kellet. Much luck at implementation, Robert