Re: [PD] Real-time frequency filtering and analysis
without having read your mail completely, i'd suggest having a look at the [fiddle~] external, that ships with pd. roman On Tue, 2007-03-27 at 23:20 -0500, Jared wrote: Summary: I'm interested in capturing audio through a microphone and, in real time, determining which frequency range (from a set range of frequencies) has the maximum level. This would be used to determine which note is loudest out three notes. More info: Hello! I was hoping to get some direction for a project I'm working on. I'm also searching the mailing list archives, but I apologize in advance if I ask questions that have been answered elsewhere. If you think my question has already been answered, I would appreciate any advice on how to better search the archives to find what I'm looking for. I am creating a staged adaptation of a 'Choose Your Own Adventure' novel. For more information, check out the Wikipedia article at http://en.wikipedia.org/wiki/Choose_your_own_adventure The important thing to know is there will be a branching storyline, decided by audience voting. For the voting, I plan for everyone in the audience to have a small xylophone with 3. Each note will correspond to a voting choice presented by the cast. I'm going to have microphones positioned around the theatre to capture the xylophones and pipe them to a computer. What I'd then like to do through PD is determine which note was 'loudest,' meaning the most people cast it for their vote. The voting choices will be displayed by a projector connected to the computer running PD. Thus, I'm interested in either piping the level information to another program (PowerPoint or something else) to display which vote won. I'd also be interested in doing this directly through PD, if it's possible. I'm working my way through the PD tutorials included in the program itself, but would appreciate any advice or suggestions on keywords I can use to search the archives. Please let me know if there is any information I can add to make things more clear. Thanks in advance for all your help. -Jared ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Real-time frequency filtering and analysis
What about filterbank in unauthorized ? wouldnt that be an approach as well ? Am 28.03.2007 um 10:23 schrieb Roman Haefeli: without having read your mail completely, i'd suggest having a look at the [fiddle~] external, that ships with pd. roman On Tue, 2007-03-27 at 23:20 -0500, Jared wrote: Summary: I'm interested in capturing audio through a microphone and, in real time, determining which frequency range (from a set range of frequencies) has the maximum level. This would be used to determine which note is loudest out three notes. More info: Hello! I was hoping to get some direction for a project I'm working on. I'm also searching the mailing list archives, but I apologize in advance if I ask questions that have been answered elsewhere. If you think my question has already been answered, I would appreciate any advice on how to better search the archives to find what I'm looking for. I am creating a staged adaptation of a 'Choose Your Own Adventure' novel. For more information, check out the Wikipedia article at http://en.wikipedia.org/wiki/Choose_your_own_adventure The important thing to know is there will be a branching storyline, decided by audience voting. For the voting, I plan for everyone in the audience to have a small xylophone with 3. Each note will correspond to a voting choice presented by the cast. I'm going to have microphones positioned around the theatre to capture the xylophones and pipe them to a computer. What I'd then like to do through PD is determine which note was 'loudest,' meaning the most people cast it for their vote. The voting choices will be displayed by a projector connected to the computer running PD. Thus, I'm interested in either piping the level information to another program (PowerPoint or something else) to display which vote won. I'd also be interested in doing this directly through PD, if it's possible. I'm working my way through the PD tutorials included in the program itself, but would appreciate any advice or suggestions on keywords I can use to search the archives. Please let me know if there is any information I can add to make things more clear. Thanks in advance for all your help. -Jared ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list ___ Der frühe Vogel fängt den Wurm. Hier gelangen Sie zum neuen Yahoo! Mail: http://mail.yahoo.de ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/ listinfo/pd-list ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Real-time frequency filtering and analysis
fft~ + pique /doc/4.fft.examples sinedecomposer.pd might give you some ideas On Tue, 27 Mar 2007 23:20:31 -0500 Jared [EMAIL PROTECTED] wrote: Summary: I'm interested in capturing audio through a microphone and, in real time, determining which frequency range (from a set range of frequencies) has the maximum level. This would be used to determine which note is loudest out three notes. More info: Hello! I was hoping to get some direction for a project I'm working on. I'm also searching the mailing list archives, but I apologize in advance if I ask questions that have been answered elsewhere. If you think my question has already been answered, I would appreciate any advice on how to better search the archives to find what I'm looking for. I am creating a staged adaptation of a 'Choose Your Own Adventure' novel. For more information, check out the Wikipedia article at http://en.wikipedia.org/wiki/Choose_your_own_adventure The important thing to know is there will be a branching storyline, decided by audience voting. For the voting, I plan for everyone in the audience to have a small xylophone with 3. Each note will correspond to a voting choice presented by the cast. I'm going to have microphones positioned around the theatre to capture the xylophones and pipe them to a computer. What I'd then like to do through PD is determine which note was 'loudest,' meaning the most people cast it for their vote. The voting choices will be displayed by a projector connected to the computer running PD. Thus, I'm interested in either piping the level information to another program (PowerPoint or something else) to display which vote won. I'd also be interested in doing this directly through PD, if it's possible. I'm working my way through the PD tutorials included in the program itself, but would appreciate any advice or suggestions on keywords I can use to search the archives. Please let me know if there is any information I can add to make things more clear. Thanks in advance for all your help. -Jared ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Real-time frequency filtering and analysis
Hi Jared, On Tue, 2007-03-27 at 23:20 -0500, Jared wrote: Summary: I'm interested in capturing audio through a microphone and, in real time, determining which frequency range (from a set range of frequencies) has the maximum level. This would be used to determine which note is loudest out three notes. [snip] For the voting, I plan for everyone in the audience to have a small xylophone with 3. Each note will correspond to a voting choice presented by the cast. I'm going to have microphones positioned around the theatre to capture the xylophones and pipe them to a computer. What I'd then like to do through PD is determine which note was 'loudest,' meaning the most people cast it for their vote. You could try using a multiband filter and some envelope followers, but I don't think you will be able to measure the voting very accurately using this technique. To get slightly better results, you might want to take into account the effect of frequency on perceptual loudness (cf. Zwicker et al). You should also take into account whether or not the various votes are synchronised in time by taking measurements over some time frame, and averaging the results. There are also other issues to consider such as the fact that not all of the voters will strike the xylophone equally hard, the resonance/absorption qualities of the room, and establishing the correct relative contribution from each microphone. Basically, this is a difficult problem to solve, but if all you need is a 'rough idea' of how many votes have been cast, you might be OK. Jamie ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Real-time frequency filtering and analysis
filtering in general may not be the best approach because some of your partials from one xylophone note will overlap with other note's partials. They are inharmonic complex tones, which are not so easy to predict you'll probably have to measure the frequencies of each note of your xylophone to know exactly what the spectrum is like. In terms of averaging like Jamie suggested... suppose you want to compute the expectation of the power spectral density. You would take the fft of the auto-covariance of your recieved signal, divided by the number of blocks in your time frame. (dividing by a number of blocks will not in general be necessary, when all you need to do is find a peak, with pique~ as before) This will give you a very clear/accurate peak, without much jitter/noise to clean up. Chuck ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Real-time frequency filtering and analysis
Airhorns. -Chuckk On 3/28/07, Charles Henry [EMAIL PROTECTED] wrote: filtering in general may not be the best approach because some of your partials from one xylophone note will overlap with other note's partials. They are inharmonic complex tones, which are not so easy to predict you'll probably have to measure the frequencies of each note of your xylophone to know exactly what the spectrum is like. In terms of averaging like Jamie suggested... suppose you want to compute the expectation of the power spectral density. You would take the fft of the auto-covariance of your recieved signal, divided by the number of blocks in your time frame. (dividing by a number of blocks will not in general be necessary, when all you need to do is find a peak, with pique~ as before) This will give you a very clear/accurate peak, without much jitter/noise to clean up. Chuck ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- http://www.badmuthahubbard.com ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list
Re: [PD] Real-time frequency filtering and analysis
you could also check sigmund~ it will give you a list of frequencies and amplitudes in order of amplitude. J I think this just reinforces what everyone is saying about the errors. Either you make it into a crazy competition to vote by banging your note the loudest and the mostest, or you accept a margin of error. As Jamie says the intensity and frequencies are all going to vary and interact. attached patch intented to investigate that, it makes little clusters of 10 votes (idealised sinewave xylophone) separated in time by a value between 0 and 100ms at one of 3 frequencies chosen at random. What you wont get in reality is the notes being exactly the same frequency, there should be a fair degree of variance. When I used a focused noise source to approximate the xylophones inharmonic spectrum I couldn't see any correlation above chance. YMMV, especially if you tweak the windows/blocks . I got better initial results with the filter bank approach I think. On Wed, 28 Mar 2007 09:16:23 -0500 Charles Henry [EMAIL PROTECTED] wrote: filtering in general may not be the best approach because some of your partials from one xylophone note will overlap with other note's partials. They are inharmonic complex tones, which are not so easy to predict you'll probably have to measure the frequencies of each note of your xylophone to know exactly what the spectrum is like. In terms of averaging like Jamie suggested... suppose you want to compute the expectation of the power spectral density. You would take the fft of the auto-covariance of your recieved signal, divided by the number of blocks in your time frame. (dividing by a number of blocks will not in general be necessary, when all you need to do is find a peak, with pique~ as before) This will give you a very clear/accurate peak, without much jitter/noise to clean up. Chuck ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list -- next part -- A non-text attachment was scrubbed... Name: fftbincount-harness-pings.pd Type: application/octet-stream Size: 39247 bytes Desc: not available Url : http://lists.puredata.info/pipermail/pd-list/attachments/20070329/f2b9456a/attachment.obj -- next part -- A non-text attachment was scrubbed... Name: fbank-harness-pings.pd Type: application/octet-stream Size: 36448 bytes Desc: not available Url : http://lists.puredata.info/pipermail/pd-list/attachments/20070329/f2b9456a/attachment-0001.obj -- ___ PD-list mailing list PD-list@iem.at to manage your subscription (including un-subscription) see http://lists.puredata.info/listinfo/pd-list End of PD-list Digest, Vol 24, Issue 133 ___ PD-list@iem.at mailing list UNSUBSCRIBE and account-management - http://lists.puredata.info/listinfo/pd-list