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 Discussion :

Récupérer, mémoriser, modifier la valeur du volume son système


Sujet :

Windows

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mai 2009
    Messages
    587
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 587
    Par défaut Récupérer, mémoriser, modifier la valeur du volume son système
    Bonjour, joyeux confinés !

    Ce que je cherche à faire est décrit dans l'intitulé de ce message.

    Je veux faire ça dans un projet écrit en VB6, mais cela n'a pas beaucoup d'importance : pour l'essentiel de ce qui est déjà écrit, je me suis largement inspiré d'exemples trouvés ici ou là, principale ment en C++.

    Je veux faire cela car j'ai déjà écrit l'essentiel de ce qui est spécifique à mon application : générer un son à une fréquence bien précise, le jouer avec un volume bien précis, à gauche, à droite ou les deux : ça marche, mais le réglage du volume est très complexe sous Windows : la gamme de réglages disponible pour mon application va de 0 à la valeur du volume système (si j'ai bien compris).

    Pour disposer de toute la fonctionnalité de mon application, j'ai donc besoin de mettre le volume système au maximum. Mais si je veux faire ça, il faut aussi qu'en sortant, je remette le volume système à sa valeur d'origine.

    La documentation µ$ sur les API est incroyablement compliquée à lire, alors que si j'avais un exemple de code (qui va faire comporter deux ou trois appels dans une ou deux librairies) j'aurai toute l'information dont j'ai besoin en une dizaine de minutes...

    Alors merci d'avance de votre aide.

    AMIcalement (et joyeux Noël !)

  2. #2
    Membre éclairé
    Inscrit en
    Mai 2009
    Messages
    587
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 587
    Par défaut
    Re-bonjour.

    Je suis un peu déçu du manque de réponse... Sans doute ma question était-elle mal posée.

    Quelqu'un peut-il m'indique une lecture claire et compréhensible sur les concepts, l'organisation et l'utilisation des fonctions "MIXER" et "WAVE" de l'API Winmm. Je suis déjà passé plusieurs fois sur le baratin de µ$, mais j'ai l'impression de comprendre un peu moins bien à chaque passage.

    En espérant être encore plus clair dans ma demande, je précise que j'ai réussi (en m'aidant de sources C et C++ trouvées avec Google) à programmer la génération d'un son dont je contrôle le volume, la fréquence et la voie de sortie, à l'aide des fonctions "WAVE".

    Pour aller plus loin, je désire contrôler le "volume son système", et j'ai donc besoin d'identifier le composant "MIXER" associé à la voie de sortie sélectionnée précédemment : c'est là que je bloque.

    En espérant un meilleur succès.

    AMIcalement.

  3. #3
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 159
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 159
    Par défaut
    Bonsoir,
    Citation Envoyé par L'AMI Yves Voir le message
    Je suis un peu déçu du manque de réponse...
    Peut-être plus de chance en postant dans le forum du langage que tu utilises ? https://www.developpez.net/forums/f2...b-6-anterieur/ ou http://www.developpez.net/forums/f14...3d-jeux/audio/

  4. #4
    Membre éclairé
    Inscrit en
    Mai 2009
    Messages
    587
    Détails du profil
    Informations forums :
    Inscription : Mai 2009
    Messages : 587
    Par défaut
    [@Jipété] Merci de ta suggestion, mais je me pose la question, car mon problème n'est pas un problème de langage, mais de compréhension et d'utilisation des API de Windows : il me semble que ça n'est pas une question de langage. Effectivement, je programme en VB6, mais je me suis (largement) inspiré jusqu'ici d'exemples en C ou C++, comme dit plus tôt.

    Mon problème est que je comprends pas bien les concepts de "Line" et de "Mixer", s'il est possible de les enchaîner à volonté, ou si le chaînage est imposé par le hard.

    Pour ce qui est déjà fait, je peux choisir entre deux "line", car "waveOutGetNumDevs" m'en a listé deux. "mixerGetNumDevs" m'en liste deux aussi, mais à partir de là, je ne sais plus quoi faire...

    C'est pourquoi j'ai pensé que le plus à propos était la programmation système de Windows. J'ai pas bon ?

  5. #5
    Expert confirmé
    Avatar de Jipété
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    11 159
    Détails du profil
    Informations personnelles :
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 11 159
    Par défaut
    Citation Envoyé par L'AMI Yves Voir le message
    [@Jipété] Merci de ta suggestion, mais je me pose la question, car mon problème n'est pas un problème de langage,
    Je sais bien, mais vu le peu de réponses que ton post a attirées, j'ai pensé qu'il fallait chasser ailleurs.

    Citation Envoyé par L'AMI Yves Voir le message
    C'est pourquoi j'ai pensé que le plus à propos était la programmation système de Windows. J'ai pas bon ?
    On dirait que non, ou alors c'est à cause de la période des fêtes, + l'ambiance morose de cette année pourrie.

    Si tu regardes bien les deux liens que je t'ai donnés, le second comporte le mot "audio" dans son titre : si quelqu'un a déjà travaillé là-dessus, en C, tu sauras ensuite traduire.

  6. #6
    Membre Expert
    Femme Profil pro
    ..
    Inscrit en
    Décembre 2019
    Messages
    705
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 95
    Localisation : Autre

    Informations professionnelles :
    Activité : ..

    Informations forums :
    Inscription : Décembre 2019
    Messages : 705
    Par défaut
    Bonjour,

    Citation Envoyé par Jipété Voir le message
    On dirait que non
    Je dirais plutôt que si, mais le problème est que, dès le moment où tu lis VB6, ça fait peur. Je suis certaine que s'il fait l'effort de passer à Delphi par exemple, un langage donc assez proche, il se sentira tout de suite moins seul.

    Cela étant dit, la recherche suivante devrait aboutir sur quelque chose d'exploitable duckduckgo.com|MIXERCONTROL_CONTROLTYPE_VOLUME

Discussions similaires

  1. Réponses: 6
    Dernier message: 01/08/2020, 11h09
  2. Réponses: 5
    Dernier message: 27/06/2017, 21h25
  3. Réponses: 5
    Dernier message: 05/11/2014, 15h42
  4. Modifier une valeur d'un controle ActiveX avant son initialisation
    Par Krysalgir dans le forum Windows Forms
    Réponses: 0
    Dernier message: 20/01/2011, 16h56
  5. [AC-2003] Récupérer la Lettre d'un lecteur par son nom de volume
    Par vversaveau dans le forum VBA Access
    Réponses: 1
    Dernier message: 29/07/2010, 12h33

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