NSTimer ou pas ?

NseaProtectorNseaProtector Membre
13:54 modifié dans API AppKit #1
Juste une question, pour faire un séquenceur par exemple est-ce qu' NSTimer est suffisamment précis ou est-il préférable de faire autrement ?
Dans le temps on se synchronisé sur l'interruption de balayage de l'écran mais cette époque est révolue, alors on fait comment ?

Réponses

  • 13:54 modifié #2
    En ce qui concerne la première question, je te répondrai non car la version unix implémentée dans MacOS X n'est pas un système temps réel. Nous sommes bien dans le cas où l'événement se déclenche à  intervalles réguliers quelque soit la charge de la machine.
    D'autre part, en ce qui concerne les interruptions, elles sont généralement déclenchées par le ou les interruptions du micro processeur via un quartz (horloge de cadencement).
    Je pense que l'exemple que tu cites est la VBL Task. Elle ne pouvait  cependant pas convenir à  tous les usages (limitation au niveau de la mémoire, je crois).
  • CéroceCéroce Membre, Modérateur
    13:54 modifié #3
    NSTimer n'est pas très précise (il me semble que ça utilise la boucle du runtime ObjC), mais tout dépend de ton besoin.

    Les affichages sont synchronisés sur l'interruption VBL depuis MacOS 10.2, il me semble.
  • NseaProtectorNseaProtector Membre
    13:54 modifié #4
    NSTimer n'est pas très précise (il me semble que ça utilise la boucle du runtime ObjC), mais tout dépend de ton besoin.

    Les affichages sont synchronisés sur l'interruption VBL depuis MacOS 10.2, il me semble.

    Comme je le disais, pour un sequenceur par exemple c'est quand même mieux si c'est parfait, parce que les oreilles elles pardonnent pas des écarts trop important !
  • CéroceCéroce Membre, Modérateur
    septembre 2008 modifié #5
    Je viens de me rendre compte que nous étions dans la section audio.    :o

    Lis un peu la doc de CoreAudio. Pour Core MIDI, je sais qu'on peut donner une date (timestamp) à  laquelle le message MIDI sera émis. Bref, faut pas utiliser NSTimer ici !

    http://developer.apple.com/documentation/MusicAudio/Conceptual/CoreAudioOverview/Introduction/chapter_1_section_1.html

  • NseaProtectorNseaProtector Membre
    13:54 modifié #6
    Et y'a t'il des exemples "core audio" disponibles quelque part ?
  • CéroceCéroce Membre, Modérateur
    13:54 modifié #7
    Les exemples dans Developer/Examples/CoreAudio ne sont pas trop mauvais pour une fois.

    En bonus: un synthé gratuit.
  • NseaProtectorNseaProtector Membre
    13:54 modifié #8
    Ok merci je vais regarder tout ça tranquillement...
Connectez-vous ou Inscrivez-vous pour répondre.