Capture d'écran (ScreenCasting) vidéo + son

Discussion autour du Replay de la Vidéo (M6Replay, Youtube, encodage, ...)

Capture d'écran (ScreenCasting) vidéo + son

Messagede Pulsar33 » Dim 26 Jan 2014 16:01

EDIT Pulsar33 : à partir de la version 2.0, VCTL fournit un support pour l'utilisation de UScreenCapture !

Bonjour,

Je crée un sujet dédié car ceci revient (et reviendra forcément) sur le devant de la scène chaque fois qu'une contremesure nous privera temporairement de nos droits à la copie privée. Ceci a déjà été abordé dans d'autres sujets à l'occasion justement de ce genre de problèmes. Certains ont donné leurs pistes ( k3c, npa, czmaster ... ). Notez bien que nous allons simplement utiliser des logiciels freewares accessibles à tous, en restant dans le cadre de la copie privée (Original fourni par l'ayant droit. Copie effectuée par l'utilisateur final. Utilisation dans le cercle familial).

Je me suis plus d'une fois tourné vers l'enregistrement d'écran à titre de dernier recours mais jusqu'à ce jour, mes essais ne m'avaient jamais complètement satisfait. Soit il s'agissait de logiciels commerciaux, en version limitée dans le temps ou avec un marquage dans l'image (même s'ils disaient le contraire) et pas forcément paramétrables à volonté. Soit c'était des logiciels libres mais peu performants, voire qui ne marchaient pas du tout ou ne géraient que l'image. Bref j'ai souvent été déçu, en particulier par le battement de fréquence qui génère des cisaillements désagréables. C'est entre autre le cas de celui que j'utilisais jusqu'à présent Corel Video Studio Pro, qui est un excellent logiciel de montage vidéo multi-pistes (je vous le conseille, il n'est pas cher pour ce qu'il fait) mais la fonction capture semble bridée à 15 fps, ce qui n'est pas suffisant.

Note préalable :
Je suis sous Windows XP SP3 32 bits avec un core i5 2.8GHz, 4Go ram, ATI Radeon HD5700, bi-écran 1920x1080
Il existe l'équivalent sous Linux de ce que je vais décrire ci-dessous et peut-être des solutions différentes de même qualité mais je laisse à d'autres le soin de vous en parler.

Je me suis tourné aujourd'hui vers la brique la plus générique et pérenne qui soit : FFmpeg et je lui ai associé UScreenCapture. Utilisez le lien Secured Download US. Après vérification d'usage sur VirusTotal et installation du device, j'ai testé mes propres commandes, en lien avec l'affichage fenêtré de Captvty qui reste pour moi le meilleur moyen de visualiser la vidéo.

Pour installer le device, il suffit de faire un clic droit => installer sur le fichier .msi. Ensuite, il faut configurer la base de registre pour que ffmpeg sache positionner et dimensionner la fenêtre. Vous pouvez créer un .reg contenant le texte ci-dessous et le fusionner à la base de registre si vous êtes sous XP. Je suppose que c'est assez proche, si ce n'est identique, sous des versions plus récentes de Windows.

Code: Tout sélectionner
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\UNREAL]

[HKEY_LOCAL_MACHINE\SOFTWARE\UNREAL\Live]

[HKEY_LOCAL_MACHINE\SOFTWARE\UNREAL\Live\UScreenCapture]
"MonitorNum"=dword:00000001
"Left"=dword:00000214
"Right"=dword:0000056a
"Top"=dword:0000013a
"Bottom"=dword:0000031a
"FrameRate"=dword:00000019
"ShowCursor"=dword:00000000
"CaptureLayeredWindows"=dword:00000000


Venons-en maintenant à FFmpeg : c'est le cœur de tous les logiciels vidéo libres et c'est pourquoi je l'ai choisi. Il est pérenne, développé par des fans dans le monde entier. Il évolue en permanence et trouve de plus en plus d'applications (conversion, enregistrement, streaming ...). Sa rapidité d'évolution pose quelques soucis néanmoins. En particulier, dans VCTL, j'embarque une version assez ancienne qui ne saurait faire ce que nous allons faire ci-dessous mais a d'autres avantages. C'est pourquoi je n'intègre pas encore cette possibilité dans VCTL mais ça viendra peut-être un jour, à moins que Guillaume ne l'intègre directement dans Captvty. Bref, si vous n'avez pas une version récente de FFmpeg, il faut en installer une depuis ce site. Je l'ai mise pour ma part dans C:\Outils\FFmpeg car c'est un logiciel portable.

