Comment capturer un NSImage de l'écran dans Cocoa? J'ai besoin de savoir le chemin le plus rapide, parce que j'essaye de faire une application de screencasting.Capture d'écran cacao?
Répondre
Voir l'exemple OpenGLCaptureToMovie. J'ajouterais que vous devriez utiliser Quartz Display Services' refresh-notification APIs au lieu d'une minuterie.
Notez que l'exemple OpenGL ne produit pas d'objets NSImage. Cela ne sert à rien, puisque vous ne pouvez pas les mettre dans un film. Eh bien, je suppose que vous pourriez assigner un NSImage à une heure donnée, mais je ne sais pas si cela fonctionnerait bien avec la compression.
En parlant de compression, utilisez le codec Animation à la qualité maximale pour votre enregistrement. Cela fournit une compression assez décente pour ne pas submerger le disque, et certainement pas submerger les processeurs. Vous pouvez ensuite proposer des options de conversion, telles que H.264, H.264 pour iPhone et H.264 pour iPod. Vous devez également autoriser l'utilisateur à conserver le fichier d'origine. Certains sites, tels que Vimeo, l'accepteront et permettront aux visiteurs de le télécharger.
- 1. image de capture de cacao de webcam
- 2. Timing? - cacao
- 3. Exemples d'applications au cacao
- 4. cacao Applications documentaires
- 5. Cacao: Masquer une application
- 6. Menu cacao avec images
- 7. capture capture instantanée avec contrôle flash
- 8. changement innerHTML du cacao DOMElement
- 9. intégrant applescript dans le cacao
- 10. cacao + skip os fichiers générés
- 11. Serveur de symboles cacao/pomme
- 12. ASP.Net, Capture d'image/capture d'écran de l'erreur client
- 13. Sortie de capture Ant
- 14. Clé de capture JavaScript
- 15. Capture générique pour python
- 16. Capture vidéo sur MacOS
- 17. UIWebView - clics de capture
- 18. capture submit event
- 19. PDO Résultat de capture
- 20. capture le message d'échec
- 21. Où est le cacao-net dans Mono
- 22. Fuites de mémoire dans le cacao
- 23. Trouver des applications installées dans le cacao
- 24. Contrôle du calendrier pour le cacao tactile
- 25. De bonnes façons d'apprendre le cacao?
- 26. ajouter NSTimeInterval à NSDate dans le cacao
- 27. erreur avec l'importation <cacao/cacao.h>
- 28. Les polices carbone/cacao sont différentes
- 29. PDF en JPG Conversion en CACAO
- 30. Applet de capture d'écran Java
La vieille réponse est ancienne. Aujourd'hui, j'utiliserais l'API CGWindowList pour effectuer la capture, et je ne passerais à OpenGL que si CGWindowList s'avère trop lent. –
Merci @Peter pour cette mise à jour de la vieille réponse. Je voulais faire un enregistrement à l'écran open source, y a-t-il de nouveaux éléments que vous pouvez ajouter? :) – Noitidart
@Noitidart: https://developer.apple.com/library/mac/documentation/Carbon/Reference/CGWindow_Reference/ –