~ Edito ~
12/03/2006 @ 13:39
Depuis la dernière mise à jour (qui remonte à... oulala plusieurs mois), un petit ménage de printemps s'impose. Ca tombe bien, c'est presque la période. Au menu, et progressivement sur les jours à venir, rafraîchissement de plusieurs fonctions et procédures, nouvelles APIs et nouveaux programmes.
~ Rechercher ~
~ Annuaire VB ~
~ Partenaires ~
|
Mp3 Tag Edit
mp3tagedit.exe (le programme en VB6 natif) ~
mp3tagedit.zip (les sources du programme)
Si VB 6.0 n'est pas installé sur votre ordinateur, vous aurez peut-être besoin d'installer les
Runtimes VB : DLL VB 6.0
Les deux DLL suivantes sont, en général, également nécessaires :
VB6FR.DLL ~
MSCOMCTL.OCX
(pour NT/2000, à copier dans WINNT\SYSTEM32 - pour 95/98/XP, à copier dans WINDOWS\SYSTEM)
Cette application permet de saisir en masse les informations pour des fichiers mp3.
Vous sélectionnez un répertoire, l'application charge les fichiers et les affiche dans la liste. A
partir de là, vous avez le champ libre pour modifier les informations associées à chacun des fichiers.
Cette application comporte actuellement 5 feuilles, 5 modules et 1 fichier de ressources. L'action se déroule dans les
trois zones de l'écran principal :
~ Répertoire courant, pour la sélection du répertoire dans lequel se trouve les MP3 à éditer. Pour changer de
lecteur il suffit d'utiliser la liste déroulante du haut. Les lecteurs CD-ROM et réseaux sont accessibles, cependant,
les opérations d'écritures ne sont autorisées que sur les lecteurs le permettant. En haut à droite de la zone de
sélection de répertoire est affichée la taille totale des fichiers mp3 du répertoire courant.
~ Liste de fichiers, affiche les fichiers présents dans le répertoire courant dont l'extension est MP3. Toutes les
informations essentielles sont visibles (nom du fichier, titre de la chanson, artiste, album, année, genre,
commentaire, taille, durée, kbps, mode). Le nom du fichier peut être modifié, si besoin, directement à partir de la
liste (touche [F2]). Il est possible de modifier le tri par défaut (nom de fichier) en cliquant sur l'entête de
colonne correspondant. Un menu contextuel permet d'accéder rapidement à des fonctions pratiques. On peut ainsi
effacer le contenu d'une zone, propager la valeur sur l'ensemble des fichiers de la liste ou bien échanger cette valeur
avec un autre champ du même fichier.
~ Zone édition, lorsqu'un fichier est sélectionné, les TAG sont affichés automatiquement dans la zone. Ils peuvent
alors être modifiés. Les tabulations sont correctement placées et permettent donc d'avancer de zone en zone. Une fois
que tout est correct, vous pouvez appuyer sur [Entrée] pour valider votre saisie (ou bien cliquer sur "Enregistrer").
Le focus revient alors sur la liste pour sélectionner un autre morceau à mettre à jour. La partie édition contient
également un mini-lecteur qui permet d'écouter la chanson actuellement sélectionnée. C'est un OCX standard qui utilise
tout simplement les fonctions du "Windows Media Player".
Sur cet écran, le maximum a été fait pour faciliter la saisie au clavier. Il est en effet pénible d'avoir recours à la
souris lorsqu'on a besoin de modifier rapidement et massivement pleins d'informations. Ainsi, depuis la liste, si on
appuie sur [Entrée], on arrive sur la zone édition de la chanson courante. Une fois les modifications effectuées, on
appuie alors sur [Entrée] (mise à jour des données), et on se retrouve de nouveau sur la liste, ou il ne reste plus
qu'à descendre sur le fichier suivant et recommencer.
Les menus donnent accès à de nombreuses fonctions, qui permettent d'optimiser la saisie ou la manipulation de vos
fichiers :
~ Fichier
~~ Extension, permet de changer (pour les fichiers du répertoire courant) une extension par une autre. Une
première fenêtre demande l'extension de départ, puis une seconde fenêtre demande l'extension d'arrivée. Ainsi, il est
possible de renommer rapidement les fichiers "*.BIN" (ou autre) en "*.MP3" (ou "*.ZIP", ...).
~~ Renommer, permet de renommer le fichier courant (attention, si vous modifier son extension de MP3 en autre chose
le fichier disparaîtra de la liste).
~~ Effacer, permet d'effacer un fichier (le fichier est mis dans la corbeille).
~~ Rafraîchir, pour rafraîchir la liste, cependant cette opération est effectuée automatiquement dans la plupart
des cas.
~~ Quitter, ferme l'application.
~ Edition
~~ Majuscule en début de mot, pour mettre les premières lettres de chaque mot de la sélection courante en majuscule.
~~ Titre <=> Artiste, échange les valeurs des zones Titre et Artiste.
~~ Titre <=> Album, échange les valeurs des zones Titre et Album.
~~ Artiste <=> Album, échange les valeurs des zones Artiste et Album.
~ Options
~~ Propager valeur courante, permet de diffuser à la totalité des fichiers actuellement présent dans la liste, une
valeur de tag du fichier courant. Cela permet d'avoir des données identiques sur le contenu d'un album par exemple.
~~~ Artiste
~~~ Album
~~~ Année
~~~ Genre
~~~ Commentaire
~~ Format de fichier, ce menu affiche une fenêtre de saisie pour élaborer un format de nom de fichier. Ce format est
utilisé par les deux menus suivants pour renommer rapidement un fichier en fonction de son contenu.

