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

C Discussion :

[Débutant] Timer avec un son.


Sujet :

C

  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Août 2006
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2006
    Messages : 1
    Par défaut [Débutant] Timer avec un son.
    Bonjour, j'aurai aimé réaliser un programme qui, toutes les 30s, émet un bip ( enfin fait émettre un bip au PC ), je ne sais pas si c'est possible, ou plus simplement, existe t'il une fonction prédéfini pour ce genre d'actions ?
    Merci.

  2. #2
    Rédacteur
    Avatar de Franck.H
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Janvier 2004
    Messages
    6 951
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Service public

    Informations forums :
    Inscription : Janvier 2004
    Messages : 6 951
    Par défaut
    Si tu est sous Windows, pour le Bip tu peux toujours voir pour la fonction MessageBeep de l'api Win32

    Pour faire émettre le bip toutes les 30s bin, peut-être un Thread avec un Timer à moins que tu a à disposition un Timer qui prenne un callback mais j'ai jamais fait ce genre de chose donc à voir pour d'autres avis !
    Mon Site
    Ma bibliothèque de gestion des chaînes de caractères en C

    L'imagination est plus importante que le savoir. A. Einstein

    Je ne répond à aucune question technique par MP, merci d'avance !

  3. #3
    Membre Expert
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Par défaut
    La sdl à un timer avec un callback, dans Windows aussi, SetTimer, on peut par ailleur utiliser WN_TIMER, toujours sous Windows.
    exemple msdn

  4. #4
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par Panchoo
    Bonjour, j'aurai aimé réaliser un programme qui, toutes les 30s, émet un bip ( enfin fait émettre un bip au PC )
    Ca doit être terriblement agaçant...

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 41
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    int main(void) 
    {
     
    while(1)
    {
       printf("\a") ; // le "symbole" \a fait émettre un bip court à l'enceinte reliée à la carte mère
     
       sleep(30000) ; // peut-être cette durée?
    }
     
    }

  6. #6
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par 0v3rb1t
    int main(void)
    {

    while(1)
    {
    printf("\a") ; // le "symbole" \a fait émettre un bip court à l'enceinte reliée à la carte mère

    sleep(30000) ; // peut-être cette durée?
    }

    }
    Euh, tu as déjà essayé sous Windows quand il y a une carte son installée et ta chaine HiFi allumée branchée dessus ?

    Moi, j'entend 'ding', pas 'bip'...

    EDIT : En fait, ça, c'était sous Windows 98. Avec XP, c'est le silence total... (sous IDE, console directe... pareil.)

  7. #7
    Membre averti
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    41
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2006
    Messages : 41
    Par défaut
    c'est étrange chez moi cela fonctionne...

  8. #8
    Membre Expert
    Avatar de Ti-R
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2003
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Hauts de Seine (Île de France)

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2003
    Messages : 1 683
    Par défaut
    Cela fonctionne bien sous XP aussi avec \a !

    Mais le bip provient bien du simulacre de buzzer attaché au PC, si on a pas d'hp directement connecté à la carte mère, on n'entendra rien...

    Disons pour être plus précis qu'il y a un "problème" avec MessageBeep, si la personne à sélectionné aucun modèle de son sous Windows.... il n'entendra rien. Donc pas terrible, mais de même, si il n'y a pas d'HP connecté directement à la CM, aucun bip ne sortira avec printf("\a")...


    ps: 0v3rb1t merci de penser à la balise CODE

  9. #9
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par Ti-R
    Cela fonctionne bien sous XP aussi avec \a !

    Mais le bip provient bien du simulacre de buzzer attaché au PC, si on a pas d'hp directement connecté à la carte mère, on n'entendra rien...
    Possible que mon portable n'ai pas de buzzer...

  10. #10
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 52
    Par défaut
    Bonsoir!
    Est ce que le symbol (\a) pour le son marche sous linux aussi? ou est ce que c'est specifique à windows?
    Est ce k'il y a des symboles pour des sons specifiques?
    dernire question: quelle librairie faut_il ajouter à cet extrait de programme? parce que je n'arrive pas à le compiler sous linux
    merci

  11. #11
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par thepinguin
    Est ce que le symbol (\a) pour le son marche sous linux aussi?
    euh, le caractère est standard mais l'effet n'est pas portable.
    ou est ce que c'est specifique à windows?
    Non. L'effet produit dépend de l'implémentation. Ca va de 'rien' à un son émis par la carte son, en passant par un 'bip' du HP, un voyant lumineux, un relais qui commande une sirène... Le a de '\a' signifie 'Attention'.
    Est ce k'il y a des symboles pour des sons specifiques?
    Rien de standard autre que '\a' (qui n'est pas garanti produire un son...)
    dernire question: quelle librairie faut_il ajouter à cet extrait de programme?
    Quel extrait ?
    parce que je n'arrive pas à le compiler sous linux.
    Il se passe quoi ?

  12. #12
    Membre averti
    Inscrit en
    Octobre 2006
    Messages
    52
    Détails du profil
    Informations forums :
    Inscription : Octobre 2006
    Messages : 52
    Par défaut
    euh pardon, je parlais de ce programme:

    Citation Envoyé par 0v3rb1t
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    int main(void) 
    {
     
    while(1)
    {
       printf("\a") ; // le "symbole" \a fait émettre un bip court à l'enceinte reliée à la carte mère
     
       sleep(30000) ; // peut-être cette durée?
    }
     
    }

    pour la compilation je croi qu'elle ne marche pas pour des raisons interne avec linux il me manque peutetre des choses. j'ai posé une question à ce sujet dans la discussion (librairies sous linux)

    Merci pour les reponses

  13. #13
    Expert éminent
    Avatar de Emmanuel Delahaye
    Profil pro
    Retraité
    Inscrit en
    Décembre 2003
    Messages
    14 512
    Détails du profil
    Informations personnelles :
    Âge : 68
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2003
    Messages : 14 512
    Par défaut
    Citation Envoyé par thepinguin
    euh pardon, je parlais de ce programme:
    Ben oui, il manque des headers pour les fonctions utilisées. sleep() est typiquement unixoide, je crois que le header est <unistd.h>. A vérifier dans le man... ($ man sleep)
    pour la compilation je croi qu'elle ne marche pas pour des raisons interne avec linux
    Pipeautage... Montre les messages d'erreur.

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 14/01/2013, 15h53
  2. [Débutant]Problème avec un timer
    Par Fabouney dans le forum C
    Réponses: 10
    Dernier message: 10/08/2006, 19h25
  3. [Débutant]Problème avec les timers
    Par mickael777 dans le forum MFC
    Réponses: 1
    Dernier message: 11/04/2005, 11h00
  4. [débutant] Problèmes avec CRegKey
    Par Pedro dans le forum MFC
    Réponses: 4
    Dernier message: 10/11/2003, 15h28
  5. [Débutant] Lenteur avec TComPort
    Par PhDt76 dans le forum C++Builder
    Réponses: 22
    Dernier message: 27/09/2003, 21h43

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