Nous y sommes presque. Dans le dossier où vous souhaitez ranger provisoirement vos captures, créer un fichier Capture.bat contenant ceci (à adapter à votre configuration, voir plus bas) :
Code: Tout sélectionner
c:\outils\ffmpeg\bin\ffmpeg -rtbufsize 1500M -f dshow -i video="UScreenCapture":audio="VIA HD Audio Stereo Mixer" -threads 0 -r 25 -c:v libx264 -preset ultrafast -tune zerolatency -crf 16 -c:a copy capture.mkv


Préparez l'affichage de votre vidéo avec Captvty mais lancez le .bat juste avant de lancer la visualisation de la vidéo en ayant pris soin de désactiver l'écran de veille et de mettre le son plutôt fort (quitte à couper vos HP). Laissez dérouler la vidéo et lorsque vous souhaitez arrêter, tapez q dans la fenêtre DOS. Vous obtiendrez un fichier capture.mkv assez volumineux que nous pourrons éventuellement réduire si nécessaire (voir plus bas).

Image

Ajustements selon votre configuration :

- Si la fenêtre se ferme et rien ne semble se passer, ajoutez une ligne contenant le mot PAUSE à la fin de Capture.bat et recommencez.
- Si vous avez une erreur signalée concernant la vidéo, le device est mal installé. Demandez de l'aide.
- Si vous avez une erreur signalée concernant uniquement l'audio, c'est sans doute que votre interface audio n'est pas une VIA HD comme moi.
    Créez le .bat suivant et exécutez-le. Vous connaîtrez ainsi le nom de tous les devices vidéo et audio disponibles.
    Repérez le nom de votre stéréo mixer et modifez Capture.bat en conséquence.
Code: Tout sélectionner
c:\outils\ffmpeg\bin\ffmpeg -list_devices true -f dshow -i dummy
PAUSE


Une fois que ça capture, il reste à vérifier que vous n'outrepassez pas les capacités de votre PC. Le premier marqueur est le nombre de fps affiché en bas de la fenêtre DOS. Il doit est (supérieur ou) égal à 25. Si ce n'est pas le cas, même si c'est des chutes fugitives mais répétées, un deuxième marqueur est la quantité de mémoire utilisée par votre PC : elle doit dans ce cas augmenter continument. Vous allez alors vers une saturation de buffer qui se traduira à plus ou moins court terme par des messages rouges dans la console et des sauts dans la vidéo et le son. Dans ce cas, il faut réduire la valeur du paramètre crf dans le .bat ( la limite est 0 ). Ceci a pour conséquence d'augmenter notablement la taille du fichier qui n'est déjà pas petit. Avec crf = 0, vous devriez taquiner les 15 Go de l'heure ! Quel que soit votre réglage, il est probable que vous pourrez post-traiter votre vidéo (avec VCTL par exemple) pour lui donner un ratio qualité/taille plus adapté.

Si avec crf=0, vous ne tenez toujours pas les 25 fps, il faut voir à combien ça se stabilise et mettre cette valeur ( en décimal ! ) dans le FrameRate en Base de Registre (actuellement, la valeur est 19 Hexadécimal soit 25 Décimal). Bien sûr, ceci se fera au détriment de la qualité et vous verrez des cisaillements, en particulier sur les rotations et travellings, que vous ne pourrez pas supprimer.

Dans tous les cas si vous ne saturez pas, en post-traitant avec VCTL, vous pourrez descendre à du 400 Mo de l'heure pour une qualité acceptable et 800 Mo de l'heure pour une bonne qualité. Mais comme je suis un puriste, je ne peux pas laisser sous silence le fait que j'ai constaté des légers décalages son/image dans certaines parties de vidéos post-traitées. Ces décalages ne sont pas constants et je me demande même s'ils ne sont pas dépendants de la façon dont on lance la lecture ou "saute" dans la barre de temps. Affaire à suivre.

Un autre marqueur est la puissance CPU utilisée. Il me semble, mais ça reste à prouver, qu'il vaut mieux que la puissance consommée par la capture ne dépasse pas celle d'un cœur (même si on est en multi-threads), donc 25% par exemple pour un 4 cœurs.

J'attends vos retours d'expériences et commentaires.
Cordialement
Pulsar33

