Salut.
Je n'ai pas trouvé grand chose sur le web à ce sujet... mais peut-être ai-ja mal cherché...
Connaissez-vous l'algo utilisé pour modifier la durée d'un sample audio mais sans changer la fréquence ?
Merci d'avance.
Salut.
Je n'ai pas trouvé grand chose sur le web à ce sujet... mais peut-être ai-ja mal cherché...
Connaissez-vous l'algo utilisé pour modifier la durée d'un sample audio mais sans changer la fréquence ?
Merci d'avance.
De retour parmis vous après 10 ans!!
Ajouter des notes
"Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".
Consultant indépendant.
Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
C, Fortran, XWindow/Motif, Java
Je ne réponds pas aux MP techniques
Mais c'est pas bête comme réponse... parce qu'il va falloir (enfin je suppose) ajouter des données. Par exemple, pour obtenir 2 secondes avec 1 seconde de son, il suffira de doubler chacune des données du sample en fait, non ? Je vais voir si je peux le programmer en temps réel (j'utilise Delphi). Si vous avez des suggestions, je suis preneur.
De retour parmis vous après 10 ans!!
ben je suppose aussi que tu dois pouvoir insérer des "silences", mais je ne sais pas comment ça passerait à l'écoute... Je suppose que cela dépend de combien tu veux rallonger...
Mais au fait quel est l'intérêt ?
"Un homme sage ne croit que la moitié de ce qu’il lit. Plus sage encore, il sait laquelle".
Consultant indépendant.
Architecture systèmes complexes. Programmation grosses applications critiques. Ergonomie.
C, Fortran, XWindow/Motif, Java
Je ne réponds pas aux MP techniques
Il me semble que c'est plus compliqué que ça.
A mon avis, avec un signal de 1 seconde échantillonné en 16kHz par exemple, si on le transforme en un signal de 2 secondes en dupliquant chaque échantillon, ça reviendrait à faire une mauvaise interpolation, et de fait ça va diviser toutes les fréquences par deux, et rajouter par dessus un signal de fréquence 16kHz et probablement d'autres harmoniques très désagréables.
Si j'ai bien compris ton problème, tu as des samples, et tu voudrais les rallonger, c'est à dire les ralentir, mais sans l'effet "voix d'outre tombe" qui se passe par exemple quand on lit un vinyl à une vitesse trop lente.
A l'intuition, je dirais qu'il faudrait faire un truc du genre :
1) Tu doubles la longueur de ton échantillon (en passant par exemple de 16 à 8kHz d'échantillonnage. Si tu veux rester en 16kHz, il faudra faire de l'interpolation)
2) Tu passes en fréquentiel via une fft
3) Tu réechantillonnes ton domaine fréquentiel pour que l'énergie de chaque fréquence se retrouve associée à une fréquence plus grande.
( G(x) = F(2*x) , avec F(x) la transformée de fourrier initiale, et G(x) la transformée de fourrier du même signal avec une fréquence deux fois plus élevée )
4) Tu repasses en temporel via une fft^-1
Mais bon, je n'ai pas eu le temps de tester...
Sinon, il me semble que le logiciel soundforge fait ça très bien.
Vous aussi, passez pour un dieu du bon français grâce à Firefox et sa correction orthographique
Après une petite recherche, ce que tu veux faire s'appelle le timestretching. Pas mal de lien sur google avec ça.
Si l'anglais ne te fais pas peur : http://sheldon.hygred.com/elec484/project/index.htm
Vous aussi, passez pour un dieu du bon français grâce à Firefox et sa correction orthographique
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager