IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

API, COM et SDKs Delphi Discussion :

Durée wma et wav?


Sujet :

API, COM et SDKs Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Avatar de Stef.web
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2003
    Messages : 104
    Par défaut Durée wma et wav?
    Bonjour,
    Je recherche un bout de code pour déterminer rapidement la durée d'un fichier wav et wma.
    J'ai déjà les routines pour les fichiers mp3.

    Je recherche aussi à savoir si il existe comme des IdTags pour les wma.

    Merci par avance.

    Amicalement

    Stéf

  2. #2
    Membre Expert
    Avatar de Bestiol
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 515
    Par défaut
    Oui, il existe des tags pour les wma !

    Pour connaitre la durée d'un wav, il faut que tu la calcules à partir des headers du fichiers.
    Ceux-ci te donnent la fréquence d'échantillonage, le nombre d'octets par échantillon, le nombre de voies et enfin la taille en octets de l'ensemble des échantillons du fichier !

    Avec tout ça, tu peux calculer la durée du wav assez facilement !

    Je te conseille de jeter un oeil ici : www.wotsit.org
    C'est un site qui recense pas mal de documents sur les formats de fichiers, et tu trouveras la description des headers d'un fichier WAV.
    Il est même possible que tu trouves quelque chose sur le wma !

    Bonne continuation !
    Bestiol.
    Mea est trop forte, elle flotte : mea coule pas !

    Basically this boot sector (Win95) code is 32 bit extension for a 16 bit patch to an 8 bit boot sector originally coded for a 4 bit microprocessor, written by a 2 bit company, that can't stand 1 bit of competition.

    olance.developpez.com
    Servez-vous, profitez, abusez de la FAQ Delphi !!

  3. #3
    Membre Expert
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Par défaut
    En-tête d'un WAV : sub0.developpez.com

  4. #4
    Membre Expert
    Avatar de Bestiol
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 515
    Par défaut
    oups désolé Sub0, j'avais oublié que c'était ton domaine de prédilection !
    Et dire que tu m'as aidé à ce sujet !

    Pardonne-moi, Sub0 !

    Mea est trop forte, elle flotte : mea coule pas !

    Basically this boot sector (Win95) code is 32 bit extension for a 16 bit patch to an 8 bit boot sector originally coded for a 4 bit microprocessor, written by a 2 bit company, that can't stand 1 bit of competition.

    olance.developpez.com
    Servez-vous, profitez, abusez de la FAQ Delphi !!

  5. #5
    Membre Expert
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Par défaut
    Salut!

    C'est vrai que mes tous premiers programmes (à l'époque en Turbo Pascal) étaient motivés par le sample audio & tracker. J'avais commandé et acheté le kit de développement de la SB16 dans lequel on trouve toutes les fonctions de bas et haut niveau et programmation DSP... Est venu ensuite la programmation sous Win, puis DirectSound. Je ne pense pas avoir fait le tour du sujet tellement il est vaste, mais j'en connais suffisemment pour pouvoir développer ce dont j'ai envie.

    L'article que j'ai réalisé demanderait à être mis à jour. Je compte ajouter le code de l'enregistrement direct-to-disk et une unité permettant d'obtenir le spectre du son (séparation des fréquences, vumètre à barres). Je compte aussi ajouté un code pour la conversion WAV <-> MP3. Mais je ne dispose pas d'assez de temps libre en ce moment.

    Cordialement, Sub0

  6. #6
    Membre confirmé
    Avatar de Stef.web
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2003
    Messages : 104
    Par défaut
    bonsoir et merci à vous deux.

    Les info de sub0 me conviennent cependant, je n'arrive pas à trouver de truc pour le wma ...

    Si qq1 à une idée... Merci par avance

    Stéf.

  7. #7
    Membre Expert
    Avatar de Sub0
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2002
    Messages
    3 573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Décembre 2002
    Messages : 3 573
    Par défaut
    Je ne connais pas le format WMA. Je suppose qu'il sagit d'un format spécifique à Windows Media Player pour le streaming (flux continu de données audios) utilisé par exemple pour écouter la radio... Essaye de faire une recherche sur le forum et sur Google.

  8. #8
    Membre Expert
    Avatar de Bestiol
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 515
    Par défaut
    Non ça marche tout comme un MP3, le streaming en plus !
    Mea est trop forte, elle flotte : mea coule pas !

    Basically this boot sector (Win95) code is 32 bit extension for a 16 bit patch to an 8 bit boot sector originally coded for a 4 bit microprocessor, written by a 2 bit company, that can't stand 1 bit of competition.

    olance.developpez.com
    Servez-vous, profitez, abusez de la FAQ Delphi !!

  9. #9
    Membre confirmé
    Avatar de Stef.web
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2003
    Messages : 104
    Par défaut
    j'ai commencé le décodage et voila ce que j'ai trouvé :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    ;$wma(fichier).genre|album|year|url|bitrate|sample|mode|length
    ;length retourne le nombre de secondes du wma.
     
    alias wma {
    if (!$isfile($1)) return $null
    bread $shortfn($1) 0 8192 &wma
    if ($prop == genre) return $chra($bvar(&wma,$calc($bfind
    (&wma,0,87 0 77 0 47 0 71 0 101 0 110 0 114 0 101 0 0 0) +22),60))
            W    M    /    G    e     n     r     e   
    if ($prop == album) return $chra($bvar(&wma,$calc($bfind
    (&wma,0,87 0 77 0 47 0 65 0 108 0 98 0 117 0 109 0 84 0 105 0 116 0 108 0 101) +31),60))
            W    M   /     A    l     b    u     m     T    i     t     l     e
    if ($prop == year) return $chra($bvar(&wma,$calc($bfind(&wma,0,87 0 77 0 47 0 89 0 101 0 97 0 114) +20),60))
    if ($prop == url) return $chra($bvar(&wma,$calc($bfind(&wma,0,87 0 77 0 47 0 80 0 114 0 111 0 109 0 111 0 116 0 105 0 111 0 110 0 85 0 82 0 76) +36),60))
    if ($prop == bitrate) return $gettok($chra($bvar(&wma,$calc($bfind(&wma,0,107 0 98 0 112 0 115)-9),60)),1,32)
    if ($prop == sample) return $gettok($chra($bvar(&wma,$calc($bfind(&wma,0,107 0 98 0 112 0 115) +9),60)),1,32)
    if ($prop == mode) return $gettok($chra($bvar(&wma,$calc($bfind(&wma,0,107 0 98 0 112 0 115) +25),60)),1-,32)
    if ($prop == length) return $int($calc($calc($file($1).size / $calc($calc( $gettok($chra($bvar(&wma,$calc($bfind(&wma,0,107 0 98 0 112 0 115) -9),60)),1,32) -2)/8) /1024 )))
    return $1
    }
    je pense que la suite coule de source ...

    Lorsque que j'aurai fais les modules, je les mettrai à dispo

  10. #10
    Invité de passage
    Profil pro
    Inscrit en
    Décembre 2004
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2004
    Messages : 1
    Par défaut
    Dans ce projet, vous pouvez trouver déjà les classes Delphi pour un très grand nombre de formats audios. Le wma est disponible. Tu peux l'utiliser sans problème.


    Quant à moi, je cherche à avoir la durée d'un wav multicanal (6 canaux). Quelqu'un aurait une p'tite idée ? Merci...

  11. #11
    Membre Expert
    Avatar de Bestiol
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    1 515
    Détails du profil
    Informations personnelles :
    Âge : 38
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2002
    Messages : 1 515
    Par défaut
    Au risque de me planter je dirais que ça marche comme un bicanal :

    tu as le nombre d'octets par échantillons, tu sais qu'il y a 6 canaux, donc qu'il faut diviser la taille des données du WAV par 6 pour avoir le nombre d'octet d'un seul canal.
    A partir de ça et de la fréquence d'échantillonage, tu retrouves la longueur.

    Mais c'est valable que si c'est structuré pareil, chose que je ne sais pas...
    Mea est trop forte, elle flotte : mea coule pas !

    Basically this boot sector (Win95) code is 32 bit extension for a 16 bit patch to an 8 bit boot sector originally coded for a 4 bit microprocessor, written by a 2 bit company, that can't stand 1 bit of competition.

    olance.developpez.com
    Servez-vous, profitez, abusez de la FAQ Delphi !!

  12. #12
    Membre confirmé
    Avatar de Stef.web
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2003
    Messages
    104
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2003
    Messages : 104
    Par défaut
    Merci à tous,
    j'ai trouvé exactement ce je cherchai et même plus ...
    Il serait interessant de retrouver l'auteur de ces unités pour pouvoir proposer plus facilement son téléchargement (le liens sur son site est mort) .

    Amicalement


    Stéf.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. la durée d'un fichier wma
    Par giraud vias dans le forum C#
    Réponses: 0
    Dernier message: 23/07/2010, 16h09
  2. Récupérer la durée d'un son wav
    Par Reymqn13 dans le forum Windows
    Réponses: 0
    Dernier message: 08/08/2007, 16h25
  3. [debutant]recuperer la durer de wav et wma
    Par achleuhi dans le forum Windows Forms
    Réponses: 1
    Dernier message: 11/04/2007, 10h15
  4. durée d'une musique mp3 et wma
    Par avigeilpro dans le forum VB 6 et antérieur
    Réponses: 15
    Dernier message: 06/01/2007, 01h27
  5. Durée d'un fichier WAV
    Par carlg dans le forum Composants VCL
    Réponses: 3
    Dernier message: 14/03/2006, 10h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo