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

ActionScript 3 Discussion :

lire les tags de plusieurs mp3


Sujet :

ActionScript 3

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2006
    Messages
    25
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2006
    Messages : 25
    Points : 36
    Points
    36
    Par défaut lire les tags de plusieurs mp3
    bonjour, et merci d'avance pour votre aide.

    j'ai des milliers de fichiers MP3s dont je veux récupérer la durée de chacun.
    je passe passe par AS3 sur FLEX et voila le code que j'utilise :
    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
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
     
    import mx.messaging.channels.StreamingAMFChannel;
                import mx.controls.Alert
                import flash.media.Sound;
                import flash.media.SoundChannel;
     
                [Bindable]
                public var iStart:Number = 10001;
                [Bindable]
                public var max:Number;
     
                public var i:uint;
                public var counter:Number = 0;
     
                [Bindable]
                public var outputValue:String = "";
     
                public function init():void
                {
                    var mp3:Sound;
                    var urlMp3:String;
     
                    iStart = iStart + 100;
                    max = iStart + 99; 
                    counter = 0;
     
                    outputValue = "start\n";
     
                    for(i=iStart; i<=max; i++)
                    {
                        mp3 = new Sound();
                        urlMp3 = "F:/export/" + i + ".mp3";
                        mp3.load(new URLRequest(urlMp3));
                        mp3.addEventListener( Event.COMPLETE, endLoad );
                    }
                    iStartMax = "from : " + iStart + " -> to " + max;
                }
     
                public function endLoad(e:Event):void
                {
                    var mp3:Sound = Sound(e.target)
                    var duree:Date = new Date(mp3.length);
     
                    var m:String;
                    var s:String;
     
                    if( duree.minutes < 10 ) m = "0" + duree.minutes;
                    else m = "" + duree.minutes;
     
                    if( duree.seconds < 10 ) s = "0" + duree.seconds;
                    else s = "" + duree.seconds;
     
                    var idMp3:String = mp3.url.replace("file:///F:/export/", "");
                    idMp3 = idMp3.replace(".mp3", "");
     
                    counter++;
    outputValue = outputValue + "00:" + m + ":" + s + " -> "  idMp3 "\n";
                }
    ce qui m'affiche dans un TextArea
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    00:25:30 -> fichier1.mp3
    00:12:49 -> fichier2.mp3
    ....
    le script marche correctement et sans problème, mais le hic est que je ne peux traiter que des lots de 100 fichiers ( pour un ensemble de 56000 fichiers ). si je dépasse 100 fichiers le script plante.

    pouvez vous me proposer une autre alternative pour que je puisse lancer le traitement sur l'ensemble une seule fois ( tous les 56000 fichiers ).

    merci

  2. #2
    Membre expérimenté Avatar de Lorenzo77
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    1 472
    Détails du profil
    Informations personnelles :
    Âge : 52
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Mai 2006
    Messages : 1 472
    Points : 1 537
    Points
    1 537
    Par défaut
    je ne pense pas que ca soit un réel plantage mais juste une limitation de flash qui ce déclenche quand le temps d'un script dépasse les 15sec.

    suffit de limiter le nombre de fichiers à charger à chaque passe et utiliser un timer qui relance le script a intervalle régulier.

    puis si tout ceci sert juste à récuperer le temps du MP3, tu pourrais éviter de le charger en entier -> tu pourrais charger que l'entête pour y lire la durée
    Le plus grand arbre est né d'une graine menue, une tour de neuf étages est partie d'une poignée de terre.
    Mon blog : http://web.codeur.free.fr

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

Discussions similaires

  1. Comment modifier les Tags ID3 des Mp3 ?
    Par LordBelial8 dans le forum ActionScript 3
    Réponses: 0
    Dernier message: 02/10/2009, 15h16
  2. Api pour lire les tags d'une musique
    Par zuzuu dans le forum Général Python
    Réponses: 1
    Dernier message: 09/05/2008, 15h16
  3. Réponses: 2
    Dernier message: 14/12/2007, 13h49
  4. Réponses: 8
    Dernier message: 26/08/2006, 11h13
  5. Lire les tags de fichiers mp3
    Par Are-no dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 21/08/2006, 14h44

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