OpenCV videowriter codec H264 (ffmpeg)
Je veux enregistrer une vidéo avec opencv avec lossless compresion donc je ne perds pas de détails des images. Tout fonctionne avec le codec xvid mais offcourse ce n'est pas une compression sans perte donc j'ai trouvé que le codec x264 est adapté. Toutefois, il ne fonctionne pas, j'ai essayé l'exemple de code suivant, mais lors de l'exécution j'obtiens l'erreur suivante: "impossible de trouver le codeur pour codec id 28: codeur n'a pas trouvé."
cv::VideoWriter makeVideo;
makeVideo.open("makevideo//newVideo.mp4", CV_FOURCC('X','2','6','4'), 30, cv::Size(1600,1200), true);
cv::Mat image = imread("makevideo//frames//111.png");
for(int i = 0; i < 200; i++)
makeVideo << image;
makeVideo.release();
J'ai trouvé que pour ce travail, j'ai besoin d'avoir le support ffmpeg. Je suis actuellement à l'aide opencv2.4.6 et dans cette discussion (comment puis-je utiliser openCV FFMPEG e/S vidéo plutôt que le DirectShow un dans Windows?) quelqu'un a mentionné que, dans opencv2.4 ffmpeg est automatiquement inclus. Mais sa ne fonctionne pas....
Ici (Comment compiler OpenCV 2.3 avec le support ffmpeg avec Visual Studio 2010) j'ai trouvé comment faire pour compiler opencv et ffmpeg-vous sur windows. J'ai suivi toutes les étapes avec succès, mais toujours je reçois le même message d'erreur....
Comment voulez-vous dire le réel ffmpeg commande? Opencv appellera automatiquement le droit de ffmpeg commandes lorsque j'utilise le code que j'ai mis dans mon premier post?
Comment pouvez-vous savez que c'est la bonne commande sans le voir?
OriginalL'auteur alcon | 2013-11-12
Vous devez vous connecter pour publier un commentaire.
J'ai eu le même problème et impossible de trouver une solution. Alors maintenant, j'ai toujours utiliser -1 comme FOURCC et choisissez le codec x264 par la main.
Si vous mettez des -1 comme FOURCC une fenêtre s'ouvrira où vous pouvez choisir un codec.
Vrai. Ou définir des "0" pour la vidéo non compressée (assurez-vous que vous avez suffisamment d'espace dans le disque en premier).
J'ai mis -1 et mes options sont microsoft Vidéo 1 et Indeo. Comment puis-je obtenir les codecs de ce millénaire?
OpenCV montre, tout simplement, les codecs installés sur votre machine. Donc, fondamentalement, suffit d'installer n'importe quel codec que vous souhaitez utiliser (assurez-vous d'installer l'encodeur parce que certains codecs ne contiennent que le décodeur).
OriginalL'auteur littleimp