Il existe une caméra Web IP dans laquelle j'ai écrit une classe .NET il y a un certain temps. Il s'agit essentiellement d'une implémentation de Timer qui envoie un script CGI instantané à la caméra toutes les cinq secondes. La caméra elle-même est très rudamentaire; Je n'ai aucune sorte d'API avec laquelle travailler, la seule chose que je peux faire par programmation (à distance) est d'invoquer ce script. Le script renvoie une image JPEG 640x480. Simple. Maintenant, ce que je dois être en mesure de faire est de prendre une journée de ces images, et de créer un flux vidéo AVI "time-lapse" qui sera finalement intégré dans une page Web. Comment puis-je faire cela avec VB.NET?Création d'un flux vidéo (AVI) à partir d'une série d'images
Répondre
.net ne prend pas directement en charge les formats vidéo. Votre meilleure option serait d'utiliser un outil tiers pour générer le fichier .avi.
ffmpeg est une option. Vous pouvez y accéder directement via une ligne de commande comme ceci:
ffmpeg -f image2 -i img%d.jpg /output/a.mpg
Vous devez nommer vos images img1.jpg, img2.jpg etc. Pour plus de détails, voir le ffmpeg faq. Vous devriez également trouver des détails dans la FAQ sur la façon de produire différents formats vidéo.
Vous pouvez démarrer un processus à partir de vb en utilisant Process.Start(). Quelque chose comme ceci:
Process.Start("ffmpeg.exe", "-f image2 -i img%d.jpg /output/a.mpg")
Vous pouvez également jeter un oeil à ffmpeg-sharp ou Tao.FFmpeg, ils enveloppent .net pour les bibliothèques ffmpeg. Je n'ai pas essayé personnellement, mais on dirait que ça pourrait vous aider.
Une autre alternative serait de jeter un oeil à MEncoder, qui a des fonctionnalités similaires. Vous devriez être capable de rechercher une ligne de commande similaire pour cet outil.
[SO question connexe: 271003]
Cela ressemble à une bonne solution. Espérait une bibliothèque, mais je peux lancer ce processus séparé sans problème. –
@Josh. J'ai ajouté des liens vers des bibliothèques de wrappers que vous pourriez vouloir extraire. –
ffmpeg-sharp ne compile pas, et je ne trouve pas n'importe où pour télécharger Tao.FFmpeg –
Plusieurs outils de ligne de commande peuvent prendre une série d'images et générer un fichier AVI. Je vous suggère d'appeler l'un d'eux de votre application.
Je voudrais fournir des liens vers des suggestions, mais cela fait des années que j'en ai utilisé une.
Edit: apparemment, vous pouvez le faire en utilisant ffmpeg: http://ffmpeg.org/ffmpeg-doc.html
Pour créer une vidéo à partir d'images:
ffmpeg -f image2 -i foo-% 03d.jpeg -r 12 - s WxH foo.avi
la syntaxe foo-% 03d.jpeg spécifie à utiliser un nombre décimal composé de trois chiffres rembourré avec des zéros pour exprimer le numéro de séquence. C'est la même syntaxe supportée par la fonction C printf , mais seuls les formats acceptant un entier normal conviennent.
Darn, trop tard. D'autres ont posté pendant que j'ajoutais ma modification. – Jermismo
FFMpeg a des binaires Windows et est très populaire.
Making movies from image files using ffmpeg/mencoder
Vous devez vérifier si les formats de sortie disponibles vous conviennent.
Ceci est un wrapper C# par quelqu'un à CodeProject:
http://www.codeproject.com/KB/audio-video/avifilewrapper.aspx
Cette enveloppe doit vous fournir ce dont vous avez besoin.
nobugz fourni ce lien dans le commentaire. –
Ah, ce n'était pas là quand j'ai posté cette réponse (n'avait pas rafraîchi la page) –
- 1. Comment extraire des couches vidéo à partir d'un fichier AVI?
- 2. Création de fichiers AVI dans OpenCV
- 3. vidéo partagée (avi/h264) sur l'image clé
- 4. Création d'un fichier vidéo
- 5. lenth d'un fichier vidéo flv -mpg -avi
- 6. comment je peux réorganiser les images d'une vidéo avi?
- 7. Transformer une vidéo AVI en .NET
- 8. Comment créer un fichier AVI non compressé à partir d'une vidéo compressée à l'aide de FFMPEG
- 9. ffmpeg-php - avi à flv, longueur vidéo et audio
- 10. Extrait audio à partir d'un flux vidéo en python
- 11. Flux vidéo à partir de stockage isolé dans wp7
- 12. Création d'un fichier vidéo à partir d'images et d'audio (préenregistré)
- 13. Création d'un NSTableView Affichage d'articles à partir d'un flux RSS
- 14. Création d'un tableau Nsmutable à partir du flux xml
- 15. Flux vidéo sur Ethernet
- 16. DirectShow + AVI non compressé
- 17. Flux vidéo CCTV personnalisé
- 18. Lecture à partir du port série verrouille
- 19. Conversion de BMP en AVI
- 20. Traitement de flux vidéo webcam
- 21. Comment analyser un flux vidéo
- 22. Flux vidéo Silverlight 4 Multicast
- 23. Encodage d'une vidéo h264 à partir d'images png ... en JAVA
- 24. codes à convertir de AVI à ASF
- 25. Enregistrement d'un flux vidéo en direct en C#/XNA
- 26. Flux vidéo en direct Web cam aggregator
- 27. (discussion) défis dans la création d'un lecteur vidéo qui peut diffuser une vidéo à partir du serveur distant
- 28. Création d'un flux à partir d'une liste de liens dans les tuyaux Yahoo
- 29. Comment compresser un fichier vidéo (.wmv, .avi, .flv) sans affecter sa qualité vidéo
- 30. Java: Faire une animation/vidéo à partir d'images
Découvrez ce projet: http://www.codeproject.com/KB/audio-video/avifilewrapper.aspx –
Nice !! Êtes-vous le même nobugz des forums MSDN? –