Ce programme permet d'« enregistrer » votre bureau, ou même de le diffuser !
Il comprend une aide pour « enregistrer votre capture d'écran/la diffuser en continu » et des utilitaires de configuration. Il comprend également un assistant (capteur audio virtuel) pour enregistrer « ce que vous entendez/voyez sur votre bureau » pour le système Vista+.
Afin de les utiliser, vous devrez d'abord installer Java JRE sur votre système. Installez depuis java.com si vous ne l'avez pas installé.
Il comprend également un filtre de capture de source de bureau/écran directshow gratuit, à usage général et open source.
Vous pouvez l'utiliser avec n'importe quel programme (compatible Directshow) pour capturer ou diffuser, comme VLC, etc.
Voir également le fichier ChangeLog.txt pour une liste des modifications apportées aux dernières versions.
Téléchargez le programme d'installation et exécutez, à partir de
https://github.com/rdp/screen-capture-recorder-to-video-windows-free/releases
Il comprend également un dispositif de filtre de capture de source directshow pour enregistrer « ce que vous entendez » sous Windows 7/Vista —n'importe quelle carte son ! voir https://github.com/rdp/virtual-audio-capture-grabber-device pour plus d'informations/dépannage de ce périphérique de capture audio.
Utilisez certains programmes d'assistance fournis dans le menu Démarrer → Programmes → Screen Capture Recorder → record desktp[/broadcast/XXX
Ou utilisez n'importe quel programme tiers capable de lire à partir d'un périphérique de capture Directshow (ex : VLC/FFmpeg).
Exemple VLC : http://betterlogic.com/roger/2010/07/how-to-use-vlc-as-a-free-open-source-alternative-to-playon-tv
Exemple ffmpeg :
$ ffplay -f dshow -i video="capture d'écran-enregistreur"
ou
$ ffmpeg -f dshow -i video="screen-capture-recorder" -r 20 -t 10 screen-capture.mp4 # -t 10 pour un enregistrement de 10 secondes
ou combinez-le avec l'enregistrement audio de « ce que vous entendez » [vista/windows 7] (en utilisant ffmpeg dans cet exemple) :
$ ffmpeg -f dshow -i audio="virtual-audio-capturer":video="screen-capture-recorder" yo.mp4
Notez également que ffmpeg dispose d'une option d'entrée "gdigrab" intégrée que vous pouvez également utiliser à la place de l'enregistreur de capture d'écran.
Le nom du périphérique audio peut également être celui de n'importe quel autre périphérique audio dshow.
Avisynth fonctionne également avec. Ajoutez-le à un graphique de filtre à l'aide de graphedit, puis utilisez DirectShowSource comme source d'entrée avec ce nom de fichier graphedit spécifié.
gstreamer fonctionne également, ex :
$ gst-launch.exe dshowvideosrc nom-de-l'appareil=screen-capture-recorder ! ffmpegespacecouleur ! évier à tirage direct
J'ai même demandé à Skype de l'utiliser accidentellement, pensant que c'était ma webcam. Faites-moi savoir si vous souhaitez un moyen plus simple pour quoi que ce soit.
Par défaut, il capture le "plein écran" du moniteur principal du bureau (toutes les fenêtres, se chevauchant, à partir de là, avec aéro si vista+, sans fenêtres transparentes si non aéro).
Pour le configurer différemment, exécutez les « utilitaires/raccourcis de configuration » fournis ou ajustez les paramètres du registre avant de démarrer une exécution (utilisateurs avancés uniquement) :
HKEY_CURRENT_USERSoftwarescreen-capture-recorder
avec les clés DWORD respectées de start_XXX etc… (voir le fichier inclus {installdir}configuration_setup_utilitysetup_screen_tracker_params.rb pour la liste complète des valeurs de clé de registre disponibles, ou voir https://github.com/rdp/screen-capture-recorder-to-video-windows-free/blob/master/configuration_setup_utility/setup_screen_tracker_params.rb#L9 )
ex : voir le fichier configuration_setup_utilityincoming.reg (bien que ces valeurs soient en hexadécimal, donc éditer ce fichier est un peu fastidieux - j'utilise toujours simplement regedit ou les utilitaires de script qui l'accompagnent et je ne le modifie pas à la main).
Pour "réinitialiser" une valeur, supprimez sa clé.
OU
créez un fichier nommé ceci : %APPDATA%ScreenCaptureRecorder.ini
avec un contenu comme celui-ci, tout va dans une section "all_settings"
your_first_setting=1 your_second_setting=100 …
Par défaut, il lit d'abord le registre. S'il n'y trouve rien, il recherchera dans le fichier .ini.
Exécutez l'utilitaire « Analysez votre vitesse de capture » pour voir la lenteur avec laquelle votre système peut capturer.
Si vous êtes sur Vista+, désactivez le gestionnaire d'affichage aérodynamique (surtout si vous avez deux moniteurs, cela peut aider). http://www.howtogeek.com/howto/windows-vista/disable-aero-on-windows-vista
Il capture beaucoup plus rapidement si l'aéro est désactivé (comme avec l'aéro, la capture d'une fenêtre 650 x 976 prend 50 ms, sans aéro, 3 ms.
Le reste d'une capture d'écran prend environ 7 ms (somme 10 ms sans aéro), vous pouvez donc voir le coût relatif que cela ajoute [!].
Il existe également un paramètre de registre permettant de le désactiver "automatiquement".
Je n'ai pu obtenir qu'un maximum de 15 images par seconde lors de la capture aérodynamique [envoyez-moi un message si vous voulez que j'envisage d'améliorer quelque peu cela, j'ai quelques idées…].
La désactivation ou l'activation de « l'accélération matérielle » pour le bureau peut également aider, ou la définir sur un arrêt au-dessus de aucun.
Essayez de passer d'une entrée 32 à 24 bits ou 16 bits (à partir de ceci) et/ou de changer la profondeur de votre bureau elle-même, ou les deux ! le plus rapide est l'affichage 16 bits avec capture en mode 16 bits – 400 ips whoa !).
Assurez-vous d'avoir suffisamment de RAM disponible (virtualbox est connu pour en monopoliser sans vous le dire). Désactivez également l'aéro si possible.
Notez que si votre sortie est, disons, de 10 ips "réellement utilisée" à la fin, ex : $ ffmpeg -f dshow -i video=video-capture-recorder -r 10 yo.mp4 -r 10 # fichier de sortie n'est que de 10 images par seconde
Ensuite, pour économiser le processeur, une "bonne" application demandera également aux "fps source" d'être de 10 fps $ ffmpeg -framerate 10 -f dshow -i video=video-capture-recorder -r 10 yo.mp4 # l'entrée et la sortie sont réglé sur 10
pour une explication de pourquoi "framerate" et non "-r" ici, voir https://trac.ffmpeg.org/wiki/DirectShow#Specifyinginputframerate
qu'ils transmettent à ce filtre, et tout le monde est à 10 fps et, espérons-le, heureux, et le processeur est sauvegardé. ex : vlc.exe dshow:// … :dshow-fps=10 vlc le transmet ensuite à SetFormat après négociation, et l'appareil l'accepte et vous nourrit à 10 ips.
Certaines "mauvaises" applications DirectShow ne transmettent pas ce paramètre. La plupart le peuvent. Il peut donc y avoir un cas où il gaspille le processeur d'une manière ou d'une autre, en en capturant trop ou autre. Donc, pour ces programmes, vous souhaiterez définir le paramètre max fps, ce qui limitera sa fréquence de capture.
Définir des images par seconde maximales supérieures à 30 vous permet également d'obtenir des images par seconde supérieures à 30 (le maximum par défaut). Il les "active", en lui donnant une valeur par défaut maximale plus élevée. Je ne pensais pas que les gens s'en soucieraient / les voudraient normalement, alors voilà.
NB que pour l'utiliser comme caméra d'entrée Skype, vous devez préciser qu'il s'agit d'une capture raisonnablement petite, voir http://betterlogic.com/roger/2012/04/skype-directshow-device-just-shows-circles- pour-la-capture-d'aperçu/
Limitation connue, essayez ce fil : https://groups.google.com/forum/#!topic/roger-projects/uxmGV_vW4iY [ou payez-moi un peu d'argent et je créerai une interface pour l'excellent projet OBS pour fournir cette fonctionnalité]
D'autres commentaires/problèmes/questions envoyez-moi un ping à [email protected] ou parcourez la liste de diffusion : http://groups.google.com/group/roger-projects Ou soumettez-les à notre uservoice : http://rdp.uservoice. com
Vous pouvez redistribuer cela. Voir le fichier LICENSE.TXT. Si vous le faites, il vous suffira peut-être de distribuer par exemple le fichier PushDesktop.dll. Si vous le faites, vous devrez enregistrer cet appareil, en enregistrant sa DLL (comme $ regsvr32 PushDesktop.dll—peut nécessiter des droits d'administrateur) dans le cadre de votre installer. Notez également que les utilisateurs finaux ont également besoin du redistribuable MSVC 2010 préalablement installé (ou vous devez le rendre disponible dans le même répertoire que votre exe) pour que la DLL fonctionne/installe, au cas où les utilisateurs finaux ne l'auraient pas installé). Si vous le modifiez et le redistribuez, vous souhaiterez peut-être modifier les GUID, afin qu'ils n'entrent pas en conflit si quelqu'un installe également ce logiciel. Voir aussi #17
Le code est doucement basé sur/extrait de ("inspiré par") celui du SDK Windows 7.1 ….Microsoft SDKsWindowsv7.1Samplesmultimediadirectshowfilterspushsource ainsi que d'autres démos dshow sur le net (tmhare capture virtuelle). vous souhaiterez donc probablement installer le SDK Windows avant de jouer avec le code source. Pour pirater le code, créez les classes de base directshow du SDK Windows, puis ouvrez source_code/*.vcxproj dans Visual Studio 2010 Express. Ceci est destiné à fournir un "filtre directshow" que vous pouvez utiliser dans votre graphique, et non une démonstration de la façon de créer des graphiques. Il génère un fichier .dll que vous "enregistrez" via (dans la console d'administrateur) $ regsvr32 XXX.dll (et désinscrivez-vous lorsque vous avez terminé avec regsvr32 /u XXX.dll). Il existe également des scripts pour définir les valeurs de registre (écrites en ruby/jruby actuellement pour l'interface graphique) mais vous n'avez pas besoin de les ajuster pour jouer avec le filtre lui-même.
Je peux ajouter des fonctionnalités sur demande raisonnable.
En gros, vous voulez une fonctionnalité, envoyez-moi un ping, vous l'avez.
Pour le construire localement, installez VS Express 2010, installez le SDK Microsoft, ouvrez votre équivalent de Program FilesMicrosoft SDKsWindowsv7.1Samplesmultimediadirectshowbaseclassesbaseclasses.sln, construisez-le (débogage), ajoutez maintenant à votre build locale (propriétés du projet, à partir du code_sourcepushdesktop.sln), ajustez les répertoires VC++ (Include/Bibliothèque) pour pointer vers vos différents répertoires de classe de base.
L'utilitaire de test de vitesse inclus provenait à l'origine de http://stereopsis.com/blttest (bitblt dépend assez du matériel, on me dit, donc c'est bien de pouvoir tester sa vitesse).
Les binaires FFmpeg sont également inclus, voir leur site pour les détails de licence/source : http://ffmpeg.org
http://obsproject.com est open source, n'utilise pas FFmpeg mais pourrait fonctionner pour vous. Peut même capturer DirectX woot. http://www.ffsplit.com n'est pas open source, mais capture/diffuse le bureau à l'aide de FFmpeg. http://camstudio.org est open source et gratuit, mais vous oblige simplement à utiliser vos codecs locaux installés sur votre système Windows et présente quelques problèmes d'utilisation, c'est pourquoi j'ai même commencé ce projet en premier lieu :)