Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
sox [Le 19/09/2012, 19:25] fabux Petite mise en forme |
sox [Le 11/09/2022, 10:26] (Version actuelle) moths-art Suppression des espaces en fin de ligne (détecté et corrigé via le bot wiki-corrector (https://forum.ubuntu-fr.org/viewtopic.php?id=2067892) |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag> son}} | + | {{tag>Focal Bionic audio}} |
---- | ---- | ||
Ligne 11: | Ligne 11: | ||
Il vous suffit, pour cela, d'[[:tutoriel:comment_installer_un_paquet|installer]] le paquet **[[apt>sox|sox]]**. | Il vous suffit, pour cela, d'[[:tutoriel:comment_installer_un_paquet|installer]] le paquet **[[apt>sox|sox]]**. | ||
- | Afin de profiter pleinement des possibilités de SoX (comme la manipulation du mP3 ou de l'ogg ;-)), il est recommandé d'installer aussi le paquet **[[apt>libsox-fmt-all|libsox-fmt-all]]**. | + | Afin de profiter pleinement des possibilités de SoX (comme la manipulation du mP3 ou de l'ogg ;-)), il est recommandé d'installer aussi le paquet **[[apt>libsox-fmt-all|libsox-fmt-all]]**. |
===== Les différents outils ==== | ===== Les différents outils ==== | ||
Ligne 27: | Ligne 27: | ||
* pour créer un ogg à partir d'un mp3 :<code>sox fichier.mp3 fichier.ogg</code> | * pour créer un ogg à partir d'un mp3 :<code>sox fichier.mp3 fichier.ogg</code> | ||
* pour concaténer plusieurs fichiers en un seul :<code>sox fichier1.ogg fichier2.ogg fichier_final.ogg</code> | * pour concaténer plusieurs fichiers en un seul :<code>sox fichier1.ogg fichier2.ogg fichier_final.ogg</code> | ||
+ | * pour augmenter de 10db <code>sox entree.wav sortie.wav vol 10db</code> | ||
* pour augmenter les basses tout en évitant la saturation :<code>sox entree.ogg sortie.ogg vol -6dB bass +6</code> | * pour augmenter les basses tout en évitant la saturation :<code>sox entree.ogg sortie.ogg vol -6dB bass +6</code> | ||
- | * pour imprimer une analyse du fichier son (amplitude, volume...):<code>sox entree.ogg -n stat</code> | + | * pour imprimer une analyse du fichier son (amplitude, volume...):<code>sox entree.ogg -n stat </code> |
+ | * pour imprimer une analyse du fichier son (dB, channel..) <code>sox entree.ogg -n stats</code> | ||
+ | * pour convertir un fichier stéreo en "fake"-surround ([[http://jeanbruenn.info/2011/10/22/stereo-to-fake-surround/|Source]])<code> | ||
+ | #!/bin/bash | ||
+ | ### | ||
+ | # stereo 2 surround | ||
+ | ### | ||
+ | |||
+ | inFile="$1"; | ||
+ | outFile="$2"; | ||
+ | debug="$3"; | ||
+ | |||
+ | # todo ... | ||
+ | #if [ ! -z sox ]; then | ||
+ | #echo "sox" | ||
+ | # run=0; | ||
+ | #fi | ||
+ | |||
+ | #if [ ! -x multimux ]; then | ||
+ | #echo "multimux" | ||
+ | # run=0; | ||
+ | #fi | ||
+ | |||
+ | #if [ ! -x soxi ]; then | ||
+ | #echo "soxi" | ||
+ | # run=0; | ||
+ | #fi | ||
+ | |||
+ | #if [ ! -x normalize ]; then | ||
+ | #echo "normalize" | ||
+ | # run=0; | ||
+ | #fi | ||
+ | |||
+ | # default parameter | ||
+ | soxParm=""; | ||
+ | normParm="-q"; | ||
+ | |||
+ | # debug parameter | ||
+ | if [ $debug -eq 1 ]; then | ||
+ | soxParm="-V -S"; | ||
+ | normParm="-v"; | ||
+ | fi | ||
+ | |||
+ | if [ $run -eq 0 ]; then | ||
+ | echo "Error: Requirenment missing: normalize multimux, sox or soxi"; | ||
+ | else | ||
+ | echo " Preparing Source"; | ||
+ | normalize $normParm $inFile; | ||
+ | rate=$(soxi $inFile | grep "Sample Rate" | awk '{ print $4; }'); | ||
+ | # if rate is 44100, we'll most likely have stuff from an audio-cd, | ||
+ | # which we want to deemph at least i assume so | ||
+ | if [ $rate -eq 44100 ]; then | ||
+ | echo " + Source is 44.1kHz, De-Emphasing & Resampling..."; | ||
+ | sox $soxParm -c 2 $inFile source.wav deemph rate -v -a 48000 | ||
+ | else | ||
+ | sox $soxParm -c 2 $inFile source.wav rate -v -a 48000 | ||
+ | fi | ||
+ | # create combined channel | ||
+ | sox $soxParm -c 2 source.wav -c 1 combined.wav mixer 0.5,0.5 | ||
+ | normalize $normParm combined.wav | ||
+ | # create pre- left and right channels | ||
+ | sox $soxParm -c 2 source.wav -c 1 sleft.wav mixer -l | ||
+ | sox $soxParm -c 2 source.wav -c 1 sright.wav mixer -r | ||
+ | sox $soxParm -M -c 1 -v -1 sright.wav -c 1 combined.wav -c 1 right.wav | ||
+ | normalize $normParm right.wav | ||
+ | sox $soxParm -M -c 1 -v -1 sleft.wav -c 1 combined.wav -c 1 left.wav | ||
+ | normalize $normParm left.wav | ||
+ | # frequency games | ||
+ | sox $soxParm -c 1 left.wav -c 1 ls.wav sinc 100-6000 reverb | ||
+ | sox $soxParm -c 1 right.wav -c 1 rs.wav sinc 100-6000 reverb | ||
+ | sox $soxParm -c 1 combined.wav -c 1 c.wav sinc 80-12000 | ||
+ | sox $soxParm -c 1 combined.wav -c 1 lfe.wav sinc 20-200 | ||
+ | sox $soxParm -c 1 left.wav -c 1 lf.wav sinc 80-20000 | ||
+ | sox $soxParm -c 1 right.wav -c 1 rf.wav sinc 80-20000 | ||
+ | # normalize it in batch-mode | ||
+ | normalize $normParm -b ls.wav rs.wav c.wav lfe.wav lf.wav rf.wav | ||
+ | # let's mux it | ||
+ | multimux -d 0,0,15,15,0,0 lf.wav rf.wav ls.wav rs.wav c.wav lfe.wav > $outFile | ||
+ | # cleanup | ||
+ | rm left.wav right.wav combined.wav source.wav sleft.wav sright.wav | ||
+ | fi | ||
+ | </code> | ||
==== rec ==== | ==== rec ==== | ||
**Rec** permet d'enregistrer des sons.\\ | **Rec** permet d'enregistrer des sons.\\ | ||
Pour enregistrer l'entrée micro par défaut en un fichier audio au format ogg : | Pour enregistrer l'entrée micro par défaut en un fichier audio au format ogg : | ||
<code>rec -d test.ogg</code> | <code>rec -d test.ogg</code> | ||
- | Le fichier test.ogg est alors créé dans le répertoire courant. | + | Le fichier test.ogg est alors créé dans le répertoire courant. |
<code>rec -d ~/Desktop/ma_voix.wav</code> | <code>rec -d ~/Desktop/ma_voix.wav</code> | ||
Le fichier ma_voix.wav est créé sur le bureau. | Le fichier ma_voix.wav est créé sur le bureau. | ||
- | Plus d'informations sur **rec** et ses nombreuses options avec son manuel : | + | Plus d'informations sur **rec** et ses nombreuses options avec son manuel : |
<code>rec --help</code> | <code>rec --help</code> | ||
- | Un script pour faciliter l'utilisation de rec est disponible dans [[http://forum.ubuntu-fr.org/viewtopic.php?id=253255|ce sujet du forum]]. | + | Un script pour faciliter l'utilisation de rec est disponible dans [[https://forum.ubuntu-fr.org/viewtopic.php?id=253255|ce sujet du forum]]. |
===== Liens ===== | ===== Liens ===== | ||
* [[http://sox.sourceforge.net/|site officiel (en)]] | * [[http://sox.sourceforge.net/|site officiel (en)]] | ||
- | * [[http://www.linux.org/lessons/short/sox/index.html|quelques exemples et explications (en)]] | + | * [[http://billposer.org/Linguistics/Computation/SoxTutorial.html|quelques exemples et explications (en)]] |
---- | ---- | ||
//Contributeurs : [[:utilisateurs:ZondeR]] , [[:utilisateurs:Yannou90]]// | //Contributeurs : [[:utilisateurs:ZondeR]] , [[:utilisateurs:Yannou90]]// | ||