Dévoreur de ressources ?

muqaddarmuqaddar Administrateur
février 2005 modifié dans API AppKit #1
Voilà .

A votre avis, qu'est ce qui bouffe le plus de mémoire et de proc pour 1 seconde d'animation :

- lire une suite d'imagettes à  25i/s en png (donc 25 images dans notre cas)
- lire une video préparée en mov (ou mp4) avec ces mêmes images, tjs de 1 seconde, (et que le proc devra donc décoder, suivant le codec de compression)

?

Réponses

  • fouffouf Membre
    16:13 modifié #2
    Je pense que cela depend en partie de ta carte graphique. Je m'explique : la premiere solution necessite surtout le rafraichissement de ta vue en ce qui concerne la quantite de calul. Comme c'est la carte graphique qui va gerer ca, le processeur travaillera moins. Je pense donc que la premiere solution est la meilleure.

    En ce qui concerne la memoire, il faut que tu regardes ce qui est le plus volumineux. Je pense que c'est le fichier mov.

    Ai-je ete assez clair ??
  • muqaddarmuqaddar Administrateur
    16:13 modifié #3
    Oui, tu as été clair. :)

    La première solution est la plus facile pour moi en plus.

    Néanmoins, j'aimerai d'autres avis, si c'est possible, j'ai pas l'impression que ça fasse tant de différence que ça niveau proc.

    Sinon, je peux soit rafraà®chir ma vue, soit ma NSImageView... (ce que j'ai fait actuellement).
  • nucleusnucleus Membre
    16:13 modifié #4
    Je dirais que ca doit dépendre de ce qu'il y a dans ton animation, de ses dimensions..

    Si c'est de la vidéo, il y a de grandes chances que ca soit plus performant avec du MPEG-1/2/4, puisqu'il y a une compression des différences entre images (B-Frames), alors qu'avec les PNG tu dois te taper toute l'image au complet..
  • odjauodjau Membre
    16:13 modifié #5
    Mon expérience perso (hors cocoa) pour le choix d'une méthode... c'est de faire le test  :o
    je sais que c'est pas tellement une réponse à  ta question, mais j'en vois pas d'autre  ::)
    Le top c'est d'avoir plusieurs type de machines (G5 bi, G4, etc) on est souvent surpris des résultats  8)
  • CéroceCéroce Membre, Modérateur
    16:13 modifié #6
    Il y a un aspect qui a été occulté dans les réponses précédentes: c'est la lecture des images sur le disque, hors il me semble que c'est ce qui va avoir le plus d'impact sur les performances.

    Donc, je dirais que le plus rapide est celui qui est lu le plus rapidement sur le disque, sachant que le temps d'accès à  25 fichiers est bien plus important que celui à  un seul.
    Quoique que tant qu'on a pas essayé, comme le disent les autres, on n'est pas sûr.

    Par contre, je ne suis pas d'accord avec toi pour ce qui est de la mise en oeuvre: il me semble assez facile d'insérer une animation QuickTime dans une fenêtre Cocoa.
  • muqaddarmuqaddar Administrateur
    16:13 modifié #7
    Salut.

    Merci de vos réponses.
    Renaud m'a conseillé de charger les images en cache.

    Pour ce qui est du quicktime, oui, c'est facile mais le problème est le suivant : je dois récupérer l'alpha du Quicktime ! Je peux le faire sans pb sur une image. Mais en QT, il faut certainement lorgner du côté des API QT pour lire l'alpha de l'objet au premier plan et donc rendre le fond transparent.
Connectez-vous ou Inscrivez-vous pour répondre.