Re: Generating x frames of silence wav.

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

 




create a raw file with silence. for example 1 second, 16 bit
mono at 44100 Hz:

dd if=/dev/zero of=silence.raw bs=44100 count=2

and convert it to wav:

sox -t raw -r 44100 -s -w -c 1 silence.wav


On Wed, 31 May 2006, Alex Polite wrote:

I need to programatically pad a wav file with x frames of silence. I
figure the best way of doing is to generate a wav file containing x
frames of silence and concatenate the generated file with the
original. Problem is I don't know how to generate the silence.

The method I'm using now feels kind of backwards. I generate two sine
waves that are phase shifted in relation to one another and then I mix
them so that they cancel one another out.


sox -t nul /dev/null  /tmp/tmp1.wav synth $secs sine create 1 0 0
sox -t nul /dev/null /tmp/tmp2.wav synth $secs sine create 1 0 50
soxmix /tmp/tmp1.wav /tmp/tmp2.wav /tmp/tmp3.wav
sox /tmp/tmp3.wav -r 8000 /tmp/silence.wav


I guess there's a more elegant way of doing obtaining the same result?
I'd also like to be able to specify the amount of silence to be
generated in frames rather than in seconds.

--
Alex Polite
http://flosspick.org - finding the right open source




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

  Powered by Linux