Le pub des programmeurs
- 1 925 réponses
- 117 participants
- 123 191 vues
- 130 followers
Anonyme
521410
Sujet de la discussion Posté le 25/08/2005 à 17:21:03Le pub des programmeurs
Salut y a des programeurs sur AF si oui vous bossez sous quoi ?
miles1981
8352
Je poste, donc je suis
Membre depuis 20 ans
1461 Posté le 12/06/2014 à 16:15:11
Citation de obe :
Du coup, tu n'as pas de problèmes de stabilité avec un filtre d'ordre 6 (parfois on préfère utiliser 3 filtres d'ordre 2) ? De plus la réponse en phase doit être assez bizarre, mais tant que cela ne s'entend pas cela ne pose pas de problème.
Sur le coup, je suis en train de regarder justement ce point. Je pensais partir sur un filtre Butterworth d'ordre 10, et en fait avec un oversampling x32, le Butterworth de base a pas mal de bruit de fond ! Du coup...
Audio Toolkit: http://www.audio-tk.com/
obe
408
Posteur·euse AFfamé·e
Membre depuis 20 ans
1462 Posté le 13/06/2014 à 13:00:51
@miles : J'ai regardé "Polynomial Interpolators for High-Quality Resampling of Oversampled Audio", et je pense en effet que c'est une bonne méthode pour upsampler le signal !
C'est vraiment mieux qu'une simple interpolation linéaire et c'est plus efficace en terme de latence et de calcul que d'upsampler en remplissant par des zeros et ensuite faire un passe-bas bien raide vers la fréquence de Nyquist avec un FIR (d'au moins 32 points).
J'ai aussi commencé à regarder le code de ta librairie, c'est vraiment bien fait, très clair dans sa construction.
(Si je devais emmettre une reserve personnelle (mes connaissances du C++ sont modestes, je l'ai enseigné à des étudiants en physique en M1), l'utilisation massive des templates rend surement le code plus polyvalent mais nuit peut-être à la compréhension rapide du code.)
Pour l'instant je n'ai pas encore trouvé la partie qui correspond au "pre-emphasis filter" (chapitre 8 de Polynomial Interpolators... page 61). Ce filtre doit servir à compenser la réponse spectrale de l'interpolateur. Olli Niemitalo ne donne "que" la réponse en fréquence des interpolateurs. Est-ce qu'il y a dans ta librairie de quoi calculer les coeffs du filtre qui doit pré-corriger la réponse en fréquence de l'interpolateur ?
En tout cas, vraiment merci, cela va m'être très utile. Je compte dans un premier temps faire un script Jesusonic pour implementer l'oversampling avec cette méthode d'interpolation.
C'est vraiment mieux qu'une simple interpolation linéaire et c'est plus efficace en terme de latence et de calcul que d'upsampler en remplissant par des zeros et ensuite faire un passe-bas bien raide vers la fréquence de Nyquist avec un FIR (d'au moins 32 points).
J'ai aussi commencé à regarder le code de ta librairie, c'est vraiment bien fait, très clair dans sa construction.
(Si je devais emmettre une reserve personnelle (mes connaissances du C++ sont modestes, je l'ai enseigné à des étudiants en physique en M1), l'utilisation massive des templates rend surement le code plus polyvalent mais nuit peut-être à la compréhension rapide du code.)
Pour l'instant je n'ai pas encore trouvé la partie qui correspond au "pre-emphasis filter" (chapitre 8 de Polynomial Interpolators... page 61). Ce filtre doit servir à compenser la réponse spectrale de l'interpolateur. Olli Niemitalo ne donne "que" la réponse en fréquence des interpolateurs. Est-ce qu'il y a dans ta librairie de quoi calculer les coeffs du filtre qui doit pré-corriger la réponse en fréquence de l'interpolateur ?
En tout cas, vraiment merci, cela va m'être très utile. Je compte dans un premier temps faire un script Jesusonic pour implementer l'oversampling avec cette méthode d'interpolation.
[ Dernière édition du message le 13/06/2014 à 13:01:58 ]
miles1981
8352
Je poste, donc je suis
Membre depuis 20 ans
1463 Posté le 13/06/2014 à 21:10:34
Merci ! De mon point de vue, les templates sont intéressants pour permettre d'implémenter les conversions de type facilement. Même s'il est vrai que pas mal de filtres sont en double seulement, voire float, donc on pourrait s'en passer, mais l'objectif est de garder quelque chose de générique. Et les templates, ça fait partie de la base du C++, sans ça, pas de polymorphisme statique.
Je n'ai pas fait la partie pre-emphasis, effectivement. Cela ne coûterait pas cher à écrire, c'est sûr, surtout que les filtres IIR sont là pour ça. On pourra faire un test un jour pour voir l'efficacité et l'utilité ! (il me semblait qu'ils étaient inclus dans les filtres proposés, mais j'ai fait cette partie il y a plusieurs années, j'ai pu zapper des trucs) Il y a d'autres filtres interpolateurs que je dois implémenter, comme les paraboliques, mais ça prend du temps et j'ai un boulot en journée :p (déjà que je passe pour un hurluberlu !)
Je n'ai pas fait la partie pre-emphasis, effectivement. Cela ne coûterait pas cher à écrire, c'est sûr, surtout que les filtres IIR sont là pour ça. On pourra faire un test un jour pour voir l'efficacité et l'utilité ! (il me semblait qu'ils étaient inclus dans les filtres proposés, mais j'ai fait cette partie il y a plusieurs années, j'ai pu zapper des trucs) Il y a d'autres filtres interpolateurs que je dois implémenter, comme les paraboliques, mais ça prend du temps et j'ai un boulot en journée :p (déjà que je passe pour un hurluberlu !)
Audio Toolkit: http://www.audio-tk.com/
miles1981
8352
Je poste, donc je suis
Membre depuis 20 ans
1464 Posté le 15/06/2014 à 00:35:10
Je viens de finir la compilation AU du plugin (pas testé le format VST2 sous Windows, ce sera pour la semaine prochaine), mais ça a l'air de marcher.
Pour ceux qui sont intéressés : https://github.com/mbrucher/ATK-plugins/tree/develop/ATKSD1/
Pour ceux qui sont intéressés : https://github.com/mbrucher/ATK-plugins/tree/develop/ATKSD1/
Audio Toolkit: http://www.audio-tk.com/
GrosGrainGras
48
Nouvel·le AFfilié·e
Membre depuis 19 ans
1465 Posté le 15/06/2014 à 16:15:54
Hello,
je suis aussi en train de développer un logiciel de simulation électronique temps réel...
J'ai aussi pas mal d'articles sur le sujet si ça vous intéresse :
La thèse de David T Yeh (bien plus récent et plus complet que l'article cité auparavent du même auteur):
https://ccrma.stanford.edu/~dtyeh/papers/DavidYehThesissinglesided.pdf
Poursuivre avec le paper de Martins et Zolzer (Du lourd!):
http://recherche.ircam.fr/pub/dafx11/Papers/21_e.pdf
La thèse de Jaromir Macak (Reprend la formulation du précédent cité, mais étendue à des circuits plus complexes, pour des circuits avec transfos ou aop):
https://dspace.vutbr.cz/xmlui/bitstream/handle/11012/21132/thesis.pdf?sequence=1&isAllowed=y
En espérant que ça aide!
je suis aussi en train de développer un logiciel de simulation électronique temps réel...
J'ai aussi pas mal d'articles sur le sujet si ça vous intéresse :
La thèse de David T Yeh (bien plus récent et plus complet que l'article cité auparavent du même auteur):
https://ccrma.stanford.edu/~dtyeh/papers/DavidYehThesissinglesided.pdf
Poursuivre avec le paper de Martins et Zolzer (Du lourd!):
http://recherche.ircam.fr/pub/dafx11/Papers/21_e.pdf
La thèse de Jaromir Macak (Reprend la formulation du précédent cité, mais étendue à des circuits plus complexes, pour des circuits avec transfos ou aop):
https://dspace.vutbr.cz/xmlui/bitstream/handle/11012/21132/thesis.pdf?sequence=1&isAllowed=y
En espérant que ça aide!
miles1981
8352
Je poste, donc je suis
Membre depuis 20 ans
1466 Posté le 15/06/2014 à 17:13:02
Intéressant, merci !
Audio Toolkit: http://www.audio-tk.com/
Hohman
4086
Squatteur·euse d’AF
Membre depuis 12 ans
1467 Posté le 19/06/2014 à 01:01:26
Le petit crabouillage pour la disto.
miles1981
8352
Je poste, donc je suis
Membre depuis 20 ans
1468 Posté le 19/06/2014 à 01:26:01
Audio Toolkit: http://www.audio-tk.com/
Hohman
4086
Squatteur·euse d’AF
Membre depuis 12 ans
1469 Posté le 19/06/2014 à 01:29:59
Heureux si ça te fait plaisir
nonconforme
8889
Je poste, donc je suis
Membre depuis 22 ans
1470 Posté le 19/06/2014 à 09:15:12
Salut GrosGrainGras, tu fais ce développement dans quel cadre ? Travail perso ou institutionnel ?
Affiliation : Dirigeant Fondateur d'Orosys - Two notes Audio Engineering
- < Liste des sujets
- Charte