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 Pascal Discussion :

Convertir flv en swf plus une navigation


Sujet :

Flash Pascal

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut Convertir flv en swf plus une navigation
    Bonjour,

    j'ai un fichier flv ; j'ai crû comprendre qu'en flashpascal, il est possible de le convertir en swf et d'ajouter des boutons marche, arrêt, retour, pause(?)...Peut-on me donner le code ?

  2. #2
    Membre Expert
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Par défaut
    Citation Envoyé par laurentSc Voir le message
    Bonjour,
    il est possible de le convertir en swf
    En fait, le convertir en swf non... Seulement tu vas fabriquer à un .swf qui va faire appel à ton .flv. On ne peut pas encore l'intégrer...à moins que le grand chef (Paul Toth) puisse avoir ça en rayon.
    Toi tu veux le mettre en ligne... donc tu mets tes deux fichiers .flv et .swf sur ton site au même niveau et tu appelles le swf a partir d'un lien sur ta page.


    Alors, d'abord il te faut flashPascal. (regarde pour le téléchargement).
    Fichier nouveau unité flaspascal, tu copies le code de l'unité ci-joint en dessous.
    Tu l'enregistres dans units en type unité Flashpascal(.pas). Tu la nommes UVideoButton.
    Après, Fichier nouveau projet Flashpascal
    Tu copies le programme Pvideo et tu l'enregistres dans le même dossier.
    en projet FlashPascal(.fpr)
    Tu compiles le projet après avoir mis le nom de ton .flv aux bons endroits dans le code. Place évidemment dans le dossier units ton fichier Flv...
    Et voilà. Regarde dans le dossier Units, tu auras un fichier Pvideo.swf.
    Ouvre le et c'est fini.

    L'unité :

    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
     
    Unit UVideoButton;
    interface
     
    uses Flash8;
     
    type
      TButton=class(movieClip)
       Private
        w,h,fonction:number;
        procedure skin;
        procedure skin1playpause;
        procedure skin2stop;
        procedure skin3back;
        procedure skin4up;
       Public
        skin1,Skin2:movieclip;
        procedure onPress;override;
        procedure onClick;virtual;
        Constructor Create(parent:movieclip;nbskin,left,top,width,height:number);
      end;
     
    implementation
     
    Constructor TButton.Create(parent:movieclip;nbskin,left,top,width,height:number);
    begin
      inherited Create(parent,'button', movieclip(parent).getNextHighestDepth());
      w:=width;
      h:=height;
      fonction:=nbskin;
      linestyle(3,$e0e0e0);
      BeginFill($c0c0c0);
      moveto(0,h);
      lineto(0,0);
      lineto(w,0);
      linestyle(3,$808080);
      lineto(w,h);
      lineto(0,h);
      skin;
      _x:=left;
      _y:=top;
    end;
     
    Procedure TButton. skin1playpause;
    begin
      skin1:=movieclip.Create(self,'skin1',1);
      skin2:=movieclip.Create(self,'skin2',2);
      With skin1 do
      begin
       BeginFill(clBlack);
       linestyle(2,clBlack);
       moveto(w/4,h/4);
       lineto(3*w/4,h/2);
       lineto(w/4,3*h/4);
      end;
      With skin2 do
      begin
       linestyle(6,clBlack);
       moveto(7*w/20,h/4);
       lineto(7*w/20,3*h/4);
       moveto(13*w/20,h/4);
       lineto(13*w/20,3*h/4);
       _visible:=false;
      end;
    end;
     
    Procedure TButton. skin2stop;
    begin
      BeginFill(clBlack);
      linestyle(2,clBlack);
      moveto(w/4,h/4);
      lineto(3*w/4,h/4);
      lineto(3*w/4,3*h/4);
      lineto(w/4,3*h/4);
      lineto(w/4,h/4);
    end;
     
    procedure TButton.skin3back;
    begin
      linestyle(4,clBlack);
      moveto(3*w/4,h/4);
      Lineto(w/4,h/2);
      moveto(w/4,h/2);
      Lineto(3*w/4,3*h/4);
    end;
     
    procedure TButton.skin4up;
    begin
     linestyle(4,clBlack);
     moveto(w/4,h/4);
     Lineto(3*w/4,h/2);
     moveto(3*w/4,h/2);
     Lineto(w/4,3*h/4);
    end;
     
    procedure TButton.skin;
    begin
     case fonction of
      1:skin1playpause;
      2:skin2stop;
      3:skin3back;
      4:skin4up;
     end;
    end;
     
    procedure TButton.onClick;
    begin
    end;
     
    procedure TButton.onPress;
    begin
     onClick;
    end;
     
    end.
    le projet :
    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
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
     
    program PVideo;
     
    uses
      Flash8,UVideoButton;
     
    {$FRAME_WIDTH 640}
    {$FRAME_HEIGHT 380}
    {$BACKGROUND $9999ff}
    {$FRAME_RATE 32}
     
    // Flash 8 ne permet pas d'instancier l'objet Video par programme
    // la directive de compilation $VIDEO permet contourner ce problème
    // l'objet est créé statiquement avant le lancement du programme
    // il ne reste plus qu'à déclarer une variable "external" pour l'utiliser.
    {$VIDEO name="my_video" depth="1" left="0" top="0" width="320" height="240"}   //modifie la largeur et la hauteur pour ta video
     
    (* syntaxe plus compacte équivalement
      {$VIDEO my_video 1 0 20 180 180}
    *)
     
    type
     
      MyNetStream = class(NetStream)
        procedure onStatus(infoObject: TInfoObject); override;
      end;
     
      MyScreen=class
       btplay,btstop:TButton;
       constructor Create;
       procedure onPlay(sender:TObject);
       procedure onStop(sender:TObject);
      end;
     
     
    var
      nc: NetConnection;
      ns: MyNetStream;
      vo: Video external 'my_video';
     
    Constructor MyScreen.Create;
    begin
     btplay:=TButton.Create(_Root,1,10,10,50,50);
     btstop:=TButton.Create(_Root,2,10,70,50,50);
     nc := NetConnection.Create;
     nc.connect(nil);
     ns := MyNetStream.Create(nc);
     vo.attachVideo(ns);
     vo._height:=stage.height;
     
     with vo do
     begin
      _width:=320*_height/240;   //idem pour 320 tu mets la largeur de ta propre video et 240 la hauteur de ta video
      _x:=(stage.width-_width)/2;
      smoothing:=true;
     end;
     
     ns.play('tonfichier.flv');  //chemin de ton flv
     ns.pause;
     
     btplay.onClick:=onPlay;
     btStop.onClick:=onStop;
    end;
     
    procedure MyScreen.onPlay(sender:TObject);
    begin
     with btplay.skin1 do _visible:=not _visible;
     with btplay.skin2 do _visible:=not _visible;
     ns.pause;
    end;
     
    procedure MyScreen.onStop(sender:TObject);
    begin
     btplay.skin1._visible:=true;
     btplay.skin2._visible:=false;
     ns.play('tonfichier.flv');//ici le chemin de ton fichier
     ns.pause;
    end;
     
     
    procedure MyNetStream.onStatus(infoObject: TInfoObject);
    begin
      if infoObject.code = 'NetStream.Buffer.Empty' then ns.play('tonfichier.flv') ; //idem chemin de ton flv
    end;
     
     
    begin
     MyScreen.Create;
    end.
    Tu peux venir te joindre au forum, il s'y fait plein de choses intéressantes

  3. #3
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    il est possible d'intégrer une video dans un swf, mais ce n'est pas recommandé par Adobe...et ça n'est pas supporté par FlashPascal de toute façon ^^

    il est préférable de garder le flv en dehors du SWF
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

  4. #4
    Membre Expert
    Avatar de Archimède
    Homme Profil pro
    Enseignant
    Inscrit en
    Avril 2005
    Messages
    1 644
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 59
    Localisation : France, Charente Maritime (Poitou Charente)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Avril 2005
    Messages : 1 644
    Par défaut
    Citation Envoyé par Paul TOTH Voir le message
    il est possible d'intégrer une video dans un swf, mais ce n'est pas recommandé par Adobe...
    il est préférable de garder le flv en dehors du SWF
    Merci pour l'info

  5. #5
    Membre Expert
    Avatar de laurentSc
    Homme Profil pro
    Webmaster débutant perpétuel !
    Inscrit en
    Octobre 2006
    Messages
    10 493
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Isère (Rhône Alpes)

    Informations professionnelles :
    Activité : Webmaster débutant perpétuel !
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2006
    Messages : 10 493
    Billets dans le blog
    1
    Par défaut
    Merci pour le code ; juste une question : compiler, je le fais avec quoi ?

  6. #6
    Expert éminent
    Avatar de Paul TOTH
    Homme Profil pro
    Freelance
    Inscrit en
    Novembre 2002
    Messages
    8 964
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 55
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Freelance
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2002
    Messages : 8 964
    Par défaut
    avec FlashPascal évidemment

    une fois installé, tu peux même prendre l'exemple "Video.fpr" dans le menu exemple.
    Developpez.com: Mes articles, forum FlashPascal
    Entreprise: Execute SARL
    Le Store Excute Store

Discussions similaires

  1. Réponses: 7
    Dernier message: 30/08/2013, 19h48
  2. Réponses: 2
    Dernier message: 14/10/2011, 13h13
  3. Réponses: 0
    Dernier message: 14/10/2011, 11h15
  4. False Start pour une navigation plus rapide
    Par jamesfayssal dans le forum Actualités
    Réponses: 17
    Dernier message: 22/05/2011, 13h39
  5. Réponses: 1
    Dernier message: 18/10/2010, 11h45

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