PS : attention à régler correctement votre Stéréo Mixer !
Rien ne vous empêche d'ailleurs de capturer la vidéo d'un duo mémorable entre vous et votre vedette préférée :D
Mes matériels : PCs MINT 21.3, 3 x Raspberry PI4, NAS Asustor, Disques Multimédia EMTEC, Tuners TNT TERRATEC, Camescope DV, Caméra 4KVR360
Avatar de l’utilisateur
Pulsar33
 
Messages: 2701
Inscription: Dim 30 Sep 2012 14:23
Localisation: Bordeaux

Re: Capture d'écran (ScreenCasting) vidéo + son

Messagede czmaster » Dim 26 Jan 2014 18:25

Salut,

Merci pour le tuto.

Premier éssai, première erreur :
Code: Tout sélectionner
[dshow @ 003bc660] Could not enumerate video devices.
video=UScreenCapture:audio=VIA HD Audio Stereo Mixer: Input/output error


Soit je n'ai pas la bonne config, soit j'ai mal fait quelque chose
J'ai un ordinateur W7 64bits j'ai donc téléchargé la version 64bits de UScreenCapture

J'ai une carte VIA High Definition Audio, donc ça devrait passé, mais bon ...

A+
Administrateur du forum
czmaster
Administrateur du site
 
Messages: 1425
Inscription: Sam 2 Juil 2011 10:41
Localisation: France

Re: Capture d'écran (ScreenCasting) vidéo + son

Messagede Pulsar33 » Dim 26 Jan 2014 18:32

Bonsoir czmaster,

C'est en forgeant qu'on devient forgeron :D

Premières réactions :
- Je ne peux pas essayer la version 64 bits mais tu peux essayer la 32 bits
- On dirait plutôt un problème d'occupation des devices : n'as-tu pas un autre logiciel actif qui les bloque ?
- Peux-tu néanmoins effectuer c:\outils\ffmpeg\bin\ffmpeg -list_devices true -f dshow -i dummy et lister le résultat ici ?

Code: Tout sélectionner
Microsoft Windows XP [version 5.1.2600]
(C) Copyright 1985-2001 Microsoft Corp.

C:\Outils\ffmpeg\bin>ffmpeg -list_devices true -f dshow -i dummy
ffmpeg version N-56525-g5b153f8 Copyright (c) 2000-2013 the FFmpeg developers
  built on Sep 21 2013 00:35:37 with gcc 4.7.3 (GCC)
  configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfi
g --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libcaca --enable-libfreetyp
e --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopenco
re-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libsp
eex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-li
bvorbis --enable-libvpx --enable-libwavpack --enable-libx264 --enable-libxavs --enable-libxvid --enable-zlib
  libavutil      52. 45.100 / 52. 45.100
  libavcodec     55. 33.100 / 55. 33.100
  libavformat    55. 18.102 / 55. 18.102
  libavdevice    55.  3.100 / 55.  3.100
  libavfilter     3. 86.102 /  3. 86.102
  libswscale      2.  5.100 /  2.  5.100
  libswresample   0. 17.103 /  0. 17.103
  libpostproc    52.  3.100 / 52.  3.100
[dshow @ 02997a60] DirectShow video devices
[dshow @ 02997a60]  "Philips PCVC750K Camera; Video"
[dshow @ 02997a60]  "Corel Camera Plug-in"
[dshow @ 02997a60]  "CorelScreenCapture"
[dshow @ 02997a60]  "UScreenCapture"
[dshow @ 02997a60] DirectShow audio devices
[dshow @ 02997a60]  "VIA HD Audio Microphone"
[dshow @ 02997a60]  "Appareil photo Philips PCVC750K"
[dshow @ 02997a60]  "VIA HD Audio CD In"
[dshow @ 02997a60]  "VIA HD Audio Front Microphone"
[dshow @ 02997a60]  "VIA HD Audio Line In"
[dshow @ 02997a60]  "VIA HD Audio Stereo Mixer"
dummy: Immediate exit requested

C:\Outils\ffmpeg\bin>


Cordialement
Pulsar33
Mes matériels : PCs MINT 21.3, 3 x Raspberry PI4, NAS Asustor, Disques Multimédia EMTEC, Tuners TNT TERRATEC, Camescope DV, Caméra 4KVR360
Avatar de l’utilisateur
Pulsar33
 
Messages: 2701
Inscription: Dim 30 Sep 2012 14:23
Localisation: Bordeaux

