Re: remove known sample from audio

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



>First of all, by "sample", you mean "signal",
>not some one sample value, right?

Jan, Thanks for your comments. That wikipedia Spill article describes my issue very well. That is, you got my request exactly right (despite my signal vs sample terminology hassle). Anyway, I have two mics (https://www.piksu.com/eps/tmp/mic1.wav  and  https://www.piksu.com/eps/tmp/mic2.wav) and audible spill in both. I want to remove the spill from both. I am able to remove the spill in this specific case (with outstanding results) for example for mic1.wav with commands
sox mic2.wav mic2id.wav pad 0.0115 0 vol -0.13
sox -m -v 1 mic1.wav -v 1 mic2id.wav mic1clean.wav stat
i.e. by inverting the other mic and mixing that _at suitable_ point in time and suitable power to the signal to be cleaned. The problem is that finding those values ("point in time" 0.0115 and power/"volume" -0.13) is cumbersome. Basically, I am after a command to find one given signal embedded in another given signal. Finding means finding the starting point in time and the volume of the to-be-removed signal.
regards, Mikk00


On Tue, Sep 25, 2018 at 11:10 PM Jan Stary <hans@xxxxxxxx> wrote:
On Sep 25 12:26:36, molkko@xxxxxxxxx wrote:
> What is the best way to subtract a known sample from given audio i.e.
> extract/reconstruct the original.wav from final.wav when final.wav has been
> created with commands:
>
> sox knownsample.wav knownsample_delay_gain.wav pad <X> 0 vol <Y>
> sox -m original.wav knownsample_delay_gain.wav final.wav

First of all, by "sample", you mean "signal",
not some one sample value, right?

> original.wav is not anymore available. knownsample.wav and final.wav are
> available.

Do you also have knownsample_delay_gain.wav ?

> pad delay and the vol parameter are known _roughly_ (X =~10ms,
> Y=~0.1)

So you want to reconstruct original.wav from the mix
AND one of the originals - that's quite different than reconstructing
from just the mix.wav (which I doubt would be possible).

> PS1, I can reconstruct the original with the process below but this method
> is very cumbersome:
> repeat {
> come up with some guessed X and Y
> sox knownsample.wav knownsample_delay_gain.wav pad <X> 0 vol -<Y> // is
> also inverted
> sox -m -v 1 original.wav -v 1 knownsample_delay_gain.wav final.wav stat
> } until RMS amplitude reported by stat has reached local minimum

You said you no longer have original.wav, but you are using it here.
So what's there to reconstruct?

> PS2, The original problem is a two musical instruments recorded
> simultaneously in the same space. They have their own mics but the other
> instrument is audible in each recording. I want to remove the "wrong
> instrument" from each recording and have clean audio for both instruments.

https://en.wikipedia.org/wiki/Spill_(audio)
This should be your starting paragraph, not PS2.

So show us the files: the mix (final.wav) and
the non-delayed bleeding instrument (knownsample.wav).
Also, name them more plainly (guitar, trumpet, mix - or whatever).

It will be much easier to help you then.


        Jan



_______________________________________________
Sox-users mailing list
Sox-users@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/sox-users


--
Terveisin, Mikko
+358-40 506 6146

_______________________________________________
Sox-users mailing list
Sox-users@xxxxxxxxxxxxxxxxxxxxx
https://lists.sourceforge.net/lists/listinfo/sox-users

[Index of Archives]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Photo Sharing]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux