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

Windows Forms Discussion :

C# et DirectX audio


Sujet :

Windows Forms

  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 26
    Points : 22
    Points
    22
    Par défaut C# et DirectX audio
    Bonjour,

    Je travail sur un petit lecteur audio.
    Mon problème concerne la libération de mémoire:
    J'utilise une variable "monfichier" de type: Microsoft.DirectX.AudioVideoPlayback.Audio.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    private void next_file()
    {
                if (playlist.ContainsKey(index + 1))
                {
                    monfichier.Stop();
                    monfichier = new Audio(playlist[index +1]);
                    monfichier.Play();
                }
    }
    le problème est que fichier précédent persiste en mémoire.
    Quelqun s'est-il comment libérer cette mémoire?

    Merci davance,

    Thunder

  2. #2
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    114
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 114
    Points : 140
    Points
    140
    Par défaut
    Bonjour,

    Si ton objet utilise des éléments non managé (comme je le pense), tu devrait appeler la méthode Dispose de ton objet avant de faire ton new.

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 26
    Points : 22
    Points
    22
    Par défaut
    Je n'utilise pas de code non managé, et je ne pense pas qu'il y en est dans les librairies DirectX.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Février 2008
    Messages
    114
    Détails du profil
    Informations personnelles :
    Âge : 36
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 114
    Points : 140
    Points
    140
    Par défaut
    Moi je pense au contraire qu'il utilise du code non managé pour la gestion du son (tout comme winform utilise l'API win32 en arrière plan, donc du code non managé...)

    cf : http://msdn.microsoft.com/en-us/libr...24(VS.85).aspx (le seul lien que je trouve sur la classe audio de directx9)

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    26
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 26
    Points : 22
    Points
    22
    Par défaut
    En effet, l'utilisation de dispose à réglé le problème.
    Merci pour ton aide

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DirectX/Audio]exception lors de la lecture d'un mp3
    Par nightcyborg dans le forum C#
    Réponses: 1
    Dernier message: 23/02/2008, 23h36
  2. Managed DirectX - Lire un fichier audio
    Par Herwin78800 dans le forum Windows Forms
    Réponses: 1
    Dernier message: 21/08/2007, 19h02
  3. Mélangeur audio DirectX
    Par djin94 dans le forum Windows
    Réponses: 1
    Dernier message: 09/07/2007, 14h43
  4. [DirectX-DotNet] - Besoin d'info pour l'audio
    Par JFKen dans le forum DirectX
    Réponses: 4
    Dernier message: 29/06/2006, 17h59
  5. [debutant][.NET, directx 9] capture audio-video
    Par Tarul dans le forum DirectX
    Réponses: 3
    Dernier message: 26/02/2005, 12h50

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