2009-11-11 5 views
1

Je veux créer un programme, qui obtient un fichier vidéo de Qt, convertit ce fichier vidéo en fichiers TIFF et les envoie à un algorithme qui gère ces fichiers TIFF.
Mes questions:Convertir un fichier vidéo au format TIFF avec ffmpeg.dll ou avcodec.dll? Est-ce que "à la volée" est possible?

  • est-il possible avec ffmpeg ou avcodec ne pas convertir un fichier vidéo en fichiers TIFF-première sur disque dur et de les envoyer à l'algorithme après, mais pour convertir cadre pour le cadre et l'envoyer à l'algorithme tout de suite?
  • La question plus importante: Est-il possible de le faire pas avec un processus externe avec ffmpeg.exe, mais avec ffmpeg.dll? Ou est-ce seulement possible avec avcodec.dll? (Il ne doit pas être "à la volée" comme à mon point ci-dessus) Comment puis-je créer un fichier ffmpeg.dll avec en-tête et lib?
+0

Je ne suis pas maître avec l'aide de mots, mais je changer quelques petites choses ici. Je suppose que par * algorithme * vous voulez dire un * programme * ou * script *, en "ne sauvegardant pas sur le disque dur d'abord" vous vouliez dire "l'attraper comme une variable sur votre script", ce qui serait beaucoup plus rapide, et finalement par "pas avec un processus externe" vous avez probablement voulu l'inclure dans votre programme C++ via un * dll *. Donc, je devinerais aussi que vous avez résolu tout cela maintenant. :) – cregox

Répondre

0

Création d'un fichier TIFF de 29 secondes dans un mpeg, en utilisant dd201110 ffmpeg peut être fait comme ceci:

ffmpeg -i 'test.mpg' -vframes 1 -compression_level 0 -ss 29 'test.tiff' 

YMMV :-D Si vous ne voulez stocker l'image sous forme de fichier, jetez un oeil à ffmpeg-php

http://ffmpeg-php.sourceforge.net/

$movie->getFrame([Integer framenumber])

Renvoie un cadre du film comme un objet ffmpeg_frame.

$frame->toGDImage()

Renvoie une image GD truecolor du cadre.

Il peut y avoir du code C ci-dessous vous pouvez réutiliser ..

Questions connexes