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

Composants FMX Delphi Discussion :

utilisation de MédiaPlayer


Sujet :

Composants FMX Delphi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 638
    Billets dans le blog
    65
    Par défaut utilisation de MédiaPlayer
    Bonjour,

    juste avant que je ne m'arrête pour quelques heures (ou pas) j'ai un petit souci avec TMediaPlayer. Je voudrais selon un nombre tiré au hazard, jouer un son
    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
     
    procedure TMainUnit.PlaySound(I: Integer);
    var
      ResStream: TResourceStream;
    begin
      try
      ResStream := TResourceStream.Create(HInstance, Format('le%d',[i]), RT_RCDATA);
      try
        ResStream.Position := 0;
        ResStream.SaveToFile(TmpFile);
     // ?    Mediaplayer1.Clear;
        MediaPlayer1.FileName := TmpFile;
        MediaPlayer1.Play;
      finally
        ResStream.Free;
      end;
      except
     
      end;
    end;
    Seulement seul le premier est joué. Quelle est mon erreur ?

  2. #2
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 638
    Billets dans le blog
    65
    Par défaut
    Je me réponds. L'importance de l'ordre des instructions

    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
     
    procedure TMainUnit.PlaySound(I: Integer);
    var
      ResStream: TResourceStream;
    begin
      try
      ResStream := TResourceStream.Create(HInstance, Format('le%d',[i]), RT_RCDATA);
        try
          // Arrêter le média
          if MediaPlayer1.State=TMediaState.Playing then MediaPlayer1.Stop;
          // libérer le fichier
          MediaPlayer1.Clear;
          ResStream.Position := 0;
          ResStream.SaveToFile(TmpFile);
          // jouer le nouveau fichier
          MediaPlayer1.FileName:=tmpFile;
          if MediaPlayer1.Media<>Nil then Mediaplayer1.Play;
        finally
          ResStream.Free;
        end;
      except
       // ressource non trouvée
      end;
    end;

  3. #3
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 638
    Billets dans le blog
    65
    Par défaut
    En testant le déploiement de l'application vers Ubuntu, j'ai eu la surprise de voir tous mes fichiers sons, contenus dans la ressource, déployés
    d'un côté, quelque part je trouve que la ressource est bien traitée niveau déploiement (je retrouve tous les fichiers) d'un autre côté je trouve ça déplorable, moi qui me suis décarcassé à tout mettre dans les ressources programmes pour, justement, éviter de déployer chaque fichier.

    Le code fonctionne quand même
    À noter pour Ubuntu il faut que VLC soit installé bien que via Windows SubSystem Linux cela n'ait pas fonctionné
    J'ai fait le déploiement pour Androïd, cela semble aussi être le cas


    Je pose alors la question aux détenteurs de matériel à la pomme, comment les ressources sont-elles déployées sur un Mac ou vers un IOS ?

    Question subsidiaire, cette fois sur TMediaplayer, je pourrais envisager un seul fichier de sons (annonces des numéros du Bingo) dans ce cas comment découper, en admettant que tous les temps soient identiques (2 secondes) ?

  4. #4
    Membre Expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Par défaut
    Les resources dans le programme sont une spécificité de Windows. Sur les autres l'EDI et la RTL rusent en nous masquant la chose pour simplifier notre travail.

  5. #5
    Rédacteur/Modérateur

    Avatar de SergioMaster
    Homme Profil pro
    Développeur informatique retraité
    Inscrit en
    Janvier 2007
    Messages
    15 638
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 69
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur informatique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2007
    Messages : 15 638
    Billets dans le blog
    65
    Par défaut
    Alors je vais ruser aussi et tout mettre dans un même fichier si j'arrive à découper correctement

  6. #6
    Membre Expert
    Avatar de pprem
    Homme Profil pro
    MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Inscrit en
    Juin 2013
    Messages
    1 876
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : MVP Embarcadero - formateur&développeur Delphi, PHP et JS
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 876
    Par défaut
    Citation Envoyé par SergioMaster Voir le message
    Alors je vais ruser aussi et tout mettre dans un même fichier si j'arrive à découper correctement
    une base SQLite avec des fichiers stockés comme blogs, le tout downloads au lancement du programme depuis une URL peut être une solution selon tes besoins (mais nécessite le oued au démarrage au moins la première fois)

Discussions similaires

  1. utiliser les tag [MFC] [Win32] [.NET] [C++/CLI]
    Par hiko-seijuro dans le forum Visual C++
    Réponses: 8
    Dernier message: 08/06/2005, 15h57
  2. Réponses: 4
    Dernier message: 05/06/2002, 14h35
  3. utilisation du meta type ANY
    Par Anonymous dans le forum CORBA
    Réponses: 1
    Dernier message: 15/04/2002, 12h36
  4. [BCB5] Utilisation des Ressources (.res)
    Par Vince78 dans le forum C++Builder
    Réponses: 2
    Dernier message: 04/04/2002, 16h01
  5. Réponses: 2
    Dernier message: 20/03/2002, 23h01

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