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

C++Builder Discussion :

video sur c++ builder


Sujet :

C++Builder

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Points : 5
    Points
    5
    Par défaut video sur c++ builder
    Bonjour, je programme en c++ avec le logiciel c++ builder , et je voudrai savoir comment on fait pour insérer une vidéo .
    Merci

  2. #2
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 449
    Points : 24 856
    Points
    24 856
    Par défaut
    tu as deux composants
    TMediaPlayer inclu dans Delphi
    TWindowsMediaPlayer que l'on peut importer comme ActiveX
    Tu peux lancer des fichiers AVI dont le RIFF H.264 si les codecs DivX sont installés : AVI RIFF File Reference (Windows)

    Tu peux aussi faire un ShellExecute pour lancer un lecture externe

    Si ta video est un flux, tu as player comme RealPlay, FlashPlayer conçu comme plugin à un navigateur comme Internet Explorer, faudrait voir si l'on peut les importer comme ActiveX eux aussi (ou simple TLB)
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Merci de ta réponse mais au faite je créer un jeu et je voudrai mettre au démarrage une vidéo et lorsque qu'on appuie sur une touche on passe la vidéo

  4. #4
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 449
    Points : 24 856
    Points
    24 856
    Par défaut
    Fait une fenêtre Modal,
    Si tu veux un speudo plein écran, BorderStyle bsNone, Align alClient ...
    Utilise un TMediaPlayer, la zone visulatiion peut-être un Panel (peut-être même directement la TForm)
    Il te suffit de mettre un OnKeyDown qui appel Close, cela fermera la fenêtre et donc libérera la vidéo
    un Close aussi dans un évènement du TMediaPlayer qui doit indiquer la fin de lecture

    il n'y a rien de complexe
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Merci beaucoup mais je suis novice avec ce logiciel donc je ne comprend pas vraiment ..
    lorsque je prend le composant TmediaPlayer je me retrouve avec un objet ou il y a un bouton play pause etc...

    OnKeyDown sert à vérifier si on appuie sur un bouton ?

  6. #6
    Membre actif
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 385
    Points : 288
    Points
    288
    Par défaut
    oui
    « Aucun homme ne peut rien vous révéler sinon ce qui repose déjà à demi endormi dans l'aube de votre connaissance»

    « No man can reveal to you aught but that which already lies half asleep in the dawning of your knowledge »_(¯`·.__-Alg3ri4nH4ck3r-__.·´¯)_

  7. #7
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 449
    Points : 24 856
    Points
    24 856
    Par défaut
    Citation Envoyé par sofiane92 Voir le message
    Merci beaucoup mais je suis novice avec ce logiciel donc je ne comprend pas vraiment .. ?
    Tu devrais alors commencer par les bases de la VCL, les cours Delphi ou C++Builder te serviront
    pense à la touche F1


    Citation Envoyé par sofiane92 Voir le message
    lorsque je prend le composant TmediaPlayer je me retrouve avec un objet ou il y a un bouton play pause etc...?
    Oui, lui il faudra le cacher, Visible à false, tu feras le pilotage par code

    Après, il faut affecter TMediaPlayer->FileName et faire un TMediaPlayer->Open()La propriété TMediaPlayer->Display devra comme je mentionnais utiliser un TPanel, c'est ce dernier qui sera utilisé comme zone d'affichage !

    Tu pourras affecter TMediaPlayer->DisplayRect au besoin, la valeur par défaut va prendre la surface entière

    La Méthode TMediaPlayer->Play() commencer la lecture

    Citation Envoyé par sofiane92 Voir le message
    OnKeyDown sert à vérifier si on appuie sur un bouton ?
    Sur le Panel, va te permettre de choper une touche

    Pense qu'en ShowModal, la Touche Echap est gérée par défaut mais souvent on utilise Space pour passer la vidéo d'intro d'un jeu, donc tu devras ajouter le code nécessaire sur VK_SPACE (on trouve du code partout à ce sujet) ou alors n'importe qu'elle touche et ceci suffira

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    void __fastcall ...KeyDown(TObject *Sender, WORD &Key, TShiftState Shift);
    {
      ModalResult = mrCancel; // Fermera la modale
    }
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  8. #8
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Bonjour, alors j'ai essayé avec mediaplayer mais j'ai vue que ça ne fonctionnai pas avec des video mp4... j'ai juste essayer avec une musique en .wav ..
    apres pour l'histoire de de l'appuie sur une touche je n'arrive pas a le faire fonctionner j'ai mis dans le TForm dans l'evenement KeyDown
    Image66->Visible=false;
    mais rien ne ce passe .

  9. #9
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 449
    Points : 24 856
    Points
    24 856
    Par défaut
    Bien souvent, un OnKeyDown n'arrive jamais jusqu'à la TForm, il est capturé par les TEdit ou autres contrôles présent

    La propriété KeyPreview de la TForm permet de gérer cela !

    Image66, j'espère que c'est juste pour du test, comment comptes-tu t'y retrouver si tu ne nommes pas correctement tes objets !

    Pour le MP4, je ne sais pas, pour le AVI RIFF H.264 si le codec (DivX) est installé le Media Player de windows peut le lire, il faut utiliser l'ActiveX TWindowMediaPlayer (C:\Windows\System32\wmp.dll) et non le composant TMediaPlayer, ce n'est pas le même du tout !

    Il suffit d'importer l'ActiveX, tu ajoutes l'unité à ton projet, inutile de faire un package

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
          FWindowsMediaPlayer = new TWindowsMediaPlayer(this);
          FWindowsMediaPlayer->Align = alClient;
          FWindowsMediaPlayer->Parent = PanelAVI;
          FWindowsMediaPlayer->Visible = true;
          FWindowsMediaPlayer->URL = OpenDialogAVI->FileName;
    Ensuite, il y a tout un tas de propriété que tu peux utiliser, si tu souhaites masquer les menus ...
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

  10. #10
    Futur Membre du Club
    Homme Profil pro
    Inscrit en
    Mai 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Mai 2011
    Messages : 7
    Points : 5
    Points
    5
    Par défaut
    Merci la vidéo fonctionne , mais le problème c'est qu'il y a toujours le lecteur (ou il y a Play pause etc) et moi je veux seulement avoir la vidéo , et aussi je voudrai quelle ce lance au lancement du programme (la je l'ai fait lorsque l'on appuie sur un bouton pour essayé) .
    pour KeyPreview je ne le trouve pas , j'ai réussi a mettre l'image invisible mais pour cela faut que je soi sur le Tform or l'image prend tout l'écran du programme donc je n'ai pas accès au Tform

  11. #11
    Expert éminent sénior
    Avatar de ShaiLeTroll
    Homme Profil pro
    Développeur C++\Delphi
    Inscrit en
    Juillet 2006
    Messages
    13 449
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Seine Saint Denis (Île de France)

    Informations professionnelles :
    Activité : Développeur C++\Delphi
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2006
    Messages : 13 449
    Points : 24 856
    Points
    24 856
    Par défaut
    Citation Envoyé par sofiane92 Voir le message
    le lecteur (ou il y a Play pause etc) et moi je veux seulement avoir la vidéo ...
    Comme le disais :
    Citation Envoyé par ShaiLeTroll Voir le message
    Ensuite, il y a tout un tas de propriété que tu peux utiliser, si tu souhaites masquer les menus ...
    Je n'ai pas cherché à les retirer, je te laisse fouiller un peu le fichier OCX.H et TLB.H, ils sont riche en fonctionnalité avec presque 200 classes

    Citation Envoyé par sofiane92 Voir le message
    pour KeyPreview je ne le trouve pas ,
    Cherche encore VCL.TForm.KeyPreview

    Citation Envoyé par sofiane92 Voir le message
    donc je n'ai pas accès au Tform
    Tu sembles très confus, comment pourrait-on ne pas avoir accès à ses propres objets !
    Que vient faire ce TImage ?
    En plus tu es libre de jouer avec Align alNone\alClient
    Pour un jeu, mieux vaut utiliser une TPaintBox qu'un TImage pour le dessin du jeu !
    La TPaintBox utilisant un triplebuffer TBitmap et un thread qui rempli l'un des 3 TBitmap à tour de rôle, on a évoqué cela souvent sur le forum sur les techniques d'optimisation graphique dans un jeu

    Utilise une fenêtre qui ne contient UNIQUEMENT le WMP, isole ton code, évite de tout mettre dans une seule fenêtre


    Citation Envoyé par sofiane92 Voir le message
    et aussi je voudrai quelle ce lance au lancement du programme
    Dans la boucle Main, il y a CreateForm et Run, il te faut jouer avec cela, ta vidéo d'intro c'est juste un SplashScreen ! il y a plein d'exemple à ce sujet
    Aide via F1 - FAQ - Guide du développeur Delphi devant un problème - Pensez-y !
    Attention Troll Méchant !
    "Quand un homme a faim, mieux vaut lui apprendre à pêcher que de lui donner un poisson" Confucius
    Mieux vaut se taire et paraître idiot, Que l'ouvrir et de le confirmer !
    L'ignorance n'excuse pas la médiocrité !

    L'expérience, c'est le nom que chacun donne à ses erreurs. (Oscar Wilde)
    Il faut avoir le courage de se tromper et d'apprendre de ses erreurs

Discussions similaires

  1. Premiers pas - développement de jeux video sur portable
    Par francois en galere dans le forum Développement 2D, 3D et Jeux
    Réponses: 3
    Dernier message: 09/02/2006, 20h12
  2. Réponses: 0
    Dernier message: 21/11/2005, 12h14

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