Newsgroup: it.comp.os.linux.iniziare
Titolo: mpg321, sox e audio errato

Salve a tutti.
Ho una serie di mp3 di bassa qualità: 56 kbps e 22 khz.
Ho deciso di masterizzarli lo stesso.
Ho convertito gli mp3 in wav con l'opzione -wav di mpg321 (come ho
sempre fatto), ma xcdroast si rifiutava di masterizzare i file così
ottenuti.
In effetti erano sì file .wav, ma a 22 khz. Li ho allora convertiti a 44
khz, ma a questo punto xcdroast diceva "no preemp pad" e non
masterizzava.
Dopo una ricerca con google ho usato questa linea di comando per
la trasformazione mp3 -> wav:
mpg123 -s file.mp3 | sox -t raw -w -s -c 2 -r 44100 - -t wav file.wav
A questo punto xcdroast masterizzava, ma il risultato era un cd a
velocità doppia.
A questo punto domando: come si convertono in wav dei file mp3 a 56 kbps
e 22khz?
-- 
|f(x)-f(y)|<=L|x-y|
Per le risposte in mail, occhio all'antispam!

 e 22khz?
Linux MP3 CD Burning mini-HOWTO
potrebbe fare al caso tuo.
 5. If there are files with different characteristics, convert them to the
    above specs. For example, to convert file track01.wav to obtain sample
    rate 44.1 kHz, you could use:
         sox track01.wav -r 44100 track01-new.wav resample
ah, probabilmente devi masterizzare indicando a cdrecord l'opzione "-pad"
ciao 
fedro

          sox track01.wav -r 44100 track01-new.wav resample
Ma con la stringa di comando che ho postato prima:
mpg123 -s file.mp3 | sox -t raw -w -s -c 2 -r 44100 - -t wav file.wav
                                           ^^^^^^^^ 
usavo gią i 44100 Hz di campionamento.
Mi sfugge qualcosa?

 campionamento. Mi sfugge qualcosa?
fose il problema sta propio nell'opzione "-pad" da usare con cdrecord. non
mi ricordo dove l'ho letto... forse nello stesso howto che ti ho suggerito
nel messaggio precendente.
hai provato in questo modo?
fedro

 Mi sfugge qualcosa?
Si`, non hai messo l'effetto "resample".
-- 
 Ciao, Bianco.                         Reply to luca.bianco (at) 
tiscali.it
|--------[Powered by Debian GNU/Linux Sarge - 2.4.19 - AMD K6-200]--------|
|------------[Linux Registered User #287769 - Machine #169192]------------|

 
Se metto l'effetto resample ottengo solo dei file vuoti (in tutto una
ventina di file occupano 76k).
Comunque, non c'è bisogno di resamplare:
bash-2.05a$ file track01.wav
track01.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16
bit, stereo 44100 Hz
Sono già a 44khz.
Solo, sul CD vanno a velocità doppia :(


 Si`, non hai messo l'effetto "resample".
Ho provato ad aggiungere alla stringa di comando soprascritta l'effetto
resample, ma i file .wav che ottenevo, in *totale* (sono una ventina),
occupavano 76 kb :-/ Forse perchè in effetti non c'è niente da
"resamplare": sox lavoro su uno standard input, perchè il tutto è fatto
con una pipe.
Ho provato anche a tradurli in .wav senza usare resample e poi a
trattarli con il resample, ma sox mi diceva che la sorgente era già a 44
kHz (cosa onfermata dal comando file).
Poi ho avuto un intuizione: ho trasformato gli mp3 in wav con la solita
riga di comando, ma mettendo come rate 22050 Hz. Dopodichè ho applicato
il resample: il tutto funziona e xcdroast non mi segnala più errori.
Non so se c'è una spiegazione logica ai passi che ho seguito, oppure se
semplicemente prima non funzionava per dei bug di sox, comunque adesso
va.
Ciao e grazie.