~~ Appliquer le format, pour appliquer le format definit au dessus sur le fichier courant.
~~ Appliquer le format pour tous, pour appliquer le format à la totalité des fichiers présents dans la liste courante.
~~ Annuler le dernier format appliquer, permet de restaurer les noms de fichier d'origine suite à l'application d'un format.
Attention, cela est valable uniquement dans la mesure ou le répertoire courant n'a pas été modifié ou rafraichit.
~~ Générer une playlist, permet de générer un fichier "Playlist" (extension .m3u) qui pourra alors être utilisé dans
les lecteurs acceptant ce format (Winamp, ...).
~~ Exporter l'arborescence, affiche une fenêtre qui permet d'exporter le contenu de l'arborescence dans un format
spécifique, afin de pouvoir être utilisé (importé) sous Excel, Word, Access, ... (voir plus bas pour plus de détails).
~ Outils
~~ Tout dézipper, si l'application a correctement été configuré, ce menu permet de décompresser les fichiers du
répertoire courant.
~~ Configuration, permet d'accéder à la fenêtre de configuration de l'application.
~ Aide
~~ Forum en ligne, ouvre Internet Explorer directement sur le forum en ligne consacré à l'application .
~~ Chercher une mise à jour, vérifie s'il existe une version plus récente de l'application disponible au téléchargement.
~~ A Propos..., affiche une boîte de dialogue d'information sur le programme.
Configuration de l'application
Lors du premier démarrage de l'application, cet écran apparaît pour sélectionner la langue d'affichage.
Deux langues sont actuellement disponibles, le français et l'anglais (depuis le 16 novembre 2001, grâce à la
contribution d'Alan Walkington, encore merci à lui).
Une option permet à l'application de contrôler si une version plus récente de l'application est disponible. Cela est
fait uniquement au démarrage de l'application et seulement si une connexion internet est active. Dans le cas ou une
nouvelle version est effectivement disponible, l'application affiche alors un cours résumé des évolutions par rapport
à la version précédente et propose de la télécharger.
Cette fenêtre est utile pour tout ceux qui maintiennent à jour la liste de leurs MP3. Elle permet de générer un
fichier texte des MP3 présent dans le répertoire courant (et les sous-répertoires).
Comme tout écran d'exportation, on peut choisir le délimiteur de ligne et de colonne, et trois caractères spéciaux
sont disponibles. Le fichier de destination doit obligatoirement être sélectionné à partir du bouton "Parcourir...".
Tous les champs affichés sur la liste de l'écran principal sont accessibles (la taille est ici exportée en totalité -
en octets). Pour obtenir un ordre particulier, les champs doivent être pris un par un, d'une liste à l'autre.
Lorsque tout est prêt pour, il ne reste plus qu'à cliquer sur le bouton "Exporter" pour lancer le traitement. La
progression est alors affichée en bas de la fenêtre.
Vous pouvez arrêter à tout moment une exportation, en cliquant sur le bouton "Arreter". Cependant, le fichier de destination
ne sera pas complet.
J'utilise un module de spécial pour la fenêtre "Enregistrer sous...". En passant par les fonctions API adéquates,
cela évite l'utilisation du composant "CommonDialog" et évite donc qu'il soit présent sur la machine de l'utilisateur.
Vu qu'il peut exister plusieurs versions du composant, je m'affranchis des problèmes de compatibilité qui peuvent
survenir.
Pour l'exportation, j'ai choisit de ne générer qu'un fichier texte. J'aurais pu directement créer un fichier Excel (ou
proposer simplement la possibilité de le faire), mais cela m'obligeait d'inclure une référence à ADO. Pour une
utilisation sur une machine qui ne possèdent pas les composant d'accès aux données, cela peut alourdir la procédure
d'installation.
Pour la décompression, j'utilise la librairie 'unzip32.dll' (gratuite). Vous pouvez vous rendre sur le site officiel pour plus
d'information : http://www.info-zip.org/pub/infozip/. J'ai utilisé
un module VB de décompression fournit dans leur package, auquel j'ai apporté quelques petites adaptations personnelles.
A vrai dire, je préfère cette solution (même si elle oblige à inclure une DLL supplémentaire), plutôt que de lancer
des "shell" de l'application Winzip. La librairie offre plus de maîtrise sur le déroulement des opérations.
Le fichier de ressource contient l'ensemble des textes utilisés par l'application. Les données souvent utilisées
sont stockées dans des variables. Pour les autres, elles sont chargées lorsque cela est nécessaire. Si vous traduisez
le programme dans d'autres langues, n'hésitez surtout pas à me faire parvenir le nouveau fichier de ressources!
Description du code :
~ "frmEditMp3.frm" est la feuille principale de l'application.
~ "frmExport.frm" est la feuille de gestion de l'exportation.
~ "frmConfiguration.frm" est la feuille de configuration de l'application.
~ "frmUnzip.frm" est la feuille utilisée pour l'affichage de la décompression.
~ "frmAPropos.frm" est la feuille d'information du programme.
~ "modEditMp3.bas" contient toutes les fonctions liées à la manipulation des fichiers MP3. Il décompose le
contenu, retourne les tags, calcule la durée, la qualité...
~ "modLang.bas" possède une grande partie de ce qui se rapporte à la traduction et au fichier de ressources.
~ "modUnzip.bas" contient l'ensemble des fonctions de manipulation de la librairie 'unzip32.dll' liée à la décompression.
~ "modUtils.bas" contient diverses fonctions utilisées par l'application. Déclarations des API, accès internet,
gestion du ListView, manipulation de fichier, ...
~ "modCommonDialog.bas" permet de créer une fenêtre "Ouvrir" ou "Enregistrer" pour la sélection d'un fichier.
Pour consulter le code de l'application, voyez ci-dessous :
frmEditMp3.frm (
Afficher le code)
frmConfiguration.frm (
Afficher le code)
frmExport.frm (
Afficher le code)
frmUnzip.frm (
Afficher le code)
frmAPropos.frm (
Afficher le code)
modEditMp3.bas (
Afficher le code)
modLang.bas (
Afficher le code)
modUtils.bas (
Afficher le code)
modVBUnzip.bas (
Afficher le code)
modCommonDialog.bas (
Afficher le code)
|