====== Screencast audio/vidéo ====== Enregistrement audio et vidéo de ce qu'il se passe sur l'ordinateur. Solutions sur Linux Essayer avant toute chose avec Kazam ou gtk-recordmydesktop ou http://www.maartenbaert.be/simplescreenrecorder/ Autre ressource sur [[http://forum.pdpatchrepo.info/topic/9722/screencast-your-patch|Screencast your patch]]. ===== Installation ===== Screencast audio/video \\ ([[logiciels:ffmpeg:accueil|ffmpeg]] for video, vlc for audio, jack and pulse audio to connect Pure Data to vlc) **ffmpeg** * sudo add-apt-repository ppa:jon-severinsson/ffmpeg * sudo apt-get update * sudo apt-get install ffmpeg **qjackctl, jack, pulse** * sudo apt-get install qjackctl pulseaudio-module-jack jack-rack libnotify-bin ladspa-sdk plugins-swh * pacmd suspend true Dans QJackCtl : Script après le démarrage : * pacmd load-module module-jack-source channels=2; pacmd load-module module-jack-sink channels=2; ===== Script Linux ===== #!/bin/bash # Script to screencast audio and video (ffmpeg for video, vlc for audio, jack and pulse audio to connect Pure Data to vlc) DATE=`date +%Y%m%d` TIME=`date +%Hh%M` AUDIO_FILE="/media/data/videos/record/out-$DATE-$TIME.wav" VIDEO_FILE="/media/data/videos/record/out-$DATE-$TIME.avi" # Start screencast cp ~/.pdextended_malinette ~/.pdextended qjackctl -a ~/Softs/jack-patchbay.xml & sleep 3 pd-extended -jack -open /media/data/code/malinette/malinette/MALINETTE-en.pd & sleep 3 ffmpeg -f x11grab -r 25 -s 946x768 -i :0.0+0,0 -vcodec huffyuv -y $VIDEO_FILE & cvlc jack://channels=2:ports=.* --jack-input-auto-connect --sout="#transcode{acodec=s16l,channels=2,ab=128,samplerate=44100}:standard{access=file,mux=wav,dst="$AUDIO_FILE"}" # Kill killall qjackctl killall pd-extended killall ffmpeg killall cvlc #jack_connect pd_extended_0:output0 "PulseAudio JACK Source:front-left" #jack_connect pd_extended_0:output1 "PulseAudio JACK Source:front-right" #--sout "#transcode{acodec=mp3,ab=128,channels=2,samplerate=44100}:duplicate{dst=std{access=file,mux=mp4,dst=$AUDIO_FILE}}}" ===== Autres ===== ==== vidéo + son micro ==== ffmpeg -f alsa -ac 2 -i pulse -f x11grab -r 30 -s 948x738 -i :0.0+0,24 -acodec pcm_s16le -vcodec libx264 -preset ultrafast -threads 0 -y test-pulse.mkv ==== pas de son ... ==== cvlc --jack-input-auto-connect screen:// --screen-fps=25 --input-slave pulse://jack_in --sout "#transcode{venc=x264,quality:100,scale=1,fps=30,acodec=mp3,ab=128,channels=2, samplerate=44100}:duplicate{dst=std{access=file,mux=mp4,dst=nowardev.mp4}}}" ==== recordmydesktop, kazam ==== recordmydesktop -x 300 -y 300 -width 480 -height 272 -fps 15 --use-jack system:capture_1 system:capture_2 -o output.ogv ==== avconv ==== avconv -f x11grab -show_region 1 -video_size hd720 -framerate 24 -i :0.0 -threads 2 -q 1 test.mkv ==== VLC convertir/enregistrer jack audio wav ==== ==== List the current JACK clients. jack_lsp -c, arecord -l ==== ==== WEBCAM ==== mplayer -tv driver=v4l2:gain=1:width=640:height=480:device=/dev/video0:fps=10:outfmt=rgb16 tv:// ==== Gif animé ==== * http://askubuntu.com/questions/107726/how-to-create-animated-gif-images-of-a-screencast byzanz-record --duration=15 --x=200 --y=300 --width=700 --height=400 out.gif {{:logiciels:screencast:out.gif?nolink|}} ==== Ffmpeg/Jack à essayer ==== Source : http://lists.puredata.info/pipermail/pd-list/2014-11/108461.html ffmpeg -f jack -ac 2 -i ffmpeg -f x11grab -r 25 -s 1366x768 -i :0.0 -acodec pcm_s16le -threads 0 output.mkv Notice that: * ffmpeg in my case is the 'original' one compiled by hand. Unfortunately debian now seems to only package avconv and that has always crashed on me with jack as audio input. However ffmpeg is relatively easy to compile on debian following this guide: https://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu * You should play with the -s and -i parameters to suit your needs. * Pulseaudio will be automatically suspended when you run jack (I was forced to install it to use skype with, alas, I'm forced to use for work). * Clearly when screen-casting it'll be difficult to get Chuck Norris low latencies without some xruns. * The output with that ffmpeg command will be a very good quality mkv video however it will also be very (very!) big and you'll have to factor in the extra time for re-compressing (it's possible to encode on the fly -but I prefer to have a good quality 'original') * For encoding I've had rather nice results with using webem, for example (YMMV): ffmpeg -y -i "$INFILE" -threads 8 -f webm -vcodec libvpx -g 120 -level 216 -profile 0 -qmax 42 -qmin 10 -rc_buf_aggressivity 0.95 -vb 2M -acodec libvorbis -aq 90 -ac 2 $OUTFILE ---- ===== Liens ===== * http://wiki.linuxaudio.org/wiki/screencasttutorial * http://puredata.info/docs/JackRoutingMultichannelAndBrowserAudio/ * http://askubuntu.com/questions/4428/how-to-create-a-screencast