Derniers journaux de Sirrus :
- [20/07@01:33] Comment enregistrer une émission en flux real rm
- [19/07@15:43] Depuis hier, je ne fais que recevoir que des m@ils d'escroquerie
- [18/07@18:03] C'est moi ou c'est rpmfind qui m****
- [14/07@14:28] Minute de silence pour Compay Segundo
- [05/07@22:03] LinuX CD #2 présente FreeBSD 5.1
- [03/07@13:54] Failles de sécurité: M$ en prend plein la gueule
- [30/06@09:13] Sortie de MISC n°8
- [06/06@21:47] Sortie de Planète Linux n°24
- [31/05@07:07] Les logiciels libres de plus en plus populaires en terme de sécurité
- [31/05@07:05] Les logiciels libres de plus en plus populaires en terme de sécurité
- [16/05@16:36] Tout va bien entre KDE et RMS
Journal : Enregistrer le /dev/dsp en wav
Posté par Sirrus () le 10 août 2003Bon je sais déjà capturer le son d'une appli avec vsound ce qui m'arrange pour les flux real.
Ce que je voudrai maintenant, c'est capturer tous les sons sortant par /dev/dsp.
J'ai essayé en faisant:
$ cat /dev/dsp > essai.raw
$ sox -t .raw essai.raw -t .wav essai.wav
marche pas,
je continue en faisant:
$ sox -t raw -r 22000 -w essai.raw -t wav essai.wav
et j'obtiens ce message d'erreur: "sox: bad input format for file essai.raw: data encoding was not specified" et donc je ne comprends pas car je ne vois pas d'autres formats
en faisant avec sox en prenant directement le son à la source:
$ sox -t ossdsp -w -s -r 44100 -c 2 /dev/dsp -t .wav essai.wav
j'obtiens un fichier wav, certes mais vide
je tiens à préciser que j'ait ces tests avec xmms avec /dev/spd comme sortie ou avec realplayer qui sort en /dev/dsp puisque vsound peut capturer le son
L'autre problème serait de savoir si je pouvais me débroullier pour enregistrer ainsi le son d'un appareil externe sur mon ordi. Je m'explique: j'ai de nombreuses cassettes audio assez vieilles et comme vous le savez, le son est de plus en plus mauvais. Ce que je voudrai faire, c'est relier mon poste ou ma chaîne Hi-fi à ma carte son pour se débrouiller afin que je puisse utiliser ma sortie son que je pourrai capturer avec la méthode que je cherche à trouver plus haut. Cela me permettra ainsi de sauver ainsi mes vieilles cassettes ou plutôt leur contenu. Est-ce possible?
Le dernier problème qui est mineur, je préfère me concentrer sur les deux précédents, c'est que lorsque je fais:
$ cat fichier-wav-normal.wav > /dev/dsp
j'obtiens d'horribles grésillements...
Merci d'avance de votre aide.
> Lire le journal (11 commentaires, moyenne: 3).
Re: Enregistrer le /dev/dsp en wav
http://linuxfr.org/~remat/860.html(...) , ca peut peut-etre t'aider...
Re: Enregistrer le /dev/dsp en wav
Le dernier problème qui est mineur, je préfère me concentrer sur les deux précédents, c'est que lorsque je fais:
$ cat fichier-wav-normal.wav > /dev/dsp
j'obtiens d'horribles grésillements...
Si tu fais ça :
sox fichier-wav-normal.wav -t ossdsp /dev/dsp
Ça marche normalement... par contre si je faiscat fichier-wav-normal.wav > /dev/dsp alors j'ai le même effet que toi...
All those moments will be lost in time, like tears in the rain.
-
[^]Re: Enregistrer le /dev/dsp en wav
-
[^]Re: Enregistrer le /dev/dsp en wav
Posté par Christophe GRAND (page perso, ) le 10/08/2003 à 19:18. (lien). Évalué à 6.Ça marche normalement... par contre si je fais cat fichier-wav-normal.wav > /dev/dsp alors j'ai le même effet que toi...
ioctl... je m'explique : /dev/dsp n'est pas magique, il ne devine pas tous seul le format des données (8, 16, 24 bits, échantillonage 44.1kHz, 48 kHz, 96kHz) sans parler de little et big endian, codage direct ou log. Sans parler de l'entête. C'est pour ça que vous avez de la neige dans les oreilles ;-)
Il faut configurer /dev/dsp puis lui envoyer les données qui vont bien vis-à-vis de la config que l'on vient de lui appliquer.
Cette étape de config se fait avec l'appel système générique ioctl et les docs qui vont bien (cf kernel et google).-
[^]Re: Enregistrer le /dev/dsp en wav
Posté par Sirrus () le 10/08/2003 à 20:15. (lien). Évalué à 1.Merci de tes explications. Par contre je voudrai savoir, c'est qu'elle est le format de sortie de /dev/dsp pour que je puisse le convertir avec sox.
-
[^]Re: Enregistrer le /dev/dsp en wav
Posté par Christophe GRAND (page perso, ) le 10/08/2003 à 21:07. (lien). Évalué à 5.Même motif, même punition, l'acquisition se configure... avec ioctl
google : http://www.google.com/search?hl=en&ie=UTF-8&oe=UTF-8&q=(...)
parmi les premiers résultats celui-là à attirer mon attention :
http://www.oreilly.de/catalog/multilinux/excerpt/ch14-05.htm(...)
Maintenant : je ne sais pas si ce que tu veux faire est possible (lire /dev/dsp en espérant lire ce qui y est écrit). L'écriture va sur les enceintes, la lecture vient du micro ou de line-in. C'est le schéma de base. Peut-être est-il possible de remapper au niveau de la carte son (amha c'est dépendant du driver) les flux audios mais... si tu y arrives, fais le moi savoir ou fais un howto.
Sinon, autre piste, recherche voir si ce ne serait pas possible en utilisant un
[pause, avant de raconter une connerie, je vais voir comment fonctionne vsound]
.
.
.
[fin de pause, reprise du programme]
module noyau qui se substitue à ton module son.
En effet vsound marche par programme (ça a l'air d'être une lib en preload (man ld.so) ou qqch dans ce goût-là (je ne suis pas allé plus loins que la première page que j'ai trouvé)) or si tu veux capturer tous les programmes, ce n'est pas à la source (le pgm) qu'il faut agir, mais à la cible : le driver derrière /dev/dsp.
-
-
[^]Re: Enregistrer le /dev/dsp en wav
Posté par allcolor (Jabber id, page perso, ) le 10/08/2003 à 21:25. (lien). Évalué à 2.Puis mais pourquoi alors un "cat /dev/dsp > myfile" ne fonctionne pas... le résultat n'est pas lisible ? pourtant l'application cliente qui a ouvert /dev/dsp l'a configuré avant non ?
--
All those moments will be lost in time, like tears in the rain.-
[^]Re: Enregistrer le /dev/dsp en wav
Posté par Christophe GRAND (page perso, ) le 10/08/2003 à 21:35. (lien). Évalué à 3.parce qu'il y a une config distincte pour la lecture et l'écriture et qu'une application qui joue un son ne va pas configurer l'acquisition (cf lien donné plus haut : http://www.oreilly.de/catalog/multilinux/excerpt/ch14-05.htm(...) )
ensuite, je maintiens que par défaut ce (in&out) sont deux flux séparés et que lire /dev/dsp c'est enregistrer ce qui vient du micro et pas ce qui vient (ou est en train) d'être envoyé sur les enceintes. (/dev/dsp ne se comporte pas comme un pipe nommé)
Addendum au poste plus haut : j'ai cherché rapidement, pas de module loopback mais un module dummy chez ALSA qu'il doit être possible de modifier à peu de frais pour que l'entrée de /dev/dsp soit pipée sur la sortie.-
[^]Re: Enregistrer le /dev/dsp en wav
Posté par allcolor (Jabber id, page perso, ) le 10/08/2003 à 21:37. (lien). Évalué à 2.C'est pour ça que je pouvais entendre ce qui passait sur les enceintes mais avec un effet de souffle énorme et un volume bas... c'est simplement ce qui venait de l'entrée micro...
Merci pour l'info :-)--
All those moments will be lost in time, like tears in the rain.-
[^]Re: Enregistrer le /dev/dsp en wav
-
-
-
-
Re: Enregistrer le /dev/dsp en wav
Suite à la recherche Google "enregistrer /dev/dsp" en francais (http://www.google.fr/search?hl=fr&ie=UTF-8&oe=UTF-8&q=e(...)), j'ai trouvé la ligne de commande suivante (pas encore testée) sur la page http://gcu-squad.org/?viewtip+&tip_id=63(...) :
"sox -t ossdsp -c 2 -r 44100 -w -s /dev/dsp -t wav -| gogo stdin out.mp3"

Les journaux sont destinés à des informations qui ne sont pas suffisamment intéressantes
pour être validées en dépêche (sinon n'hésitez pas à proposer votre information en
dépêche), qui sont sans rapport avec Linux ou le libre, ou simplement pour donner votre
avis. Si vous désirez poser une question, merci d'utiliser 

Cette discussion est archivée, il n'est plus possible de laisser des commentaires.
Note : les commentaires appartiennent à ceux qui les ont postés. Nous n'en sommes pas responsables.