Récemment, j'ai exploré le dossier enchanté/dev. Je veux écrire des données aléatoires sur un périphérique audio afin de générer du bruit.
J'utilise alsa.
Je demande donc que le chat de piloter des données aléatoires au fichier de lecture dans le dossier/dev ...
cat file-of-random-data > /dev/snd/pcmC0D0p
alors je reçois ce qui semble être une erreur de chat
cat: write error: File descriptor in bad state
Comment puis-je résoudre ce problème pour que je puisse entendre une délicieuse jeu statique de ma carte son?
Je pense que la raison pour laquelle cela ne fonctionne pas est parce que cette interface a été obsolète. Vous ne pouvez normalement pas écrire de l'audio à l'aide de /dev/dsp
plus, du moins sans être délicat.
Il y a un programme qui vous accomplira pour vous sur votre système: padsp
. Cela fera mapper le /dev/audio
ou /dev/dsp
Fichier au nouveau système de serveur audio.
Déposer le terminal et entrer en mode root avec Sudo su
.
Ensuite, je vais à cat /dev/urandom
et pipe la sortie dans padsp
et utilisez la commande tee
pour envoyer les données à /dev/audio
. Vous obtiendrez une tonne de déchets dans votre terminal. Vous voudrez peut-être rediriger vers /dev/null
.
Une fois que vous êtes en superutilisateur, essayez cette commande:
cat /dev/urandom | padsp tee /dev/audio > /dev/null
Vous pouvez même vouloir essayer avec d'autres périphériques, comme votre souris: Utilisez: /dev/psaux
, par exemple ou le pilote USB. Vous pouvez même courir votre mémoire à travers elle: /dev/mem
J'espère que cela clarifie pourquoi cela ne fonctionnait pas auparavant.
Personnellement, j'ai trouvé que la souris et la mémoire sont bien plus intéressantes que de jouer au hasard statique!
cat /dev/urandom | aplay
est la commande qui doit être saisie. Si vous n'êtes pas dans le groupe "Audio", vous pouvez préfixer Aplay avec sudo. Cela n'interfère pas avec aucun démon (j'exécutais pulseaudio
tandis que cette commande était active et entendit correctement le "bruit".
Edit (6 août 2019): Dans une ancienne version de la commande, j'ai aussi eu un padsp tee
chose entre le cat
et aplay
. Maintenant que je travaille réellement sur le terrain, je me rends compte qu'il n'avait absolument aucun sens. En outre, je connais la commande mise à jour (celle visible maintenant au début de cette réponse) fonctionne car je l'utilise plusieurs fois par jour au travail.
Essayez/dev/audio ou l'un des autres appareils sous/dev/SND. Tous ne sont pas tous des dissipateurs audio, vous aurez peut-être attrapé un mélangeur, un microphone ou quelque chose
Est un démon sonore (E.G. pulseaudio
) tenant une serrure sur l'appareil? Je pense que vous pouvez savoir si quelque chose d'autre a une poignée sur elle via lsof
.