begin process at 2010 02 10 12:52:39
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Multimédia

 > 

DirectX

 > 

Aide pour construire un graphe avec directshow


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Aide pour construire un graphe avec directshow

samedi 16 février 2008 à 19:53:27 | Aide pour construire un graphe avec directshow

fabpan

Bonjour,

Depuis quelque temps je tente de réaliser un graph de filtres avec la librairie de Directshowlib (2005) malheureusement cela ne donne rien car en faite je voudrais pouvoir jouer des fichiers mp3 et les envoyer sur une carte son que je choisirai dans une ComboBox alors ma question c'est comment faire ?

Voci mon code test pour lire mon fichier mp3 sur la sortie de mon casque audio (cela ne bug pas mais rien n'est joué). Quelqu'un pourrait-il m'aider svp ?


 //Variables globales
        IGraphBuilder graphBuilder;
        IMediaControl mediaControl;

       
        void MainFormLoad(object sender, EventArgs e)
        {
   
          graphBuilder = (IGraphBuilder)new FilterGraph();
        
         
          IBaseFilter sourceFilter = null;
          graphBuilder.AddSourceFilter(@"C:\monfichier.mp3", "source", out sourceFilter);

         //Je passe le guid du filtre MPEG-I Stream Splitter
         Type demultli = Type.GetTypeFromCLSID(new Guid("336475D0-942A-11CE-A870-00AA002FEAB5"));
         IBaseFilter multltiplexage = (IBaseFilter)Activator.CreateInstance(demultli);

         //Je passe le guid du filtre MPEG Layer-3 Decoder
         Type decodeur = Type.GetTypeFromCLSID(new Guid("38BE3000-DBF4-11D0-860E-00A024CFEF6D"));
          IBaseFilter decod = (IBaseFilter)Activator.CreateInstance(decodeur);

          //Je passe le guid du filtre de mon casque audio Logitech USB Headset
         Type clef = Type.GetTypeFromCLSID(new Guid("E30629D1-27E5-11CE-875D-00608CB78066"));
         IBaseFilter casque = (IBaseFilter)Activator.CreateInstance(clef);
         
           //J'ajoute les filtres au graphe manager
           graphBuilder.AddFilter(multltiplexage, "mon multi");
           graphBuilder.AddFilter(decod,"mon decod");
           graphBuilder.AddFilter(casque, "mon casque");
           
          //Variables Pin
          IPin sourceOut = null;
          IPin demultiIn = null;
          IPin demultiOut = null;
          IPin decodIn = null;
          IPin decodOut = null;
          IPin casqueIn = null;
         
           sourceFilter.FindPin("Output", out sourceOut);
           multltiplexage.FindPin("In", out demultiIn);
           multltiplexage.FindPin("Output", out demultiOut);
           decod.FindPin("In", out decodIn);
           decod.FindPin("Output", out decodOut);
           casque.FindPin("In", out casqueIn);
          
           //Je connecte les filtres via les pins
           graphBuilder.Connect(sourceOut, demultiIn);
           graphBuilder.Connect(demultiOut,decodIn);
           graphBuilder.Connect(decodOut, casqueIn);
           graphBuilder.Connect(sourceOut, decodIn);
           graphBuilder.Connect(decodOut, casqueIn);


           mediaControl = (IMediaControl)graphBuilder;

           //Execution du mp3
           mediaControl.Run();
        }


D'avance je remercie celui ou celle qui pourra m'éclairer car en fait je fais tout cela pour mon travail de fin d'études.





Cette discussion est classée dans : out, guid, graphbuilder, casque, ibasefilter


Répondre à ce message

Sujets en rapport avec ce message

probleme directshow wmv [ par gwenp68 ] Bonjour, j'ai suivi attentivement les cours sur directshow sur labo-dotnet, et je commence a en comprendre le fonctionnement.. Néanmoins, j'ai 2 peti Attributs directionnels [ par Lutinore ] Salut, y'a t'il une différence entre ses définitions COM !?[ Guid( "56a868b1-0ad4-11ce-b03a-0020af0ba770" ) ][ InterfaceType( ComInterfaceType.Interfa decodage c# [ par jesaipa_1 ] Slt a tous, je n'arrive pas a comprendre ces declaration qui sont en csharp et donc je n'arrive pas a les codées correctement en csharpquelqu'un pourr Fade in fade out decoupage de son.............. [ par yanis7518 ] Salut a tous Je dois créer une application qui permette de traiter des sons en réalisant les actions suivantes : - créer un sample à partir du son- fa erreur de strings [ par rhodan51 ] j'ai recopié l'exemple d'un bouquin mais il m'apparait une erreur lors de la compilation :[quote]chaine.cs(7,20): error CS1502: La méthode surchargée Console.WriteLine ou Console.Out.WriteLine ??? [ par rhodan51 ] dans le bouquin qui me sert à apprendre le C#, l'auteur utilise Console.Out.WriteLine pour écrire du texte en mode console. Mais en regardant divers c System.Net.WebClient gestion d'un time out [ par ultima_93 ] Bonjour jaimerai savoir si il y'a une commande sur System.Net.WebClient afin d'augmenter le time out car je fais une requete et la reponse qu'elle me WebServices en csharp : erreur out of range ! [ par zigxag ] Bonjour,Je sollicite votre aide car je ne trouve pas ce qu'il ne va pas dans mon code source. J'ai une fonction qui appelle un service web. Voici ma f Crystal report, jointure et GUID [ par Arthenius ] Artheniushttp://blogs.developpeur.org/Arthenius/"Ce qui ne me tue pas, me rend plus fort..." GetHostByAddress dépréciée mais remplacable ? [ par mathmax ] Bonjour, <fo


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,312 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales