hello everybody,
maybe sounds absurd:
is it possible to cancel an whole signal of an mic input through phase-canceling?
if yes, how can i do dat in pd?
thanks a lot, yohannes
multiply the mic signal by -1 using [*~ -1], then add it back to the original signal using [+~]
d.
yohannes wrote:
is it possible to cancel an whole signal of an mic input through phase-canceling?
Hello Pd Folks!!!
I need a little help....
in general the object [s foo] sends values or messages to a global variable named "foo"... is there in Pd a way to make the variable "foo" private ??? (working only in a subpatch)...
Sorry for the wrong object
mbutubuntu wrote:
Hello Pd Folks!!!
I need a little help....
in general the object [s foo] sends values or messages to a global variable named "foo"... is there in Pd a way to make the variable "foo" private ??? (working only in a subpatch)...
use creation arguments in the subpatch.
[pd mysubpatch some_creation_argument]
[s $1-foo]
[r $1-foo]
d.
or something like that. mbutubuntu wrote:
Sorry for the wrong object
mbutubuntu wrote:
Hello Pd Folks!!!
I need a little help....
in general the object [s foo] sends values or messages to a global variable named "foo"... is there in Pd a way to make the variable "foo" private ??? (working only in a subpatch)...
Derek Holzer wrote:
use creation arguments in the subpatch.
[pd mysubpatch some_creation_argument]
[s $1-foo]
[r $1-foo]
d.
the above might be confusing, because you cannot send creation argumets to subpatches, only to externals. you also cannot separate the namespace of the parent patch and the subpatch. but you can create abstractions and they will have their own kind of namespace. if you use $0 inside an abstraction (or parent patch) it will be substituted by a unique number.
[s $0-foo]
[r $0-foo]
it is easy to create an abstraction. just save a patch with a name "abstracton123.pd" and then you can create a new object (or even several) inside your patch [abstraction123] with your abstraction.
the [s $0-foo] - [r $0-foo] will then only send inside the abstractions, and not from one instance of the abstraction to another, because every abstraction was given another $0 substitute, which makes the sender/receiver unique.
marius.
or something like that. mbutubuntu wrote:
Sorry for the wrong object
mbutubuntu wrote:
Hello Pd Folks!!!
I need a little help....
in general the object [s foo] sends values or messages to a global variable named "foo"... is there in Pd a way to make the variable "foo" private ??? (working only in a subpatch)...
Simply put, all variables are global. In objects (not messages), use $0 as part of the variable name to give it an unique identifier. Within your patch, anywhere you use $0, it is the same number.
$0 generated when the patch is created and is different for every instance of a patch. There's lots of good stuff in the archives on this subject and I think "locality" tutorials.
Chuck
On Mon, Feb 23, 2009 at 5:40 PM, mbutubuntu mbutubuntu@yahoo.it wrote:
Hello Pd Folks!!!
I need a little help....
in general the object [s foo] sends values or messages to a global variable named "foo"... is there in Pd a way to make the variable "foo" private ??? (working only in a subpatch)...
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
simple answers for apparently simple questions! ;-)
d.
Frank Barknecht wrote:
Hallo, Derek Holzer hat gesagt: // Derek Holzer wrote:
multiply the mic signal by -1 using [*~ -1], then add it back to the original signal using [+~]
Or multiply by 0. :)
Ciao
On Tue, 24 Feb 2009, Frank Barknecht wrote:
Derek Holzer hat gesagt: // Derek Holzer wrote:
multiply the mic signal by -1 using [*~ -1], then add it back to the original signal using [+~]
Or multiply by 0. :)
Then just don't connect the wire.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal, Québec
I don't understand how multiplying the amplitude of an input by 0
cancels phase. It results in zero output which is pretty silent but
it doesn't cancel phase.
Regardless of the initial post, phase canceling of a signal can be
pretty interesting when one want to 'filter out' an original sound
and only keep the result of some processing that was applied to it.
multiplying by 0 wouldn't achieve that - would it?
On Feb 24, 2009, at 11:24 PM, Mathieu Bouchard wrote:
On Tue, 24 Feb 2009, Frank Barknecht wrote:
Or multiply by 0. :)
Then just don't connect the wire.
Hallo, Lao Yu hat gesagt: // Lao Yu wrote:
I don't understand how multiplying the amplitude of an input by 0
cancels phase. It results in zero output which is pretty silent but
it doesn't cancel phase.
What Derek used as an example was phase cancellation of a signal with *itself* which is the same a muting it so I felt invited to a joke. Of course if you have different signals and subtract them from each other or shift their phases you usually get a non-zero result.
Frank
Mathieu Bouchard schrieb:
On Tue, 24 Feb 2009, Frank Barknecht wrote:
Derek Holzer hat gesagt: // Derek Holzer wrote:
multiply the mic signal by -1 using [*~ -1], then add it back to the original signal using [+~]
Or multiply by 0. :)
Then just don't connect the wire.
my fafourit solution is mathieus. :-P but then i can put the mic off. anyway. dereks hint is what i was searching for.
thanks everybody yo
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal, Québec
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
On Tue, 24 Feb 2009, yohannes wrote:
Mathieu Bouchard schrieb:
On Tue, 24 Feb 2009, Frank Barknecht wrote:
Derek Holzer hat gesagt: // Derek Holzer wrote:
multiply the mic signal by -1 using [*~ -1], then add it back to the original signal using [+~]
Or multiply by 0. :)
Then just don't connect the wire.
but then i can put the mic off.
Yeah. So after that you can turn pd off, turn the computer off, leave the room, go outside and play.
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal, Québec
Mathieu Bouchard wrote:
On Tue, 24 Feb 2009, yohannes wrote:
Mathieu Bouchard schrieb:
On Tue, 24 Feb 2009, Frank Barknecht wrote:
Derek Holzer hat gesagt: // Derek Holzer wrote:
multiply the mic signal by -1 using [*~ -1], then add it back to the original signal using [+~]
Or multiply by 0. :)
Then just don't connect the wire.
but then i can put the mic off.
Yeah. So after that you can turn pd off, turn the computer off, leave the room, go outside and play.
Best idea yet! Pick up a harmonica at the corner shop on the way.
D.
On Thu, 26 Feb 2009 14:11:01 +0200 Derek Holzer derek@umatic.nl wrote:
Mathieu Bouchard wrote:
On Tue, 24 Feb 2009, yohannes wrote:
Mathieu Bouchard schrieb:
On Tue, 24 Feb 2009, Frank Barknecht wrote:
Derek Holzer hat gesagt: // Derek Holzer wrote:
multiply the mic signal by -1 using [*~ -1], then add it back to the original signal using [+~]
Or multiply by 0. :)
Then just don't connect the wire.
but then i can put the mic off.
Yeah. So after that you can turn pd off, turn the computer off, leave the room, go outside and play.
Best idea yet! Pick up a harmonica at the corner shop on the way.
Meh, musical instruments are for losers
http://uk.youtube.com/watch?v=e7WNk14Wtcg http://uk.youtube.com/watch?v=QifM6Uz8taY http://uk.youtube.com/watch?v=Da_il-xinuU http://uk.youtube.com/watch?v=hkaje21f7po http://uk.youtube.com/watch?v=WAjOG8yZz_M http://uk.youtube.com/watch?v=tIZac-AT2LY http://uk.youtube.com/watch?v=yfWbFqKLonU http://uk.youtube.com/watch?v=iUaDLCjcS_Q http://uk.youtube.com/watch?v=1tHrUUVWDJ4
Hi, yohannes
No, it's not absurd. Tell us a little bit more about your application. I am out of the project game for now, but have some long term goals for solving this sort of problem.
For example, you send a sound out your speakers. You want to recieve a new sound from the room on microphone that is not the sound coming from the speakers.
This becomes a system identification problem. You need to find the delay between the speakers and microphone and the transfer function (a filter) between speakers and mic. Then, you digitally apply the filter and delay to your signals as they would be played and subtract that copy from the signal received by the mic.
Chuck
On Mon, Feb 23, 2009 at 4:02 PM, yohannes THIS_IS_POP@web.de wrote:
hello everybody,
maybe sounds absurd:
is it possible to cancel an whole signal of an mic input through phase-canceling?
if yes, how can i do dat in pd?
thanks a lot, yohannes
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
yes,i find it also not an absurd question. I had build a loop machine, and i did want to phase cancel the sound is coming out of the speakers to be able recording and play again new stuff over that loop in "realtime" (overdubbing). But as far as i understand it is a really complex thing to do so as chuck allready mentioned. But someone build allready a kind of "feedback canceller" or is it simply not possible in the real world? Like, it's the best way simply EQ'ing your Soundsystem to have the best result?
all the best, moritz
On Mon, Feb 23, 2009 at 7:19 PM, Charles Henry czhenry@gmail.com wrote:
Hi, yohannes
No, it's not absurd. Tell us a little bit more about your application. I am out of the project game for now, but have some long term goals for solving this sort of problem.
For example, you send a sound out your speakers. You want to recieve a new sound from the room on microphone that is not the sound coming from the speakers.
This becomes a system identification problem. You need to find the delay between the speakers and microphone and the transfer function (a filter) between speakers and mic. Then, you digitally apply the filter and delay to your signals as they would be played and subtract that copy from the signal received by the mic.
Chuck
On Mon, Feb 23, 2009 at 4:02 PM, yohannes THIS_IS_POP@web.de wrote:
hello everybody,
maybe sounds absurd:
is it possible to cancel an whole signal of an mic input through phase-canceling?
if yes, how can i do dat in pd?
thanks a lot, yohannes
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
hi,
mrz schrieb:
yes,i find it also not an absurd question. I had build a loop machine, and i did want to phase cancel the sound is coming out of the speakers to be able recording and play again new stuff over that loop in "realtime" (overdubbing). But as far as i understand it is a really complex thing to do so as chuck allready mentioned. But someone build allready a kind of "feedback canceller" or is it simply not possible in the real world?
it's possible: http://en.wikipedia.org/wiki/Echo_cancellation
but I'm no expert at this...
perhaps there's some reusable code of asterisk or other telephony software with implementations of cancellation mechanisms someone could...
Martin
On Feb 25, 2009, at 1:00 AM, mrz wrote:
yes,i find it also not an absurd question. I had build a loop machine, and i did want to phase cancel the sound
is coming out of the speakers to be able recording and play again
new stuff over that loop in "realtime" (overdubbing). But as far as
i understand it is a really complex thing to do so as chuck allready
mentioned. But someone build allready a kind of "feedback canceller"
or is it simply not possible in the real world? Like, it's the best way simply EQ'ing your Soundsystem to have the
best result?
Best to do as bands do for singers or any other instrument when
feedback is not desired... use a cardioid microphone with low
sensitivity, and make the desired input signal much closer to the
microphone than the speakers. If possible, don't face the speakers
into the microphone at all. Even to achieve *some* feedback
cancellation is very difficult, and true cancellation is impossible
(except maybe theoretically for a totally known electro-acoustical
system, with same number of emitters and receivers). Feedback
avoidance is slightly more possible (e.g. by small frequency shifts).
At best, feedback suppression by narrow band filtering can only get
you a few extra db of gain before feedback pops up somewhere else.
Nick
all the best, moritz
On Mon, Feb 23, 2009 at 7:19 PM, Charles Henry czhenry@gmail.com
wrote: Hi, yohannesNo, it's not absurd. Tell us a little bit more about your application. I am out of the project game for now, but have some long term goals for solving this sort of problem.
For example, you send a sound out your speakers. You want to recieve a new sound from the room on microphone that is not the sound coming from the speakers.
This becomes a system identification problem. You need to find the delay between the speakers and microphone and the transfer function (a filter) between speakers and mic. Then, you digitally apply the filter and delay to your signals as they would be played and subtract that copy from the signal received by the mic.
Chuck
On Mon, Feb 23, 2009 at 4:02 PM, yohannes THIS_IS_POP@web.de wrote:
hello everybody,
maybe sounds absurd:
is it possible to cancel an whole signal of an mic input through phase-canceling?
if yes, how can i do dat in pd?
thanks a lot, yohannes
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
-- . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . http://www.myspace.com/moritzwettstein . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Pd-list@iem.at mailing list UNSUBSCRIBE and account-management -> http://lists.puredata.info/listinfo/pd-list
Le lundi 23 février 2009 à 23:02 +0100, yohannes a écrit :
hello everybody,
maybe sounds absurd:
is it possible to cancel an whole signal of an mic input through phase-canceling?
if yes, how can i do dat in pd?
Hi yohannes,
maybe you are looking for something like an acoustic echo canceller. Speex has one:
http://www.speex.org/docs/manual/speex-manual/node4.html#SECTION004500000000...
maec~.c is a more than ugly very first attempt for an external quickly written to give speex a try. I had quite good results, close to 20dB rejection, with only one micro and only one speaker. Rejection is close to nothing with 2 speakers. As I need a good rejection with 5 speakers I gave up.
All the best, Joël