2012-04-16 3 views
4

Donc, j'ai une applet qui capture l'écran, et le son du microphone de l'ordinateur, les captures d'écran sont ensuite encodés en ScreenVideo2, et le son est codé en AAC.ffmpeg pour la capture d'écran?

Comment puis-je utiliser ffmpeg pour le multiplexer, image par image, puis envoyer la sortie multiplexée à un serveur multimédia wowza?

Si cela ne peut pas être fait avec ffmpeg, pouvez-vous fournir des suggestions?

+0

Cette ['ScreenVideo2'] (http://code.google.com/p/red5/source/browse/java/server/trunk/src/org/red5/server/stream/codec/ScreenVideo2.java? r = 4276)? Il semble que côté serveur. Comment obtenez-vous les captures d'écran et le son du client sur le serveur? –

+0

non, ce [ScreenVideo2] (http://code.google.com/p/red5-screenshare/source/browse/trunk/org/redfire/screen/ScreenCodec2.java): les captures d'écran sont prises avec le robot classique et encodé avec ceci, et l'audio est pris à partir d'un TargetDataLine, puis traité en AAC, puis j'utilise flazr pour envoyer ceux-ci au serveur mais je le fais séquentiellement, mais il devrait être muxé en un. – RicardoE

Répondre

1

quel OS? Sous Linux, vous pouvez envisager http://kde-apps.org/content/show.php/FDesktopRecorder?content=147844

Le noyau central du script est quelque chose comme:

Enregistre l'écran:

ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 30 -s $(xwininfo -root | \ 
    grep 'geometry' | awk '{print $2;}') -i :0.0 -acodec flac -vcodec libx264 \ 
    -vpre lossless_ultrafast -threads 0 -y output.mkv 

Enregistrer une fenêtre:

#!/bin/sh INFO=$(xwininfo -frame) WIN_GEO=$(echo $INFO | \ 
    grep -oEe 'geometry [0-9]+x[0-9]+' | \ 
    grep -oEe '[0-9]+x[0-9]+')WIN_XY=$(echo $INFO | \ 
    grep -oEe 'Corners:\s+\+[0-9]+\+[0-9]+' | grep -oEe '[0-9]+\+[0-9]+' | \ 
    sed -e 's/\+/,/') ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 30 \ 
    -s $WIN_GEO -i :0.0+$WIN_XY -acodec flac -vcodec libx264 \ 
    -vpre lossless_ultrafast -threads 0 -y output-single.mkv 
+0

il devrait être multiplateforme, nous parlons d'une applet: s – RicardoE

0

Xuggler peut faire that pour vous. Je ne suis pas exactement sûr si cela fonctionne dans les applets. Il est capable de coder des cadres en utilisant ffmpeg en arrière-plan. Il est activement développé en ce moment et bénéficie d'un bon support via sa liste de diffusion.

Questions connexes