Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 12/06/2010, à 14:36

G4L

Alsa : Enregistrement de sa sortie

Bonjour, n'aillant pas vu cette super astuce sur beaucoup de site durant mes recherche, je la poste ici en espèrant qu'elle vous soit utile

Donc, on peut enregister la sortie d'Alsa grâce a ce fichier de configuration ~/.asoundrc :

pcm.!default {
    type plug
    slave {
        pcm rate48000Hz
    }
}


pcm.rate48000Hz {
    type rate
    slave {
        pcm writeFile
        format S16_LE
        #channels 2
        rate 48000
    }
    #route_policy copy
}

pcm.writeFile {
    type file
    slave {
        pcm card0
    }
    file "~/alsa_output.raw"
    format "raw"
}

pcm.card0 {
    type hw
    card 0
}

ctl.card0 {
    type hw
    card 0
}

Ceci enregistrera un fichier audio de type raw.

Il faudra bien entendu convertir ceci pour qu'il doit lisible avec SoX (Disponible dans Synaptic) comme ceci :

sox -e signed-integer -b 16 -L -r 48000 -c 2 -t raw ~/alsa_output.raw ~/out.wav

Une chose, les paramètres dans le bloc 'pcm.rate48000Hz' peuvent ne pas être compatible avec toutes les applications.

Ce fichier fonctionne avec flash par exemple, mais Mplayer ne fonction pas.

Si vous changer les paramètres, il faudra bien entendu adapter la conversion avec SoX afin d'avoir exactement les même paramètre pour éviter d'étranges choses... roll

Ce sera a vous de changer les canaux, encodage et la fréquence audio afin de pouvoir faire fonctionné l'application que vous souhaiter enregistrer.

Une autre chose : Chez-moi, je n'ai pas PulseAudio d'installer, je ne sait donc pas comment cela pourrai se comporter avec... Et le multiplexage audio logiciel ne fonctionne pas si ce fichier est la.

Pour désactiver l'enregistrement, renommé simplement le fichier. (Evité de le laisser pas erreur au risque de remplir votre disque dur... wink)

Voilà, j'espère que cela sera utile à d'autre.


Windows, ça ne fonctionne correctement que dans une fenêtre.

Hors ligne

#2 Le 12/06/2010, à 15:31

alej

Re : Alsa : Enregistrement de sa sortie

G4L a écrit :

Chez-moi, je n'ai pas PulseAudio d'installer, je ne sait donc pas comment cela pourrai se comporter avec...

On peut squeezer PA, le cas échéant, pour l'enregistrement mais on peut, surtout, faire + simple, PA ou pas. Par exemple...

$ grep tee .asoundrc
############# Début teewav #############
pcm.teewav { type empty slave.pcm "tee:'plughw:0,0','/home/alex/out.wav',wav" }
############# Fin teewav #############
$ mplayer -ao alsa:device=teewav -endpos 30 http://mp3.live.tv-radio.com/franceculture/all/franceculturehautdebit.mp3
MPlayer SVN-r1.0~rc3+svn20090426-4.4.3 (C) 2000-2009 MPlayer Team

Playing http://mp3.live.tv-radio.com/franceculture/all/franceculturehautdebit.mp3.
Resolving mp3.live.tv-radio.com for AF_INET...
Connecting to server mp3.live.tv-radio.com[91.197.164.3]: 80...
Name   : franceculturehautdebit
Public : no
Bitrate: 128kbit/s
Cache size set to 320 KBytes
Cache fill:  5.00% (16384 bytes)   
ICY Info: StreamTitle='';StreamUrl='';

Audio only file format detected.
==========================================================================
Opening audio decoder: [mp3lib] MPEG layer-2, layer-3
mpg123: Can't rewind stream by 718 bits!
AUDIO: 44100 Hz, 2 ch, s16le, 128.0 kbit/9.07% (ratio: 16000->176400)
Selected audio codec: [mp3] afm: mp3lib (mp3lib MPEG layer-2, layer-3)
==========================================================================
AO: [alsa] 44100Hz 2ch s16le (2 bytes per sample)
Video: no video
Starting playback...
A:  30.0 (30.0) of -0.0 (unknown)  0.6% 16% 

Exiting... (End of file)
$ file out.wav 
out.wav: RIFF (little-endian) data, WAVE audio, Microsoft PCM, 16 bit, stereo 44100 Hz
$ mplayer out.wav 
MPlayer SVN-r1.0~rc3+svn20090426-4.4.3 (C) 2000-2009 MPlayer Team

Playing out.wav.
Audio only file format detected.
==========================================================================
Opening audio decoder: [pcm] Uncompressed PCM audio decoder
AUDIO: 44100 Hz, 2 ch, s16le, 1411.2 kbit/100.00% (ratio: 176400->176400)
Selected audio codec: [pcm] afm: pcm (Uncompressed PCM)
==========================================================================
AO: [pulse] 44100Hz 2ch s16le (2 bytes per sample)
Video: no video
Starting playback...
A:  30.0 (30.0) of 30.0 (30.0)  0.1% 

Exiting... (End of file)

Dernière modification par alej (Le 12/06/2010, à 15:34)

Hors ligne

#3 Le 12/06/2010, à 18:48

G4L

Re : Alsa : Enregistrement de sa sortie

Hum.. pour faire encore plus simple en utilisant mplayer, il possède cette fonction, c'est-à-dire de redirigie sa sortie audio vers un fichier, donc le .asoundrc est inutile dans ton cas wink, regarde dans les option audio et choisi PCM comme driver audio. (Je ne sait pas comment elle se nomme en ligne de commande)

Cette astuce est réserver au application qui n'ont pas d'enregistreur integrer. ça evite le tralala de PulseAudio et companie juste pour de l'enregistrement de ce qu'on entends.

Dernière modification par G4L (Le 12/06/2010, à 18:50)


Windows, ça ne fonctionne correctement que dans une fenêtre.

Hors ligne

#4 Le 13/06/2010, à 00:17

alej

Re : Alsa : Enregistrement de sa sortie

J'ai pris mplayer pasque c'est le 1er qui m'est venu à l'esprit mais ça marche avec, par exemple, "mpg123 -a teewav" pour enregister et, toujours par exemple, "aplay" pour relire la sortie. Et ça tient toujours en une ligne dans .asoundrc...

Hors ligne