Techno pour le Dév d'une appli

gligli

Membre enregistré
30 Décembre 2003
6
0
Bonjour,

Je souhaite developper une appli sous MacOS x.3, jusque là rien de sorcier...

Sauf que mon appli devra
- accéder à une base de donnée (sans doute MySQL)
- accéder à un périphérique via un port USB.
- afficher une vidéo en incrustation dans une fenêtre, la vidéo sera capturé par une carte d'acquisition.
- La vidéo sera capturé sous forme de fichier AVI (ou autre)
- Un algo devra être capable de découper mes vidéos en fichier image par image...
- Faire du tracer de graphe assez complexe...


En réalité, tout ceci fonctionne exactement sous Windows (dev sous Borland C++Builder avec utilisation des API Win32 pour la parti avec les AVI)... mais maintenant je veux porter l'appli sous MacOS X, le plus rapidement possible !!!!

Ma question:
Cocoa ou Carbon?

Autant Cocoa me semble plutot simple (pas besoin de pisser énormément de ligne de code pour avoir un bon soft, donc sans doute gain de temps pour moi)... Mais en même temps, j'ai l'impression que je vais avoir des soucis pour ce qui est du port USB et de l'affichage de la vidéo

Pour ce qui concerne Carbon, c'est du C++, j'ai l'habitude, je pourrais reprendre facilement des portions de mon anciens code... Mais au niveau de la gestion de l'interface utilisateur, je trouve çà un peu un peu lourd (gestion des évènements, clique, etc...), çà fait pas très objet !!!

Que me conseiller vous?

PS: j'ai même penser à une troisième solution dev en Java avec appel C++ via JNI pour les accès aux ports USB et à la vidéo....
 
J'ai aussi développé sur Builder, je rève de l'équivalent sur Mac.
Des outils venant de Linux semblent prometteurs, mais bon, revenons à nos moutons; Je suis loin d'être un pro sur Mac, mais:
pour le périph USB, s'il n'a pas driver Mac ou n'est pas un périph dit standard (souris, clavier, clef mémoire...) je pense que tu vas y passer du temps tout les outils sont dispos (SDK USB il me semble). Pour la vidéo, c'est du Lego mais en utilisant Quicktime (qui est aussi dispo sur PC), il y a plein d'exemples sur le site Apple. Il faut t'inscrire sur le site développeur Apple: http://developer.apple.com/ . Je pense que tu peux méler du C++ (tes routines existantes) et Cocoa pour la vidéo, l'interface et le graphe.
 
Je te conseille Cocoa pour l'interface.
Pour tout ce qui est USB, tu vas devoir utiliser soit un composant Apple qui dépend de ton périphérique, soit la librairie IOKit (celle qui tourne dans l'environnement user).

Attention, pour ta carte d'acquisition, si elle est PCI, il va falloir développer une extension (.kext) qui va tourner dans l'environnement noyau. Tu peux faire un user client dans cette extension pour partager tes données avec ton appli, ou alors tu peux faire un composant QuickTime pour cette carte.

Sinon, Carbon, c'est du C et non du C++, mais c'est indispensable pour utiliser QuickTime. Le mieux est donc de mixer Carbon et Cocoa pour ce projet. Tu peux utiliser les deux sans problème.

Par contre, pour QuickTime, je te mets en garde : c'est très compliqué, c'est plein d'astuces, c'est long à apprendre.

Peut-être que mon code pourra t'aider : http://xtelevision.free.fr/