Créer un capture device vlc


11 posts
by retro78 » Mon Jan 28, 2013 9:56 pm
Bonsoir,

Je cherche à diffuser le son de ma raspberry avec l'option open capture device et video for linux de vlc, le problème est qu'il n'y a pas de périphérique de capture audio interne alsa.

Ma question est la suivante, comment créer un périphérique audio interne ?

Merci
Posts: 13
Joined: Tue Jan 22, 2013 6:18 pm
by retro78 » Tue Jan 29, 2013 7:34 pm
up :)
Posts: 13
Joined: Tue Jan 22, 2013 6:18 pm
by jelopo » Tue Jan 29, 2013 10:26 pm
Bonjour,

As-tu regardé du coté de udev ? Je ne connais pas bien, mais c'est peut être un piste.
Bon courage .

A+
Posts: 364
Joined: Wed Oct 17, 2012 7:53 pm
by retro78 » Wed Jan 30, 2013 10:22 pm
salut,

j'ai lu la page en question si j'ai bien compris les périphériques sous linux sont sous formes de fichiers dans un dossier /dev :shock: ça m'avance un peu mais je n'ai toujours pas trouver de solution...
Posts: 13
Joined: Tue Jan 22, 2013 6:18 pm
by nikotinux » Mon Feb 04, 2013 2:27 am
il n'y a pas de périphérique de capture sur la carte du raspberry. il faut donc que tu précises le type de périphérique que tu as connecté pour que l'on puisse t'aider ...

carte son USB avec entrée micro ..
webcam avec entrée micro ...
carte tuner TV ou satellite ...
?? il y a tellement de possibilités ..
Posts: 172
Joined: Sat Feb 02, 2013 2:11 am
by retro78 » Mon Feb 04, 2013 7:13 pm
je veux que mon périphérique soit l'image du son qui sort du jack.

Est-ce que c'est possible?
Posts: 13
Joined: Tue Jan 22, 2013 6:18 pm
by nikotinux » Mon Feb 04, 2013 11:50 pm
faire directement ce que tu veux avec VLC me semble impossible.

j'ai donc cherché une méthode pour capturer la sortie d'une carte audio sur mon Ubuntu en vue de l'adapter, méthode qui puisse fonctionner en ligne de commande pour pouvoir avec des pipes l'adapter a ton besoin.

après quelques tentatives avec ALSA je n'ai pas trouvé de méthode qui fonctionne.

avec pulseaudio j'ai eu plus de réussite.

il faut donc
- installer pulseaudio avec ses utilitaires.
- utiliser pacmd pour trouver le nom du monitoring de la sortie alsa de la carte son
> pacmd list | grep ".monitor"
le résultat de cette commande chez moi :
monitor source: 0
name: <alsa_output.pci-0000_00_1b.0.analog-stereo.monitor>
monitor_of: 0
device.class = "monitor"
alsa_output.pci-0000_00_1b.0.analog-stereo.monitor/#0: Monitor of Audio interne Stéréo analogique
- on peut maintenant extraire le flux avec pacat et le transcoder par exemple avec sox
> pacat --record -d alsa_output.pci-0000_00_1b.0.analog-stereo.monitor | sox -t raw -r 44100 -s -L -b 16 -c 2 - "output.wav"
tu lances la commande d'un coté, tu joues un clip youtube sous firefox, ctrl+c a la fin de la chanson et hop c'est rippé

je pense que ça peut te faire avancer ...
Posts: 172
Joined: Sat Feb 02, 2013 2:11 am
by retro78 » Tue Feb 05, 2013 8:29 pm
Salut,

Merci pour tes recherches, je me suis mal exprimé à la base je cherche à streamer la sortie audio de la raspberry via l'outil capture de vlc et comme la liste de périphérique est vide dans l'onglet caoture de vlc, je cherchais à savoir comment en créer un.

si tu as une autre solution qui permet de streamer le son de la raspberry je suis preneur :)

++
Posts: 13
Joined: Tue Jan 22, 2013 6:18 pm
by nikotinux » Tue Feb 05, 2013 8:57 pm
tu ne pourras jamais créer un périphérique visible dans la boite de dialogue de vlc et correspondant a la sortie audio.

si tu veux absolument utiliser vlc pour créer un flux réseau il te faudra lancer vlc en ligne de commande.

la doc pour faire ça est la : http://www.videolan.org/doc/streaming-h ... /ch03.html

avec cette méthode il te faut un flux entrant qui va correspondre a l'argument input_stream et qui sera la sortie audio du jack. c'est ce qui correspond a mon post précédent.

c'est pas du tout cuit mais ça me semble la voie a suivre.
Posts: 172
Joined: Sat Feb 02, 2013 2:11 am
by retro78 » Tue Feb 05, 2013 9:06 pm
Est-ce que tu connais un autre logiciel qui permet de streamer simplement le flux audio sortant de la raspberry pi?

merci
Posts: 13
Joined: Tue Jan 22, 2013 6:18 pm
by nikotinux » Tue Feb 05, 2013 10:29 pm
je ne sais pas ce que tu veux faire exactement.

le plus versatile est surement le couple ffserver ffmpeg ?

ffmpeg est bien plus facile a utiliser que vlc pour streamer en ligne de commande.

le truc delicat est de configurer correctement ffserver qui diffusera ton flux sur ethernet
un exemple est la : http://www.ffmpeg.org/sample.html
le fichier de conf serait du genre :

Port 8080
BindAddress 0.0.0.0
MaxHTTPConnections 20
MaxClients 10
MaxBandwidth 1000
CustomLog -
NoDaemon
<Feed feed1.ffm>
File /tmp/feed1.ffm
FileMaxSize 200K
ACL allow 127.0.0.1
</Feed>
<Stream test.mp3>
Feed feed1.ffm
Format mp2
AudioCodec mp3
AudioBitRate 64
AudioChannels 1
AudioSampleRate 44100
NoVideo
</Stream>

ensuite tu lance un fichier batch qui contient
ffserver -f fichier_de_conf &
pacat --record -d alsa_output.xxxxxx.monitor | ffmpeg http://localhost:80890/feed1.ffm

normalement tu devrais pouvoir lire a partir de vlc sur une autre machine en ouvrant le flux réseau a l'adresse http://dns_du_raspberry:8080/test.mp3
Posts: 172
Joined: Sat Feb 02, 2013 2:11 am