Se connecter
Se connecter

ou
Créer un compte

ou
Agrandir
Les Mains dans le Cambouis
Bidouille & Développement Informatique

Sujet Le pub des programmeurs

  • 1 925 réponses
  • 117 participants
  • 122 566 vues
  • 130 followers
Sujet de la discussion Le pub des programmeurs
Salut :coucou: y a des programeurs sur AF si oui vous bossez sous quoi ?
Afficher le sujet de la discussion
361

Citation :
Mais scons, ça m'intéresse, s'il peut faire des tests unitaires à la volée, ça peut être un plus, faut peut-être juste attendre que ça murisse correctement - peut-être pas assez de monde pour répondre aux attentes de KDE ? -



Ben surtout, sur les ML de scons, j'ai rarement vu le gars qui bossait sur bksys (le fork de scons pour kde) poser des questions. scons gere deja qt (je sais pas a quel point, j'ai jamais essaye qt + scons).

Le probleme des tests, je me souviens plus exactement pourquoi c'etait chiant, mais je voulais juste faire l'equivalent d'un make check avec autotools, et le truc tout con:


ex_test: test
$PWD/$^
362
Je suis en train de regarder la manière de faire des bindings C++/Python, et SIP a l'air pas mal. Tu as essayé quoi comme générateur de binding, Gabou ?
363
Boost python; j'avais entendu dire que sip etait trop limite, mais j'ai jamais verifie. Mais bon, boost python est quand meme tres lourd, tout en etant assez efficace pour cacher les problems de reference counting et cie. C'est dommage que ca gere pas les tableaux numpy, mais si j'avais le temps, je regarderais comment faire. Le truc que j'ai fait avec est plus ou moins trivial, aussi: 3 classes, peu de marshmalling a faire (il transcrit tout seul les string C++ <-> string python, pour le reste, il faut le faire a la main je crois).

Faudrait que je jette un coup d'oeil a swig, parce que je connais qu'avec le C, pas le C++, je sais pas a quel point il automatise les choses.
364
J'ai une petite question aux pros du DSP. A vous lire (et ça me semble normal vu le nombre d'opérations), le moindre filtre boufferait pas loin de toutes les capacités de nos PC les plus puissants. Alors comment font les éditeurs de softs audio pour nous permettre de gérer 15 pistes audio avec chacune 3 EQ et un compresseur plus 2 ou 3 effets en send , le tout sur un PIV 2G de base ?

Il y a deux moyens d’oublier les tracas de la vie : la musique et les chats.
Albert Schweitzer

365

Citation :
A vous lire (et ça me semble normal vu le nombre d'opérations), le moindre filtre boufferait pas loin de toutes les capacités de nos PC les plus puissants.



Euh, non, pas vraiment. Ca depend des filtres, mais le filtre de base pour synthe est un filtre dit recursif, d'ordre 2 (permet des pentes de 24 dB/octave), et l'implementation de base, avec y en sortie et x en entree, c'est

y[n] - b[1] * y[n-1] - b[2] * y[n-2] = a[0] * x[n] + a[1] * x[n-1] + a[2] * x[n-2] (implementation directe, par forcement la meilleure).

Donc oui, c'est relativement cher car pour chaque sample, il faut faire pas mal de caluls / acces memoires. Mais ca reste raisonnable.

Ce qui coute cher, par contre, en general, c'est d'updater les coefficients (changement de frequence de coupure, de la resonnance, etc...), parce que ca fait souvent internir des fonctions transcendales (sin et cos typiquement), qui coutent plusieurs centaines de cycles, et donc si tu le fais 500 fois par seconde, ca fait des centaines de milliers de cycles bouffes par seconde juste pour calculer les a et b.

Ce qui coute cher aussi, c'est le filtrage a partir de la reponse impulsionnelle, car pour un sample en sortie, il faut faire en gros N additions + N multiplications, ou N est la taille de la reponse impulsionnelle, qui peut atteindre plusieurs seconde (donc N de l'ordre de plusieurs dizaines de milliers).
366

Citation : Ce qui coute cher, par contre, en general, c'est d'updater les coefficients


Ben oui, justement, toutes nos EQ dans Cubase ou Logic sont paramètriques, Q réglable, fréqu de coupure réglable. Je soupçonne certaines approximations dans ces trucs, justement (si c'est possible), pour gagner du temps. A première vue, les EQ de Logic 4.8 (qui tourne farpaitement sur PIII 800) ne sonnent pas du tout comme celles de Cubase SE, à réglage identique. Je préférais Logic.

Comment qu'y font alors ?

Il y a deux moyens d’oublier les tracas de la vie : la musique et les chats.
Albert Schweitzer

367

Citation :
Ben oui, justement, toutes nos EQ dans Cubase ou Logic sont paramètriques, Q réglable, fréqu de coupure réglable.



Oui enfin a priori, un EQ, une fois qu'il est regle, t'y touches plus, et tu le changes pas 500 fois par seconde ;)

Citation :
Je soupçonne certaines approximations dans ces trucs, justement (si c'est possible), pour gagner du temps. A première vue, les EQ de Logic 4.8 (qui tourne farpaitement sur PIII 800) ne sonnent pas du tout comme celles de Cubase SE, à réglage identique. Je préférais Logic.



Il y a pleins de methodes en effet. Deja, les a et b, je t'ai pas dit comment on les calcule a partir de Q et de fc, c'est pas par hasard. Ensuite, il y a la maniere d'implementer le filtre (calcul direct comme auparavant, ou autres topologies); maintenant, je suis pas sur que ce dernier point soit fondamental en flottant, mais ca l'est assurement sur du hardware si tu calcules en fixe
368

Citation : Comment qu'y font alors ?



Ils précalculent quand c'est possible (et que ça vaut le coup), ils approximent sinon ;)
369
Sip trop limite ? Il ont tout de même binder avec Qt4, et c'est costaud tout de même.
Le gros inconvénient de Boost.Python : y'a pas de doc en pdf ou qu'on peut facilement imprimer, c'est chiant au possible...
370
Ben comme dit, j'ai pas vraiment regarde. Mais ca a l'air de ressembler a swig ?