Re: Capture d'écran (ScreenCasting) vidéo + son

Messagede reg3 » Lun 27 Jan 2014 04:12

czmaster a écrit:J'ai un ordinateur W7 64bits j'ai donc téléchargé la version 64bits de UScreenCapture


Idem :lolreb:
mais 1ere difficulté je trouve pas UNREAL dans le registre ou il devrait être :oops:

J'ai avec 1 recherche UNREAL:
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Classes\TypeLib\{9DD44A01-9C3C-4EB3-90AB-50A290E323E7}\1.0\0\win64

mais rien directement dans HKEY_LOCAL_MACHINE\SOFTWARE\
faut il creer: HKEY_LOCAL_MACHINE\SOFTWARE\UNREAL ?

Merci.
reg3
 
Messages: 41
Inscription: Sam 25 Jan 2014 05:53

Re: Capture d'écran (ScreenCasting) vidéo + son

Messagede Pulsar33 » Lun 27 Jan 2014 07:33

Bonjour,

@reg3 : oui il est conseillé de créer ces variables ( voir le Readme.txt dans la distribution )
C'est pourquoi j'ai fourni le contenu du .reg obtenu en exportant la branche que j'ai créée moi-même.
Ne sachant pas si la base de registres des versions plus récentes de Windows est compatible avec celle de XP, je vous laisse juger du meilleur moyen de modifier votre base de registres

Ensuite, si le problème persiste, merci de donner le résultat de cette commande => c:\outils\ffmpeg\bin\ffmpeg -list_devices true -f dshow -i dummy
La trace complète de ce qui est dit au lancement dans la fenêtre DOS pourrait également aider à comprendre ...

Bonne journée
Pulsar33
Mes matériels : PCs MINT 21.3, 3 x Raspberry PI4, NAS Asustor, Disques Multimédia EMTEC, Tuners TNT TERRATEC, Camescope DV, Caméra 4KVR360
Avatar de l’utilisateur
Pulsar33
 
Messages: 2701
Inscription: Dim 30 Sep 2012 14:23
Localisation: Bordeaux

Re: Capture d'écran (ScreenCasting) vidéo + son

Messagede Pulsar33 » Mar 28 Jan 2014 07:10

Bonjour

@aazerty (qui a depuis supprimé son message) : oui bien sûr. On peut même (ce que j'ai fait) passer le nom de la vidéo en paramètre :

Code: Tout sélectionner
c:\outils\ffmpeg\bin\ffmpeg -rtbufsize 1500M -f dshow -i video="UScreenCapture":audio="VIA HD Audio Stereo Mixer" -threads 0 -r 25 -c:v libx264 -preset ultrafast -tune zerolatency -crf 16 -c:a copy %1.mkv

Est-ce que ce procédé de capture fonctionne pour toi et sous quelle configuration ?

Bonne journée
Pulsar33
Mes matériels : PCs MINT 21.3, 3 x Raspberry PI4, NAS Asustor, Disques Multimédia EMTEC, Tuners TNT TERRATEC, Camescope DV, Caméra 4KVR360
Avatar de l’utilisateur
Pulsar33
 
Messages: 2701
Inscription: Dim 30 Sep 2012 14:23
Localisation: Bordeaux

Re: Capture d'écran (ScreenCasting) vidéo + son

Messagede Pulsar33 » Mer 29 Jan 2014 01:19

Bonsoir,

@aazerty (qui a depuis supprimé son message) :

1) Oui pour les tabulations. C'est le forum qui en est responsable, désolé.
2) ok
3) Le son étant pris en sortie du mixer, il n'est pas normalisé et peut sembler faible à la lecture si on n'a pas forcé à l'enregistrement.
4) Il n'est pas souhaitable de mettre en plein écran (gâchis de puissance et taille disque). Les valeurs données évitent (normalement) de devoir rogner
5) Non. Pour un arrêt "propre" et sans confirmation => q
6) Il n'y a pas de raison que ça marche pour l'une et pas pour l'autre. Voir aussi 3)
7) Pourquoi pas. Comme indiqué, on peut diviser par 5 ou 10 à qualité acceptable en recodant avec VCTL
8) Si ton écran n'est pas en 1920x1080, il faut rectifier les valeurs Left Right Top Bottom. Voir aussi 4)

