[ Thread Index |
Date Index
| More lists.tuxfamily.org/carrefourblinux Archives
]
From: "D. Lambert" <lambdomi@xxxxxxxxx>
Subject: [CBLX] sox
Date: Sat, 12 Dec 2009 19:42:07 +0100
> Bonjour,
>
> J'essaie d'utiliser "sox" afin de rassembler plusieurs petit fichiers en un.
> Je procède comme ceci :
> sox src1.wav src2.wav ... si j'en mets plus de 2, je reçois un message
> d'erreur, qui est le suivant :
>
> ________________________________________
> Script started on sam 12 déc 2009 19:31:09 CET
> dominique@unknown0002448cdb3d:/tmp$ sox src1.wav src2.wav src3.wav src4..wav src5
> .wav src6.wav src7.wav fichier.wav
> sox sox: Input files must have the same sample-rate
> sox sox: Input files must have the same # channels
> exit
>
> Script done on sam 12 déc 2009 19:33:38 CET
> ________________________________________
>
> Faut-il ajouter un paramètre dans la ligne de commande ?
Si je comprends bien l'erreur ça ne me semble pas
suffisant. Il semble que tes fichiers .wav n'aient pas tous
le même échantillonage (voire pas le même nombre de canaux.)
Or il semble également que sox ne convertisse pas à la
volée. D'ailleurs, en vertu de quel critère devrait-il alors
convertir ? Tout mettre au format du premier fichier de la
liste ? C'est un choix mais il n'a rien de canonique et voilà
pourquoi, sans doute, sox ne le fait pas.
Donc il semble qu'il te faille d'abord uniformiser les
formats de tes fichiers. La commande
$ file srcx.wav
devrait te donner l'échantillonage 8 16 ou 24 bits, et la
fréquence, 48000 96 000 192 0000 ! (Euh si tu es en 24 bits
192 kHZ avec ton chips intel hda c'est quand-même assez
surfait ! Pour mémoire les CD sont en 16 bits 44,1 kHz.).
Bon extrait du manuel de sox :
>>> -- Man Sox
Input File Combining
SoX's input combiner can combine multiple files using one of
four different methods: `concatenate', `sequence', `mix', or
`merge'. The default method is `sequence' for play, and
`concatenate' for rec and sox.
For all methods other than `sequence', multiple input files
must have the same sampling rate; if necessary, separate SoX
invocations can be used to make sampling rate adjustments
prior to combining.
If the `concatenate' combining method is selected (usually,
this will be by default) then the input files must also have
the same number of channels. The audio from each input will
be concatenated in the order given to form the output file.
>>> -- End Man Sox
L'extrait exact qui semble confirmer ce que je dis plus haut et
expliquer le message d'erreur :
-- must have the same sampling rate; if necessary, separate SoX
invocations can be used to make sampling rate adjustments
prior to combining. ---
Enfin ce qu'il faut faire : -- if necessary, separate SoX
invocations can be used to make sampling rate adjustments
prior to combining.---
Clair non ! ??????
Donc utiliser sox pour modifier la vitesse
d'échantillonage et ou la taille de l'échantillon.
Nouvel extrait du man :
>>> -- Man Sox
Input & Output File Format Options
These options apply to the input or output file whose name
they immediately precede on the command line and are used
mainly when working with headerless file formats or when
specifying a format for the output file that is different to
that of the input file.
-c, --channels CHANNELS
The number of audio channels in the audio file. This
may be 1, 2, or 4; for mono, stereo, or quad audio. To
cause the output file to have a different number of
channels than the input file, include this option with
the output file options. If the input and output file
have a different number of channels then the mixer
effect must be used. If the mixer effect is not
specified on the command line it will be invoked
internally with default parameters.
--comment TEXT
Specify the comment text to store in the output file
header (where applicable).
SoX will provide a default comment if this option (or
--comment-file) is not given; to specify that no
comment should be stored in the output file, use
--comment .
--comment-file FILENAME
Specify a file containing the comment text to store in
the output file header (where applicable).
-r, --rate RATE
Gives the sample rate in Hz of the file. To cause the
output file to have a different sample rate than the
input file, include this option with the output file
format options.
If the input and output files have different rates then
a sample rate change effect must be run. Since SoX has
multiple rate changing effects, the user can specify
which to use as an effect. If no rate change effect is
specified then a default one will be chosen.
>>> -- End Man Sox
Exemple :
>>> -- Exemple
[devel@jabberwocky alsa]$ file Front_Center.wav
Front_Center.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 48000 Hz
[devel@jabberwocky alsa]$ sox Front_Center.wav -r 24000 Reduit.wav
[devel@jabberwocky alsa]$ file Reduit.wav
Reduit.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, mono 24000 Hz
[devel@jabberwocky alsa]$ play Reduit.wav
Input File : 'Reduit.wav'
Sample Size : 16-bit (2 bytes)
Sample Encoding: signed (2's complement)
Channels : 1
Sample Rate : 24000
Time: 00:01.43 [00:00.00] of 00:01.43 (100% ) Samples out: 68.5k Clips: 0
Done.
[devel@jabberwocky alsa]$
>>> -- End Exemple
Voilà comment jai passé un fichier de 48000 à 24000 Hz.
BTW : je n'avais jamais utilisé sox avant ...
Pierre
>
> Dominique
>
> ---
> --
> CarrefourBLinuX MailingListe
> Pour obtenir de l'aide, envoyez le sujet help à:
> carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
> Archives:
> http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux
>
---
--
CarrefourBLinuX MailingListe
Pour obtenir de l'aide, envoyez le sujet help à:
carrefourblinux-request@xxxxxxxxxxxxxxxxxxx
Archives:
http://listengine.tuxfamily.org/lists.tuxfamily.org/carrefourblinux