Travail du signal en C++
- 10 réponses
- 4 participants
- 967 vues
- 4 followers
DjPoke
62
Posteur·euse AFfranchi·e
Membre depuis 20 ans
Sujet de la discussion Posté le 01/09/2005 à 16:18:50Travail du signal en C++
Salut !
Je bosse actuellement sur un algo de pitch shift et je suis à deux doigts de réussir. Mon problème est le suivant :
Toutes les 100ms, j'ai une période qui change de taille. (cf schémas)
Je connais son point de départ, et d'arrivée.
Dois je obligatoirement appliquer une transformée de fourier et rétablir la taille de la période pour que celle-ci ne provoque pas des "tics" dans mon signal ?
Ou existe t'il une solution plus simple ?
Au cas où, ou puis je trouver une fourier discrète en bibliothèque déjà faite et simple à utiliser ?
Merci
Je bosse actuellement sur un algo de pitch shift et je suis à deux doigts de réussir. Mon problème est le suivant :
Toutes les 100ms, j'ai une période qui change de taille. (cf schémas)
Je connais son point de départ, et d'arrivée.
Dois je obligatoirement appliquer une transformée de fourier et rétablir la taille de la période pour que celle-ci ne provoque pas des "tics" dans mon signal ?
Ou existe t'il une solution plus simple ?
Au cas où, ou puis je trouver une fourier discrète en bibliothèque déjà faite et simple à utiliser ?
Merci
La sagesse, c'est la connaissance du vide.
- 1
- 2
DjPoke
62
Posteur·euse AFfranchi·e
Membre depuis 20 ans
2 Posté le 02/09/2005 à 06:30:26
En fait, j'ai trouvé la transformée de fourier discrete sur un bouquin mais je n'obtiens que des nombres complexes correspondant à des frequences.
Quelqu'un saurai t'il ce que je dois appliquer comme fonction à la partie réelle et imaginaire pour transposer le son ?
Quelqu'un saurai t'il ce que je dois appliquer comme fonction à la partie réelle et imaginaire pour transposer le son ?
La sagesse, c'est la connaissance du vide.
numa
324
Posteur·euse AFfamé·e
Membre depuis 21 ans
3 Posté le 02/09/2005 à 18:56:29
Un coup de google avec "dsp pitch shift algorithm c++" te donnera quelques idées ... (en anglais, quasi nécessaire pour programmer en dsp) ...
Bon courage
Bon courage
_eriser_
27
Nouvel·le AFfilié·e
Membre depuis 22 ans
4 Posté le 02/09/2005 à 20:04:17
Salut tu peu utiliser la lib de Laurent de Soras voir FFTReal
http://ldesoras.free.fr/prod.html
http://ldesoras.free.fr/prod.html
_eriser_
27
Nouvel·le AFfilié·e
Membre depuis 22 ans
5 Posté le 02/09/2005 à 20:06:25
A j'oublier un tuto vraiment térible par un autre guru en la matiere
http://www.dspdimension.com/data/index.html
http://www.dspdimension.com/data/index.html
DjPoke
62
Posteur·euse AFfranchi·e
Membre depuis 20 ans
6 Posté le 02/09/2005 à 20:11:36
Merci beaucoup, j'ai du pain sur la planche, héhé !
La sagesse, c'est la connaissance du vide.
DjPoke
62
Posteur·euse AFfranchi·e
Membre depuis 20 ans
7 Posté le 13/09/2005 à 16:49:08
Bon, je suis repartis de zero, j'ai acheté la librairie "numerical recipes" (presente sur le deuxieme lien) et j'ai commencé par appliqué une FFT et une FFTI à un sample de base (sans vouloir le modifier donc). J'ai trouvé de quoi calculer des coefficients pour un fenetrage mais je ne sais pas comment m'en servir. Tout ce que je sais c'est que je dois passer par un Filtre à reponse impulsionnelle FIR. J'en ai trouvé un sur google mais je ne comprends pas comment l'utiliser. En fait, je dispose donc à chaque fois d'un bout de sample mono de 512 octets, et de 24 coefficients calculés par rapport à lui.
Si quelqu'un a une solution a mon probleme, j'en serais heureux !
Le FIR que j'ai trouvé:
http://www-ccrma.stanford.edu/~jos/filters/FIR_Filter_Implementation_C.html
Si quelqu'un a une solution a mon probleme, j'en serais heureux !
Le FIR que j'ai trouvé:
http://www-ccrma.stanford.edu/~jos/filters/FIR_Filter_Implementation_C.html
La sagesse, c'est la connaissance du vide.
Dj kerry h
20
Nouvel·le AFfilié·e
Membre depuis 20 ans
8 Posté le 25/09/2005 à 22:58:42
Si tu codes un algo de pitch shift pr le challenge j'ai pas la solution mais si t'as besoin d'une librairie qui le fait y'a soundtouch qui existe, y'a des optimisations MMX/SSE/3DNOW! en asm a l'interieur, j'pense que c'est la plus performante actuellement http://sky.prohosting.com/oparviai/soundtouch
DjPoke
62
Posteur·euse AFfranchi·e
Membre depuis 20 ans
9 Posté le 25/09/2005 à 23:03:39
Ok merci je vais jetter un oeil !
En fait ce qui m'interesse c'est de faire une dll de traitement du signal pour dark basic pro. Donc le tout est que je ne soit pas embêté par un copyright si j'utilise la bibliotheque de quelqu'un d'autre.
En fait ce qui m'interesse c'est de faire une dll de traitement du signal pour dark basic pro. Donc le tout est que je ne soit pas embêté par un copyright si j'utilise la bibliotheque de quelqu'un d'autre.
La sagesse, c'est la connaissance du vide.
Dj kerry h
20
Nouvel·le AFfilié·e
Membre depuis 20 ans
10 Posté le 26/09/2005 à 09:41:58
Niveau copyright, soundtouch est sous LGPL ce qui signifie qu'elle est gratuite pour les applications gratuites et commerciales, tant qu'elle est integrée à un dll exterieur accessible par les headers de base (pas de modif de leurs noms de fonctions donc) et tant que tu fous quelque part leur paragraphe disant que les routines pitch shift etc... sont realisées par soundtouch.
C'est pas tres contraignant au regard des avantages que ca apporte
C'est pas tres contraignant au regard des avantages que ca apporte
- < Liste des sujets
- Charte
- 1
- 2