Le moment viendra où tout le monde sera intéressé dès que quelqu'un va sortir un bon jeu avec ta lib. Après tout le monde voudra faire pareil.
La vitesse de l'IRQ c'est vrai n'est pas très élevée, et c'est un peu gênant pour une qualité CD (freqmax=22kHz) mais ce que j'ai entendu de l'enregistrement MP3 qui traine me parait parfaitement correct pour un son de jeu.
Quant aux signaux carrés, si ils sonnent bizarrement c'est que ils sont constitués d'une superposition de sinusoïdes d'amplitude décroissante et de fréquences multiples de la freq. de base, c'est ca qui fait le "timbre" du son. Mais en Hard tu pourras jamais faire mieux, car on n'utilise que des signaux logiques.
La solution c'est de mettre en sortie un filtre passe-bas, qui comme son nom l'indique est un circuit qui ne laisse passer que les signaux de basse fréquence et coupe les autres. Donc du signal carré, il ne reste que les sinusoïdes de plus basse fréquence. les autres sont atténuées.
Du coup, la superposition de tout le bordel fait que ca ne ressemble plus à un signal sinus, mais à une succession d'exponentielles (comme les courbes de décharge de condensateurs). Cela peut même ressembler à des signaux triangulaires, qui ont moins de fréquences supérieures (on dit d'harmoniques).
Pour faire ca c'est très simple, il suffit d'un condensateur et d'une résistance, c'est tout con:
[IMG]
http://www.ifrance.com/galaxoft/passebas.GIF[/IMG]
Les valeurs de composants sont des exemples.
Voici la réponse fréquentielle de ce filtre. L'échelle est en dB. Une amplification de 0 db correspond à un gain de 1, une valeur négative correspond à une atténuation.
Je tracé correspond à R2= 10kohms et C1= 1nFarad:
[IMG]
http://www.ifrance.com/galaxoft/bode_bas.GIF[/IMG]
La fréquence de coupure à partir de laquelle l'atténuation est de -3dB (ie une amplification de 1/sqrt(2)=0.707 vaut fc=1/(2*pi*r*c)
Si tu envoies un signal rectangulaire dans ce filtre, voici ce que l'on obtient. J'ai envoyé un signal de 1kHz dans un filtre qui commence à atténuer à 2.122 kHz (r=150k, c=500pF):
[IMG]
http://www.ifrance.com/galaxoft/pb_2k.GIF[/IMG]
Et si tu coupes à 530Hz voila ce qu'on obtient:
[IMG]
http://www.ifrance.com/galaxoft/pb530.GIF[/IMG]
Pour conclure, voici le spectre sonore du signal carré en vert: il comporte beaucoup de fréquences. En rouge tu as le signal filtré.
[IMG]
http://www.ifrance.com/galaxoft/pbfft.GIF[/IMG]