Detecteur automatique de media as3 - as2

Soyez le premier à donner votre avis sur cette source.

Snippet vu 5 717 fois - Téléchargée 15 fois

Contenu du snippet

je viens de la finir ! je m'en sers pour trier mes médias qui viennent d'un xml unique... ça peut servir dans d'autres cas aussi en live pour charger la bonne appli en fonction du media !
en gros
vous fournissez le nom de fichier à la fonction.
la fonction coupe la chaine au niveau de l'extension, la transforme en bas de casse pour reduire les possibilités d'ecriture, puis l'analyse dans un switch et renvoie la valeur de la variable media_type.
On peut la mettre indiferemment dans un script AS3 ou AS2 (je la sors d'une classe et je l'ai essayé en la collant sur une image d'un doc flash 8: opérationnel !)

Source / Exemple :


function media_setter(nom_media:String):String
			{
				var splitted:Array = nom_media.split(".");
                                var ind:Number = nom_media.lastIndexOf(".");
                                var extension:String = nom_media.substr(ind + 1).toLowerCase();
				var media_type:String;
				switch (extension) { 
				case "jpg": 
				media_type = "image";
				break; 
				case "jpeg" : 
				media_type = "image";
				break; 
				case "png": 
				media_type = "image";
				break; 
				case "flv" :
				media_type = "video";
				break; 
				case "mp3" : 
				media_type = "musique";
				break; 
				case "pdf" : 
				media_type = "download_file";
				break;
				default : 
				media_type = null;
				break;
			}
			
				return(media_type);
			}

Conclusion :


J'ai pas encore verifié tout les format de medias supportés par flash... à inclure en plus s'il y en a je completerai plus tard ... encore du taf !

A voir également

Ajouter un commentaire

Commentaires

pegase31
Messages postés
6161
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
6 -
ben le XML reste une base de donnée très accessible .. je m'en sert aussi pour les décors de jeux ...:p

Peg'
cs_ourso
Messages postés
92
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
5 décembre 2010
-
je n'ai qu'un mot à dire : Brillant !
cs_Girou
Messages postés
1204
Date d'inscription
lundi 10 mars 2003
Statut
Membre
Dernière intervention
23 juillet 2009
2 -
Pour ceux que cela intéresse, la traduction en AS2 de la fonction proposée par Pegase31 donne ceci :

import mx.xpath.XPathAPI;

var data:XML = new XML('<main><media ext="jpg" type="image"/><media ext="jpeg" type="image"/><media ext="png" type="image"/><media ext="flv" type="video"/><media ext="ai" type="null"/><media ext="pdf" type="download_file"/><media ext="mp3" type="musique"/></main>')

function mediaSetter(label:String):String {
var ext:String = label.split(".").pop().toLowerCase();
return(XPathAPI.selectSingleNode(data.firstChild, "/main/media[@ext='"+ext+"']").attributes.type);
}

L'utilisation du XML est une très bonne chose -> possible de charger dynamiquement la liste (donc pas besoin de recompiler si elle évolue) et dans ton idée de base de lancer le lecteur approprié, si celui-ci est aussi défini dans le xml, ou plus simplement défini en fonction du type de media (image -> image.swf) en chargeant dans un container le lecteur swf externe approprié on obtient une solution polyvalente et fortement evolutive sans toucher à l'animation de base.

function loadContent(_lien:String){
var lecteur:String=mediaSetter(_lien)
lecteur+=".swf?_media="+lien;
_container.loadMovie(lecteur)
}

Avantage de la méthode, il suffit d'adapter le XML et de créer les lecteurs 'externes'

@+
Girou
cs_ourso
Messages postés
92
Date d'inscription
mercredi 11 octobre 2006
Statut
Membre
Dernière intervention
5 décembre 2010
-
Oui c'est une bonne idée.
Je me suis penché mais pas assez sur l'XML dans as3... juste le loading et le parsage des infos...mais je dois pour mon dev recupérer un flux rss qui va influer sur l'aspect du site, et ton tuto devrait me concerner.
La doc que l'on trouve sur internet n'est pas toujours très limpide, notamment sur les conditions dans lesquelles les différentes utilisations sont recommandées (je parle d'XML list). Parfois en as une se met à faire des méthodes alors qu'elles existent déjà... C'est le problème du mécano !
pegase31
Messages postés
6161
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
6 -
c'est l'E4X, il s'agit à peu près d'une requête lancée au XML qui ressort une "liste" (un XMLList", en fait) de ce que tu as demandé.
Dans le cas présent, une valeur d'attribut.

Si besoin, je ferais une source exemple de comment gérer ça ... c'est pas très compliqué

Peg'

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.