Partage
  • Partager sur Facebook
  • Partager sur Twitter

Lier un media element à mon projet

une histoire de musique

    23 mars 2011 à 18:47:59

    Bonjour,

    je m'amuse à découvrir un peu Visual Basic 2010. J'ai découvert le composant mediaelement qui permet de contrôler du son et de la vidéo simplement. Je m'amuse bien avec mais j'ai un petit soucis... pas moyen de mettre une vidéo ou une musique en source de mon projet.

    Contrairement au composant image qui "importe" les images dans le projets, MediaElement ne le fait pas. Du coup, en source, j'ai le chemin absolu de mon ordinateur. Forcément, exécuté sur un autre ordi, j'ai ni son, ni vidéo.

    Et j'ai beau essayer de glisser les vidéos dans le même répertoire que les photos ou de lui donner un chemin relatif, rien à faire, y'a que le chemin absolu qui semble lui plaire.

    Quelqu'un pour m'aider ? Parce que je trouve que c'est quand même sacrément bête et handicapant comme problème...

    Merci d'avance =)
    • Partager sur Facebook
    • Partager sur Twitter
      23 mars 2011 à 18:53:47

      Bonjour, pourquoi ne pas les mettre dans les ressources ? Ou sinon utiliser un code dans ce style là :

      me.Application.startuppath & "\MonMedia"  'indique le chemin du dossier de ton application
      


      Une petite question, comment te sert tu de MediaElement ? Tu peux me répondre par MP si tu veux.
      • Partager sur Facebook
      • Partager sur Twitter
        23 mars 2011 à 18:59:00

        Justement je n'arrive pas (ou ne sais pas...) comment les mettre dans les ressources.

        Sinon pour l'utilisation, une fois le media et sa source en place, sur le clic de bouton ou n'importe quel autre evenement :

        monMedia.LoadedBehavior = MediaState.Stop
        monMedia.LoadedBehavior = MediaState.Play
        monMedia.LoadedBehavior = MediaState.Pause
        monMedia.Position = New TimeSpan(0) 'remise à zero
        monMedia.volume = x 'valeur par défaut : 0.5
        • Partager sur Facebook
        • Partager sur Twitter
          23 mars 2011 à 19:18:58

          Pour mettre en ressource, clique sur "projet" puis "Propriété de TonApllication" puis "ressource" ensuite sur la petite flêche noir à coté de "ajouter une ressource" et fais "ajouter un fichier existant".

          Screen :

          Image utilisateur


          Mon problème c'est que je n'arrive pas à charger un élément avec MediaElement. Peut tu me donner un exemple de code ?
          • Partager sur Facebook
          • Partager sur Twitter
            23 mars 2011 à 19:28:22

            J'ai pas vraiment plus de code à te donner que ce que tu as eu précédemment...

            J'ajoute le composant mediaElement, je renseigne le champ Source par l'URL du composant (le chemin absolu sur mon disque donc...).

            A noter la propriété LoadedBehavier qui peut servir.


            Voici un exemple d’événement ou je l'utilise :

            Private Sub crossLagon_MouseLeftButtonUp(ByVal sender As System.Object, ByVal e As System.Windows.Input.MouseButtonEventArgs) Handles crossLagon.MouseLeftButtonUp
                    sonOcean.LoadedBehavior = MediaState.Stop
                End Sub
            

            Sinon j'ai bien réussi à ajouter les sons aux sources. Les fichiers apparaissent bien dans l'explorateur de solution, mais toujours pas moyen de lier le fichier en tant que source du mediaElement. A la compilation pas de soucis, mais dans le code source j'ai un ondulé bleu sous l'URL qui me dit "Le fichier 'monURL' ne fait pas parti du projet ou sa propriété 'BildAction' n'a pas valeur 'Resource' "

            La ligne en question :

            <MediaElement Height="71" HorizontalAlignment="Left" Margin="316,93,0,0" Name="sonOcean" VerticalAlignment="Top" Width="130" Source="/projetIle;component/Media/Sons/ocean.jpg" Volume="0.05" />
            
            • Partager sur Facebook
            • Partager sur Twitter
              23 mars 2011 à 19:47:57

              Je viens de tester, j'ai le même problème que toi :S
              • Partager sur Facebook
              • Partager sur Twitter
                23 mars 2011 à 19:55:28

                Si tu trouves une solution, je suis preneur =)
                • Partager sur Facebook
                • Partager sur Twitter
                  27 mars 2011 à 10:24:12

                  Le MediaElement ne supporte pas l'utilisation de resources. Il faut obligatoirement passer par un fichier.
                  • Partager sur Facebook
                  • Partager sur Twitter
                    27 mars 2011 à 13:48:26

                    Strimy, si tu t'y connais, sais tu comment changer le nom du fichier dans le code aussi ?
                    • Partager sur Facebook
                    • Partager sur Twitter
                    Anonyme
                      27 mars 2011 à 18:30:03

                      File.Move() pour renommer un fichier.
                      Spécifie l'ancien nom en premier paramètre et le nouveau en deuxième.
                      • Partager sur Facebook
                      • Partager sur Twitter
                        27 mars 2011 à 18:41:47

                        Pardon, je me suis mal exprimer lol, je veux dire, comment charger un autre fichier dans mediaElement.
                        • Partager sur Facebook
                        • Partager sur Twitter
                          27 mars 2011 à 21:34:22

                          Tu donnes une nouvelle URI en Source de ton MediaElement.
                          Du genre myMediaElement.Source = new Uri(@"nouvelle_source.mkv", UriKind.Relative);
                          • Partager sur Facebook
                          • Partager sur Twitter
                            28 mars 2011 à 17:33:41

                            bah merci, c'est pratique. :D
                            • Partager sur Facebook
                            • Partager sur Twitter

                            Lier un media element à mon projet

                            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                            • Editeur
                            • Markdown