Je vous laisse faire le montage et le tester en diffusion avec ffmpeg sur le serveur rtmp.enseeiht.fr
et en lecture avec ffplay ou vlc ou mkplayer
à bientot,
Pascal
PS: je vous invite à venir participer ici pour les aspects de conference et video:
https://groupes.renater.fr/wiki/constellation/public/index
PS:
Convertir en mp4
ffmpeg -i video.webm -vcodec libx264 -vprofile baseline -acodec aac -r 30 video.mp4
Pour couper une video (enlever 10s)
ffmpeg -i -ss 00:00:10 display.mp4 -vcodec libx264 -vprofile baseline -acodec aac -r 30 -to 00:20:05 display2.mp4
ffmpeg -i -ss 00:20:15 display.mp4 -vcodec libx264 -vprofile baseline -acodec aac -r 30 -to 00:25:00 display3.mp4
Puis concatener: display2.mp4 et display3.mp4
Concaténer plusieurs vidéos
Il m'arrive de faire des vidéos (avec le même appareil) ou avec SimpleScreenRecorder (donc au même format) et de vouloir les concaténer.
Voici la méthode utilisée. Créer un fichier texte avec tous les noms dans l'ordre des vidéos à concaténer :
Copier vers le presse-papierCode BASH :
vi fic.txt
Copier vers le presse-papierCode TEXT :
file ‘out-2016-06-16_17.49.16.ogg’ file ‘out-2016-06-16_18.04.20.ogg’ file ‘out-2016-06-16_18.12.01.ogg’
Ensuite, exécuter la commande suivante pour tout concaténer :
Copier vers le presse-papierCode BASH :
ffmpeg -f concat -i fic.txt -c copy out.ogg
Et le tour est joué !
Monter les 2 videos:
Attention, il faut faire le meme decoupage et concatenation pour le display et la webcam!
Tester mon montage (resolution, synchronisation images + son), poids -on doit etre entre 500 et 1000 kbit par s):
Je vous laisse la main pour tester: 1> un serveur rtmp.enseeiht.fr 2> les commandes ffmpeg, le programme de reference pour traiter
— Test sur le serveur: Lancement du lecteur: ffplay rtmp://rtmp.enseeiht.fr/live/ducasse
Diffusion mp4:
ffmpeg -re -i display.mp4 -i cam.mp4 \ -filter_complex “color=black:size=1920×1080 [background]; \ \ [0:v] scale=(iw *85/100):-2 [screen_scaled];\ [1:v] scale=iw*22/100:-2 [cam_scaled];\ \ [background][screen_scaled] overlay=shortest=0:(main_h-overlay_h)/2 [bg+left];\ [bg+left][cam_scaled] overlay=main_w-overlay_w:(main_h-overlay_h)/2 ” \ -vcodec libx264 -vprofile baseline -acodec aac -r 15 -f flv rtmp://rtmp.enseeiht.fr/live/ducasse
de meme, diffusion en webm: ffmpeg -re -i display.webm -i cam.webm \ -filter_complex “color=black:size=1920×1080 [background]; \ \ [0:v] scale=(iw *85/100):-2 [screen_scaled];\ [1:v] scale=iw*22/100:-2 [cam_scaled];\ \ [background][screen_scaled] overlay=shortest=0:(main_h-overlay_h)/2 [bg+left];\ [bg+left][cam_scaled] overlay=main_w-overlay_w:(main_h-overlay_h)/2 ” \ -vcodec libx264 -vprofile baseline -acodec aac -r 15 -f flv rtmp://rtmp.enseeiht.fr/live/ducasse
Voici ce que vous devez voir: frame= 177 fps= 14 q=-1.0 Lsize= 1077kB time=00:00:12.10 bitrate= 728.7kbits/s dup=0 drop=116 speed=0.951x
nb image/s: 10<fps<30 sous multiple de fps de l'image initiale (nous avons encoder à 30 fps)
300<bitrate<900
Si besoin, conversion des videos brutes pour les rendre plus legeres ou les reencoder pour regler des porblemes d(horodatage, d'encodage ————– reencodage à une resolution -s 1280×720 et 30 images par minutes ffmpeg -i paradigme.mp4 -s 1280×720 -vcodec libx264 -vprofile baseline -acodec aac -r 30 paradigme3.mp4 ffmpeg -i keynote.mp4 -s 1280×720 -vcodec libx264 -vprofile baseline -acodec aac -r 30 keynote3.mp4
Webm n'est pas un encodage, c'est une enveloppe vidéo…
Dans les fichiers, il y a plein d'erreur: pour tester un fichier video, il faut faire:
ffprobe -v debug <fichier> ffmpeg -v debug -i <fichier> …. ffplay -v debug <fichier>