Tutos : oui mais il faut alors utiliser des réglages différents et brancher un micro :)
- mettre "ShowCursor"=dword:00000001 pour que le curseur soit visible
- passer effectivement en plein écran sans doute dans ce cas
- réduire éventuellement la fréquence -r 15 et le "FrameRate"=dword:0000000F et augmenter la compression -crf 28 (par exemple)


Cordialement
Pulsar33
Mes matériels : PCs MINT 21.3, 3 x Raspberry PI4, NAS Asustor, Disques Multimédia EMTEC, Tuners TNT TERRATEC, Camescope DV, Caméra 4KVR360
Avatar de l’utilisateur
Pulsar33
 
Messages: 2701
Inscription: Dim 30 Sep 2012 14:23
Localisation: Bordeaux

Re: Capture d'écran (ScreenCasting) vidéo + son

Messagede Pulsar33 » Mer 29 Jan 2014 02:04

Re,

Tutos : j'avais oublié le FrameRate (corrigé)

5) CTRL-C est violent. FFmpeg semble sensible à la casse : Q ne marche pas mais q fonctionne
=> J'ai corrigé le Tuto, désolé ...

4) La partie utile de l'image du lecteur embarqué de Captvty fait 854 x 480.
Pour un écran de 1024x768, les valeurs décimales doivent être proches de :
Left = 84 Right = 938 Top = 160 Bottom = 640 (mais je peux me tromper)

Bonne nuit
Pulsar33
Mes matériels : PCs MINT 21.3, 3 x Raspberry PI4, NAS Asustor, Disques Multimédia EMTEC, Tuners TNT TERRATEC, Camescope DV, Caméra 4KVR360
Avatar de l’utilisateur
Pulsar33
 
Messages: 2701
Inscription: Dim 30 Sep 2012 14:23
Localisation: Bordeaux

Re: Capture d'écran (ScreenCasting) vidéo + son

Messagede chaozu » Mer 23 Avr 2014 17:02

J'ai essayé la méthode lourde, mais je bloque :-(
could.not.enumerate.audio.devices.1.jpg
could.not.enumerate.audio.devices.1.jpg (91.22 Kio) Vu 16643 fois

could.not.enumerate.audio.devices.2.jpg
could.not.enumerate.audio.devices.2.jpg (95.88 Kio) Vu 16643 fois

Windows 8.1 64-bit
audio : Realtek ALC887 (drivers 64bit_Win7_Win8_Win81_R273)
ffmpeg-20140423-git-e79b15f-win64-static.7z et UScreenCapture(x64).zip installés
chaozu
 
Messages: 22
Inscription: Jeu 25 Oct 2012 06:35

Re: Capture d'écran (ScreenCasting) vidéo + son

Messagede Pulsar33 » Mer 23 Avr 2014 19:37

Bonsoir,

@chaozu : c'est ennuyeux. On va essayer de déterminer le nom de ton mixer autrement.
Le problème est que je ne connais pas W8 et pas trop W7. Je suis sous XP.
Sais-tu exécuter Dxdiag ? Sous XP , je fais Démarrer / Exécuter / je tape Dxdiag et je fais OK
Une fois que DxDiag a fait son diagnostic, fais "Enregistrer toutes les informations" dans un fichier texte.
Ouvre ce fichier et cherche "Mixer".
Moi, je trouve :

Code: Tout sélectionner
---------------------
Sound Capture Devices
---------------------
            Description: VIA HD Audio Microphone
  ...

            Description: VIA HD Audio Stereo Mixer
  Default Sound Capture: No
  Default Voice Capture: No
            Driver Name: viahduaa.sys
         Driver Version: 6.00.0001.7500 (English)
      Driver Attributes: Final Retail
          Date and Size: 9/17/2009 12:00:30, 1399680 bytes
              Cap Flags: 0x41
           Format Flags: 0xCC0


C'est la chaine de caractères qui suit Description: qu'il faut mettre entre cotes pour nommer ton périphérique audio.
Pour moi, ça donne "VIA HD Audio Stereo Mixer"

Est-ce que ça améliore les choses ?

Cordialement
Pulsar33
Mes matériels : PCs MINT 21.3, 3 x Raspberry PI4, NAS Asustor, Disques Multimédia EMTEC, Tuners TNT TERRATEC, Camescope DV, Caméra 4KVR360
Avatar de l’utilisateur
Pulsar33
 
Messages: 2701
Inscription: Dim 30 Sep 2012 14:23
Localisation: Bordeaux

Suivante

Retourner vers Replay, Vidéo, Multimédia

Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 12 invités