Question

Ma société possède une application WinForm établie existante qui s'exécute sous WinXP. L’application effectue beaucoup de traitement du son avec DirectSound.

Ma société souhaite évaluer Mono en tant qu'alternative à un coût par poste de travail équivalent à Vista / Win Server 2008.

J'ai entendu dire que différentes estimations, allant de "Cela fonctionnera facilement avec Mono" à "Cela pourrait prendre des mois de recodage dans certains cas pour qu'une application WinForm s'exécute avec Mono sous Linux".

Quelqu'un at-il une bonne expérience du monde réel avec cela? Une bonne référence de lien? J'aimerais avoir une meilleure idée avant de m'engager à faire des tests.

Merci!

Était-ce utile?

La solution

La partie WinForms sera simple, vous devrez peut-être faire très peu, car Mono prétend désormais prendre en charge Winforms à 100%. Cependant, tous les appels DirectSound devront être réécrits pour utiliser une API disponible sous Linux, ALSA étant le choix évident. .

J'ai écrit de petites applications dans VS 2005 et les ai facilement portées à Mono. Si vous faites beaucoup de P / Invokes, vous devrez en tenir compte, car ceux-ci devront peut-être être complètement réécrits ou repensés.

Découvrez également MOMA : " l'outil Mono Migration Analyzer (MoMA) vous aide identifiez les problèmes que vous pouvez rencontrer lors du portage de votre application .Net vers Mono. Cela aide à localiser les appels spécifiques à la plate-forme (P / Invoke) et les zones qui ne sont pas encore prises en charge par le projet Mono. "

Autres conseils

Mono peut vous aider à déplacer le code géré, mais pas à déplacer le calque audio.

Malheureusement, le framework .NET ne fournit pas une API complète pour le traitement audio. Il fournit simplement un moyen de reproduire un petit échantillon sonore et n’est même pas très bon à cet égard (voir l’article de Jeroen sur les lacunes audio lors de l’exécution de l’émulateur C64 sous IKVM).

Vous devrez rechercher quelle API Linux correspond le mieux à ce que fait votre application audio.

L'entrée de blog de Lennart Poettering sur l'audio est un excellent point de départ:

http://0pointer.de/blog/projects/guide -to-sound-apis.html

Une fois que vous aurez choisi une API, comme dans Windows, vous devrez p / invoquer l’API qui vous convient.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top