alkasar a écrit:didier22 a écrit:Bonsoir,
Ayant développé un plugin wasapi foobar , avec pour objectif de faire mieux que le plugin standard en terme de qualité du son, je l'ai mis à disposition sur sourceforge:
https://sourceforge.net/projects/foobar ... ap2-output
Didier
intéressant.
t'as fait quoi de particulier pour améliorer la qualité du son ?
wasapi étant censé ne pas toucher au flux audio, quelques explications seraient bienvenues. merci.
N'ayant pas le code source du plugin officiel , je ne sais pas comparer les 2 d'un point de vue technique. peut être déjà que le plugin officiel, datant de 2013, ne tire pas parti des améliorations apportées par Windows 8 dans la gestion des threads:
https://msdn.microsoft.com/en-us/librar ... 39(v=vs.85).aspx
mais bon,ca ne concerne que Windows 8 et +, alors que j'ai aussi un meilleur son avec la version Windows 7, pour laquelle j'utilise un thread dédié au lieu d'une work queue.
De mon côté, j'ai travaillé surtout sur l'optimisation du code, à savoir limiter le nombre d'instructions exécutées , particulièrement dans le callback fournissant les samples audio au driver.
En fait, je restais un peu sur ma faim en terme de qualité du son avec les plugins foobar standards, alors que je trouve ce player audio formidable pour sa flexibilité d'utilisation et sa conception technique.
Par curiosité, j'ai donc étudié l'exemple de code source du SDK Microsoft, et je l'ai adapté pour qu'il fonctionne en mode WASAPI exclusive. Le trouvant meilleur que foobar, je m'en suis servi comme base de départ pour un nouveau plugin, que j'ai ensuite amélioré par optimisations successives.
Je n'applique aucun traitement sur le flux audio, si ce n'est gérer l'atténuation du volume ou inverser la phase absolue si ces options sont sélectionnées dans la config.