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

Flash Discussion :

Modification d'un sous-titrage video en live


Sujet :

Flash

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 127
    Par défaut Modification d'un sous-titrage video en live
    Bonjour,

    Je me lance dans un projet de player flv qui affiche des sous-titres qu'il doit être possible de modifier en live

    J'ai adopté une solution qui ressemble, à quelques détails près, à celle qui est présentée sur cette page :
    http://www.actionscript.org/resource...XML/Page1.html

    Petit topo rapide :
    - les sous-titres de la video accompagnés de leurs time-codes se trouvent dans un xml qui est chargé en tant qu'instance d'une classe XModel.
    - une fonction crée les cuepoints qui vont bien avec les time-codes et ajoute le sous-titre dans la zone de texte dynamique


    Jusque là je n'ai pas trop de souci puisque je me suis grandement inspiré du tutorial.

    Désormais, je veux rajouter une possibilité à l'utiliseur à savoir que lorsqu'il met le player sur "pause", il puisse, modifier la zone de texte dynamique (en gros que le "dynamic text" devienne "input text") et qu'une validation modifie l'instance du XModel...
    Et c'est là que j'aimerais un coup de pouce puisque je bloque.

    Ensuite pour mettre à jour le fichier xml, je pense pouvoir gérer un script php qui fasse l'affaire.

    Voilà, si tu as des conseils qui puissent m'aider, je suis preneur.
    Merci.



    edit : flash pro 8

  2. #2
    Inactif Avatar de CR_Gio
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 195
    Par défaut
    Bonsoir a tous,

    il puisse, modifier la zone de texte dynamique (en gros que le "dynamic text" devienne "input text") et qu'une validation modifie l'instance du XModel...
    Et c'est là que j'aimerais un coup de pouce puisque je bloque.
    C'est une tres, tres bonne idée je trouve

    je vais essayer d'apporter quelques piste.

    pour metre un texte en mode d'édition (input), il faut utiliser la propriété type de la class TextField
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    /* my_txt est une instance de la class TextField.
    ( en gros c'est un champ de texte crée dynamiquement)
    */
    my_txt.type="input";//le champ de texte est éditable
    //my_txt.type="dynamic";//le champ de texte n'est plus éditable
    pour modifier ton Xmodel, il faut utiliser la class XMLNode. Cette class te permettra de selectionner le noeud de ton xml(Le sous titre) et de le modifier. Je pense que tu aura besoin de toute les methode et propriété de cette class (on une grande partie en tout cas). Donc je te laisse t'entrainer un peu ...

    PS: afficher l'aide > reference actionscript > reference class > ....

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 127
    Par défaut
    Bonjour, bonsoir,

    Bon j'avance doucement mais surement.

    Je ne maîtrise pas tout à fait les input text fields à savoir qu'une fois que je transforme le dynamic en input, je ne vois pas comment récupérer facilement le string entré au clavier. Mais bon ça je devrais m'en sortir.

    Plus compliqué, je ne sais pas trop comment m'y prendre avec ce script :

    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
    var theFLV_file:String;
    var arr_cue_points:Array = new Array();
    var listener = new Object();
     
     
    listener.onModelledObject = function(eventObject:Object):Void {
    	var cuepoints:Object = eventObject.modelledObject;	
    	theFLV_file = cuepoints.flvName
    	video1.contentPath = theFLV_file;
     
    	for(kk=0; kk<cuepoints.cuepoint.length; kk++){		
    		var cueObj:Object = new Object();
    		cueObj.cueTitle = cuepoints.cuepoint[kk].cuename[0].text;
    		cueObj.cueTime = cuepoints.cuepoint[kk].cuetime[0].text;
    		cueObj.cueText = cuepoints.cuepoint[kk].subtitle[0].text;
    		arr_cue_points[cueObj.cueTitle] = cueObj;
     
     
    		createCuepoint(cueObj.cueTitle, cueObj.cueTime);
    	}
    }
     
    var theContent:XModel = new XModel();
    theContent.addEventListener("onModelledObject", listener);
     
    theContent.load("vid/bbt.xml");
    Je souhaite pouvoir récupérer la variable cuepoints pour pouvoir l'utiliser dans l'ensemble du projet. En somme faire quelque chose du genre :

    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
    var theFLV_file:String;
    var arr_cue_points:Array = new Array();
    var listener = new Object();
    
    
    listener.onModelledObject = function(eventObject:Object):Object {
    	var cuepoints:Object = eventObject.modelledObject;	
    	theFLV_file = cuepoints.flvName
    	video1.contentPath = theFLV_file;
    
    	for(kk=0; kk<cuepoints.cuepoint.length; kk++){		
    		var cueObj:Object = new Object();
    		cueObj.cueTitle = cuepoints.cuepoint[kk].cuename[0].text;
    		cueObj.cueTime = cuepoints.cuepoint[kk].cuetime[0].text;
    		cueObj.cueText = cuepoints.cuepoint[kk].subtitle[0].text;
    		arr_cue_points[cueObj.cueTitle] = cueObj;
    		
    
    		createCuepoint(cueObj.cueTitle, cueObj.cueTime);
    	}
    	return(cuepoints);
    }
    
    var theContent:XModel = new XModel();
    var arbreXML:Object = theContent.addEventListener("onModelledObject", listener);
    
    theContent.load("vid/bbt.xml");
    Mais ça n'a pas l'air de fonctionner. Bon, j'avoue, je ne suis pas très habitué à la programmation évènementielle...




    Encore merci pour votre aide précieuse.

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 127
    Par défaut
    Bonjour, bonsoir,

    Bon je galère sur ce listener.onModelledObject.
    Comment pourrait-on exploiter la variable cuepoints à l'extérieur du bloc dans lequel elle est créée ?

    Merci merci.

  5. #5
    Inactif Avatar de CR_Gio
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    1 195
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 195
    Par défaut
    a tu essayer de modifier la porté de ta variable ?

    comme par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    var cuepoints:Object;
    
    listener.onModelledObject = function(eventObject:Object) {
    	cuepoints = eventObject.modelledObject;
    	// [...]
    }
    // cuepoints n'est disponible qu'apres l'appel/diffusion de l'evenement onModelledObject

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    127
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Octobre 2006
    Messages : 127
    Par défaut
    Citation Envoyé par CR_Gio
    a tu essayer de modifier la porté de ta variable ?
    Ca m'avance en effet

    Dois-je en conlure que la fonction en question ne peut renvoyer d'objet ?

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

Discussions similaires

  1. fichier .srt sous-titrage video
    Par MMDM12 dans le forum Multimédia
    Réponses: 11
    Dernier message: 12/07/2012, 09h39
  2. date de modification de fichier sous windows
    Par brisbo dans le forum Windows
    Réponses: 2
    Dernier message: 04/05/2006, 23h45
  3. Réponses: 4
    Dernier message: 29/10/2005, 11h22
  4. Sous-titres vidéos
    Par Invité4 dans le forum Applications et environnements graphiques
    Réponses: 3
    Dernier message: 09/08/2005, 00h21

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