Connaître durée d'un fichier video et audio [Résolu]

Neo020585 178 Messages postés lundi 10 mars 2003Date d'inscription 6 juillet 2009 Dernière intervention - 24 mai 2006 à 19:41 - Dernière réponse : Neo020585 178 Messages postés lundi 10 mars 2003Date d'inscription 6 juillet 2009 Dernière intervention
- 25 mai 2006 à 15:33
Bonjour tout le monde !


J'ai un problème :


J'aimerais, d'une manière simple et rapide, connaître la durée d'un fichier avi, mp3, mov, mpg, ...


J'ai entendu dire que cela était possible en récupérant les valeurs contenues dans l'entête du fichier.

Si quelqu'un a une solution à me proposer, je suis partant !


D'avance merci
Néo020585

La programmation, c'est l'art de découvrir
Afficher la suite 

4 réponses

Répondre au sujet
cs_coq 6366 Messages postés samedi 1 juin 2002Date d'inscription 2 août 2014 Dernière intervention - 25 mai 2006 à 12:31
+3
Utile
Salut,

Essaie de regarder du côté de MediaInfo, notamment sa distribution "DLL". (si mes souvenirs sont bons un exemple C# est fournis)

/*
coq
MVP Visual C#
*/
Cette réponse vous a-t-elle aidé ?  
Commenter la réponse de cs_coq
cs_Bidou 5507 Messages postés dimanche 4 août 2002Date d'inscription 20 juin 2013 Dernière intervention - 25 mai 2006 à 09:42
0
Utile
Salut,
Je ne suis pas certain de ce que j'avance (d'autres viendront me corriger si nécessaire) mais je ne crois pas ce que ça soit possible de lire "génériquement" la durée d'un fichier.
Tout dépend le type de fichier, la méthode sera différente...

Ici, un exemple pour les fichiers avi qui utilise DirectX
Mp3 et Wav

VC# forever
=13319
Commenter la réponse de cs_Bidou
Neo020585 178 Messages postés lundi 10 mars 2003Date d'inscription 6 juillet 2009 Dernière intervention - 25 mai 2006 à 12:15
0
Utile
J'ai bien évidemment déjà chercher sur la toile des réponses, en vain !

Je te met donc le code d'erreur généré par Visual Studio 2005 lors de l'execution du code :

           Video v = new Video(filename, false);

            double duration = v.Duration;

            MessageBox.Show(duration.ToString());

(j'ai pensé à ajouter la dll en réference et à faire using Microsoft.DirectX.AudioVideoPlayback;)


Message d'erreur :

    La DLL
'C:\WINDOWS\assembly\GAC\Microsoft.DirectX\1.0.2902.0__31bf3856ad364e35\Microsoft.DirectX.dll'
tente une exécution managée dans le verrou du chargeur du système
d'exploitation. N'essayez pas d'exécuter du code managé dans une
fonction d'initialisation d'image ou DllMain, car cela risque
d'entraîner un blocage de l'application.


Le code ne fonctionne pas, et je ne vois pas pourquoi !
Néo020585

La programmation, c'est l'art de découvrir
Commenter la réponse de Neo020585
Neo020585 178 Messages postés lundi 10 mars 2003Date d'inscription 6 juillet 2009 Dernière intervention - 25 mai 2006 à 15:33
0
Utile
Je vous remercie vous 2 pour m'avoir aider dans ce problème.

La solution de coq fonctionne à peu près comme je le veux.


En effet, elle refuse de me donner la durée pour les fichier Quicktime (.mov), mais c pas très grave.

Elle fonctionne pour un bon paquet de fichier !


Merci encore

Néo020585

La programmation, c'est l'art de découvrir
Commenter la réponse de Neo020585

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.