Se connecter
Se connecter

ou
Créer un compte

ou

Sujet De quoi ai je besoin? Vrai pitch shift ou faux pitch shift?

  • 19 réponses
  • 4 participants
  • 1 179 vues
  • 1 follower
1 De quoi ai je besoin? Vrai pitch shift ou faux pitch shift?
Bonjour,

Je suis novice en matière de traitement du son.
J'ai été amené à programmer mon propre sampler de son, qui utilise comme drivers de sortie les ASIO 2.0
J'aimerai intégrer une fonction de pitch shift (vu toutes les dénominations qu'il y a pour ça, je ne suis pas sur d'utiliser la bonne).
Ayant intégré la possibilité d'accueillir des plugins VST dans mon soft, j'ai testé différents plugins:
-Madshifta
-PitchWorx (marche pas avec ASIO)
-Ultravoice
-...

J'ai aussi essayé d'utiliser l'algo de smb (www.dspdimesion.com) qui marche plutôt bien.

Mais pour tous ces moyens de pitch shift, je suis confronté a un problème de surcharge de calcul pour le processeur. En effet, je dois pouvoir shifter jusqu'à 20 samples en même temps, en temps réel.

Avant j'utilisais Gigastudio comme sampler et il était capable de le faire.

J'en arrive donc a cette interrogation. Tous les plugins que j'ai essayé faisaient du "vrai pitch shifting" avec des transformées de fourrier et plein de calculs. Je me demande donc si, ce que j'ai besoin n'est pas plutôt de faire du "faux pitch shifting", c'est a dire, de changer la fréquence de mes samples 44kHz en temps réel vers du 22kHz (par exemple, et les jouer a 44kHz) pour faire qu'ils paraissent 1 octave plus haut (par exemple)?

Je pense maintenant que c'est ce que faisait Gigastudio. Et je crois que c'est ce que fait un soft comme Cool Edit lorsqu'on utilise la fonction de pitch bend.
Ce que je ne sais pas, c'est si en faisant comme ca, on peut garder la durée originale du sample.

Quel sont les moyens de faire ce type de traitement ? Algo ? plugin ?

Merci a ceux qui ont une idée.
Bonne continuation.
:bravo: :bravo: :)
2
Au vu de la quantité de soft qui le font par défaut, je ne vois pas l'interet de le faire par un plug...je sais pas...reason, halion, ...
La variété paye le loyer...
3
En fait avant j'utilisais gigastudio.
Mais pour halion ou reason je pense pas que ca solutionne mon probleme.

En effet, j'ai programmé un soft dont le but est justement de remplacer gigastudio en se cantonnant uniquement a ce que j'ai besoin. C'est a dire jouer des samples a partir d'un jeu de commande midi reduit a 5 commandes.

Le but est d'utiliser le moins de ressources possible.

Mais pour exploiter la commande midi de "pitch shift", je dois trouver un moyen d'avoir une gestion du pitch capable de calculer jusqu'a 20 samples en meme temps.

La question que je me pose est : comment faisais Gigastudio, et comment je peuxfaire pareil. Faisait il juste un changement du "sample rate"?
4
Ah ok...un sampler change en principe la vitesse de lecture...à toi de trouver l'equivalent en programmation
La variété paye le loyer...
5

Citation : c'est a dire, de changer la fréquence de mes samples 44kHz en temps réel vers du 22kHz (par exemple, et les jouer a 44kHz) pour faire qu'ils paraissent 1 octave plus haut (par exemple)?



c'est ca qu'il faut que tu utilise... :clin:

pour changer la note tu dois changer la vitesse de lecture (vitesse de lecture * 2^(1/12) par demi ton superieur)
Cependant cette technique ne preserve pas l'aspect temporelle...apres si tu veux preserver cet aspect il faut utiliser des algorithmes plus puissants...Kontakt utilise un algorithme basé sur de la synthèse resynthese granulaire pour faire cette tache...mieux l'algo de melodyne est super puissant :!:
6
Je vous remercie sincerement de vos reponses,

Je n'ai pas besoin de conserver l'aspect temporel car je ferai un changement du pitch seulement sur des samples qui seront boucles (loop).

La fonction "pitch bender" d'un cool edit, par exemple, fait elle juste un changement du sample rate.

A part ca , je ne suis pas sur de bien comprendre la difference entre changer le sample rate, et changer la vitesse de lecture (la vitesse de lecture n'est elle pas conditionnee par la carte son). (Ex : dans Cool Edit , quand je change le sample rate de 44kHz vers 22kHz, Cool Edit me dis que mon hardware ne peux plus jouer le sample.
7
Sinon, je crois que je viens de comprendre que le titre de mon sujet n'est pas bon.

D'apres ce que j'ai lu, j'aurai peut etre du utiliser le terme de "pitch bend" plutot que celui de "pitch shift", car pour moi ce n'est pas grave si la duree du sample change.
8
Changer la fréquence d'échantillonage c'est pas la bonne solution, tu vas massacrer les samples !
La variété paye le loyer...
9
Oui mais alors comment faire?
Existe t il d'autres algorithmes?
Du vrai pitch shift (conservation de la durée) prend trop de ressources pour faire le calcul sur plusieurs samples en meme temps.
10
Si il faut changer la vitesse de lecture....

Ca peut causé des problémes si tu lis a une vitesse plus élevé et que ton son de base contient beaucoup de hautes frequences (dans ce cas repliement du spectre, aliasing en anglais)....
Mais bon tu peux mettre un filtre passe bas pour eviter le repliement