DURÉE D'UN FICHIER AUDIO ET VIDÉO GRÂCE À L'API MCISENDSTRING
Cacophrene
Messages postés251Date d'inscriptionlundi 29 mars 2004StatutMembreDernière intervention 4 mars 2008
-
18 mars 2006 à 19:36
Querieux
Messages postés8Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention22 février 2011
-
21 févr. 2011 à 18:32
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
Querieux
Messages postés8Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention22 février 2011 21 févr. 2011 à 18:32
Rien non plus avec type WAWAUDIO!
Querieux
Messages postés8Date d'inscriptionmercredi 17 août 2005StatutMembreDernière intervention22 février 2011 21 févr. 2011 à 18:11
Bonjour,
J'ai testé avec un fichier Wav et il ni y a pas de retour de la durée..!
Il faut certainement un autre paramètre que:
type MPEGVideo alias fichier
????
cs_Le Pivert
Messages postés7903Date d'inscriptionjeudi 13 septembre 2007StatutContributeurDernière intervention11 mars 2024137 10 juin 2009 à 13:54
Merci à Clementio pour ce code qui m'est bien utile.
Pour répondre à Christiansnif, j'ai eu besoin de ce code en VB2005, voici les lignes de code a changer:
Option Explicit On, a remplacer au bébut
Dim sRetString As String = Space(128) à remplacer dans la Function DureeFichier
lTemps = Math.Round(dTemps) à remplacer dans la Function FormatTemps
C'est tout et cela fonctionne.
@+ Le Pivert
christiansnif
Messages postés3Date d'inscriptionvendredi 11 janvier 2008StatutMembreDernière intervention23 décembre 2008 11 janv. 2008 à 11:14
Je débute en VB2005
J'ai copier ce code mais ne parviens pas à le faire fonctionner
A la création du buffer de 128 une erreur "fin d'instruction attendu" alors j'ai mis "Dim Variable as string=space(128)"
A l'utilisation le programme plante à l'appel de mciSendString erreur "mciSendString à déséquilibré la pile"
J'ai l'impression d'avoir tout essayé, mais sans doute pas la bonne manoeuvre, Si tu peux m'aider. D'avance je te remercie
Snif
clementio
Messages postés432Date d'inscriptionsamedi 18 mai 2002StatutMembreDernière intervention17 février 20141 31 mai 2006 à 00:27
Oui, c'est ce que j'ai dit plus haut...
cs_Beotien
Messages postés2Date d'inscriptionsamedi 12 avril 2003StatutMembreDernière intervention30 mai 2006 30 mai 2006 à 22:36
sauf erreur de ma part le resultat est seulement valable pour des fichier encodés en CBR je ne crois pas que cela fonctionne en VBR
clementio
Messages postés432Date d'inscriptionsamedi 18 mai 2002StatutMembreDernière intervention17 février 20141 18 mars 2006 à 19:48
Cacophrene --> Pour ta seconde qui diffère c'est que j'utilise la fonction round de VB qui arrondi à l'entier supèrieur ou inférieur. Windows Media Player doit arrondir à l'entier inférieur tout simplement...
clementio
Messages postés432Date d'inscriptionsamedi 18 mai 2002StatutMembreDernière intervention17 février 20141 18 mars 2006 à 19:40
En fait, je me suis plus concentré sur des vidéos volumineuses et chez moi le temps de réponse est de 3 à 4 secondes avec AVIFileInfo. Alors que là c'est quasi instantané.
Par contre j'ai remarqué que sur des mp3 encodés en VBR, le résultat est faux. Testez et dites-moi...
Cacophrene
Messages postés251Date d'inscriptionlundi 29 mars 2004StatutMembreDernière intervention 4 mars 20081 18 mars 2006 à 19:36
Salut !
J'ai testé ton code sur une dizaine de fichiers .mp3 volumineux (des symphonies), et je dois reconnaître que l'affichage du temps est très rapide. Un seul truc amusant : pour l'un des fichiers, l'API renvoie 50:08, et le lecteur Windows Media Player 50:07. Mais bon, je n'ai trouvé ça qu'une seule fois, et puis bon on n'a rien à faire d'une seconde :D. Ce code est super. Mais juste une question : pour les deux APIs, tu as comparé les vitesses avec une API du type GetThickCount, ou bien la différence est-elle "sensiblement" visible (je veux dire facilement repérable par un être humain) ?
21 févr. 2011 à 18:32
21 févr. 2011 à 18:11
J'ai testé avec un fichier Wav et il ni y a pas de retour de la durée..!
Il faut certainement un autre paramètre que:
type MPEGVideo alias fichier
????
10 juin 2009 à 13:54
Pour répondre à Christiansnif, j'ai eu besoin de ce code en VB2005, voici les lignes de code a changer:
Option Explicit On, a remplacer au bébut
Dim sRetString As String = Space(128) à remplacer dans la Function DureeFichier
lTemps = Math.Round(dTemps) à remplacer dans la Function FormatTemps
C'est tout et cela fonctionne.
@+ Le Pivert
11 janv. 2008 à 11:14
J'ai copier ce code mais ne parviens pas à le faire fonctionner
A la création du buffer de 128 une erreur "fin d'instruction attendu" alors j'ai mis "Dim Variable as string=space(128)"
A l'utilisation le programme plante à l'appel de mciSendString erreur "mciSendString à déséquilibré la pile"
J'ai l'impression d'avoir tout essayé, mais sans doute pas la bonne manoeuvre, Si tu peux m'aider. D'avance je te remercie
Snif
31 mai 2006 à 00:27
30 mai 2006 à 22:36
18 mars 2006 à 19:48
18 mars 2006 à 19:40
Par contre j'ai remarqué que sur des mp3 encodés en VBR, le résultat est faux. Testez et dites-moi...
18 mars 2006 à 19:36
J'ai testé ton code sur une dizaine de fichiers .mp3 volumineux (des symphonies), et je dois reconnaître que l'affichage du temps est très rapide. Un seul truc amusant : pour l'un des fichiers, l'API renvoie 50:08, et le lecteur Windows Media Player 50:07. Mais bon, je n'ai trouvé ça qu'une seule fois, et puis bon on n'a rien à faire d'une seconde :D. Ce code est super. Mais juste une question : pour les deux APIs, tu as comparé les vitesses avec une API du type GetThickCount, ou bien la différence est-elle "sensiblement" visible (je veux dire facilement repérable par un être humain) ?
Cordialement,
Cacophrène