questão sobre como usar o sox para converter arquivos wav com parâmetros que mudam

1

Eu quero converter um arquivo wav (taxa de amostras 11400HZ e 2 canais) para outro arquivo wav, apenas alterando as taxas de amostragem e canal. O comando que eu uso é:

sox 1.wav -r 8000 -c 1 2.wav

1.wav pode jogar por 4 minutos, mas após a conversão, o comprimento do 2.wav é de apenas 25 segundos. Suponho que isso deva ser causado pela diminuição das taxas e canais de amostras. Eu tento o comando:

sox 1.wav 2.wav

O resultado é o comprimento de 1.wav e 2.wav é o mesmo.

Mas as taxas de amostragem e os canais precisam ser alterados no meu projeto. Se você sabe como fazer isso, por favor me dê uma mão. Obrigado ~

    
por gold_luck 14.06.2013 / 12:03

1 resposta

0

Responda a @Patrice Levesque:

mcc@mcc-Lenovo:~/test_pro$ sox --info -V255 longwav_11k.wav 
sox INFO formats: detected file format type 'wav'
sox DBUG wav: WAV Chunk fmt 
sox DBUG wav: WAV Chunk data
sox DBUG wav: Reading Wave file: Microsoft PCM format, 1 channel, 11025 samp/sec
sox DBUG wav:         22050 byte/sec, 2 block align, 16 bits/samp, 471682 data bytes
sox DBUG wav:         235841 Samps/chans

Input File     : 'longwav_11k.wav'
Channels       : 1
Sample Rate    : 11025
Precision      : 16-bit
Duration       : 00:00:21.39 = 235841 samples ~ 1604.36 CDDA sectors
File Size      : 472k
Bit Rate       : 176k
Sample Encoding: 16-bit Signed Integer PCM

Responda a @chirlu:

mcc@mcc-Lenovo:~/test_pro$ sox -V4 longwav_11k.wav -r 8000 -c 1 longwav_temp.wav 
sox:      SoX v14.4.1
time:     May 30 2013 10:34:23
uname:    Linux mcc-Lenovo 3.2.0-29-generic #46-Ubuntu SMP Fri Jul 27 17:03:23 UTC 2012 x86_64
compiler: gcc 4.6.3
arch:     1288 48 88 L OMP
sox INFO formats: detected file format type 'wav'
sox DBUG wav: WAV Chunk fmt 
sox DBUG wav: WAV Chunk data
sox DBUG wav: Reading Wave file: Microsoft PCM format, 1 channel, 11025 samp/sec
sox DBUG wav:         22050 byte/sec, 2 block align, 16 bits/samp, 471682 data bytes
sox DBUG wav:         235841 Samps/chans

Input File     : 'longwav_11k.wav'
Channels       : 1
Sample Rate    : 11025
Precision      : 16-bit
Duration       : 00:00:21.39 = 235841 samples ~ 1604.36 CDDA sectors
File Size      : 472k
Bit Rate       : 176k
Sample Encoding: 16-bit Signed Integer PCM
Endian Type    : little
Reverse Nibbles: no
Reverse Bits   : no

sox INFO sox: Overwriting 'longwav_temp.wav'
sox DBUG wav: Writing Wave file: Microsoft PCM format, 1 channel, 8000 samp/sec
sox DBUG wav:         16000 byte/sec, 2 block align, 16 bits/samp

Output File    : 'longwav_temp.wav'
Channels       : 1
Sample Rate    : 8000
Precision      : 16-bit
Duration       : 00:00:21.39 = 171132 samples ~ 1604.36 CDDA sectors
Sample Encoding: 16-bit Signed Integer PCM
Endian Type    : little
Reverse Nibbles: no
Reverse Bits   : no
Comment        : 'Processed by SoX'

sox DBUG rate: i/o=1.37813; 441:640 @ level 0
sox DBUG effects_i_dsp: 1 0.29345 1.5
sox DBUG effects_i_dsp: make_lpf(n=19199, Fc=0.00188523 beta=13.7461 dc-norm=1 scale=640)
sox DBUG rate: fir_len=30 phases=640 coef_interp=0 mult=1 size=154k
sox DBUG effects_i_dsp: 0.4655 0.020248 0.5
sox DBUG effects_i_dsp: make_lpf(n=409, Fc=0.479752 beta=12.8525 dc-norm=1 scale=1)
sox DBUG rate: fir_len=409 dft_length=4096 Fp=0.931 att=125 mult=1
sox DBUG rate: stage=0  pre_post=29 pre=0  preload=14
sox DBUG rate: stage=1  pre_post=0  pre=0  preload=204
sox INFO sox: effects chain: input        11025Hz  1 channels (multi) 16 bits 00:00:21.39
sox INFO sox: effects chain: rate          8000Hz  1 channels         32 bits 00:00:21.39
sox INFO sox: effects chain: dither        8000Hz  1 channels         16 bits 00:00:21.39
sox INFO sox: effects chain: output        8000Hz  1 channels (multi) 16 bits 00:00:21.39
sox WARN rate: rate clipped 5 samples; decrease volume?
sox WARN dither: dither clipped 4 samples; decrease volume?

Eu uso um arquivo de entrada longwav_11k.wav com 11025 taxas de amostragem e 1 canal. Obrigado!

    
por 17.06.2013 / 03:29

Tags