Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1364 connectés 

  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  DLL pour analyser les basses dans un mp3

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

DLL pour analyser les basses dans un mp3

n°2116031
cafeninten​do
Posté le 11-12-2011 à 19:49:04  profilanswer
 

Hello,  
 
je connais pleins d'API pour gérer la lecture de fichiers MP3
 
mais dans aucune (je connais peut être pas le terme exact qui m'indiquerai quel propriété, ou fonction utilisé) je ne trouve
le moyen de capter l'intensité des basses par exemple
 
j'aimerai pouvoir faire en sorte que si l'intensité dépasse une valeur, un truc scintille a l'image
 
J'ai reussi avec une librairie a obtenir une valeur sur la lecture de mon MP3 mais je sais pas trop à quoi ca correspond :o et mes flash sont un peu réalisé au pif et pas du tout calé sur le son des basses :o
 
 
C#  
 

mood
Publicité
Posté le 11-12-2011 à 19:49:04  profilanswer
 

n°2117747
ixemul
Nan mais sans blague ! ⚡
Posté le 21-12-2011 à 16:44:55  profilanswer
 

C'est de la détection de BPM que tu veux faire ?

n°2117819
cafeninten​do
Posté le 21-12-2011 à 23:47:15  profilanswer
 

BPM c'est beat per minute c'est une valeur fixe non?
 
Je me demande comment ils font les "animation" dans le lecteur windows media player par exemple. Ca vibre parfois au son des graves ou des aigus.
 

n°2117829
Terminapor
I'll see you rise.
Posté le 22-12-2011 à 01:43:16  profilanswer
 

J'me rappelle avoir fait un tuto sur After Effect pour faire un truc du style du lecteur Windows, et si j'me plante pas tu fais ça avec un filtre en analysant les fréquences (essaie de retrouver le tuto si tu peux, ça peut être une bonne source).
Pour ce qui du nom d'une lib, je connais absolument pas les libs dispo en C#, si t'as openAL ça devrait être faisable :D

 

edit : c'est ce tuto http://fr.tuto.com/after-effects/a [...] ab_extrait il me semble, ça te donne une base déjà :jap:

Message cité 1 fois
Message édité par Terminapor le 22-12-2011 à 01:44:58

---------------
Perhaps you don't deserve to breathe
n°2117830
theshockwa​ve
I work at a firm named Koslow
Posté le 22-12-2011 à 02:50:03  profilanswer
 

FFT : Fast Fourier Transform.
 
C'est ce que tu dois chercher pour faire de l'analyse fréquentielle sur ton signal. Ce que tu appelles "basses", c'est sous entendu "basses fréquences". Si tu ne t'y connais pas en analyse fréquentielle, un monde entier s'ouvre à toi.


---------------
last.fm
n°2117855
ixemul
Nan mais sans blague ! ⚡
Posté le 22-12-2011 à 09:57:28  profilanswer
 

Oui, c'est du traitement de signal que tu désire faire, l'analyse de fréquence se fait par FFT. Il y a plein de lib ou d'algo pour extraire la FFT d'un signal audio.
 
La facile : Bass.NET ( http://www.un4seen.com/ )
La full managed : Naudio de mon pote mark + WPF sound visualization Library ( http://Naudio.codeplex.com & http://wpfsvl.codeplex.com/ )
La mienne bugguée [:petrus75] : utilisé dans SharpMod ( http://sharpmod.codeplex.com )

Message cité 1 fois
Message édité par ixemul le 22-12-2011 à 09:57:59
n°2117889
cafeninten​do
Posté le 22-12-2011 à 13:40:45  profilanswer
 

Terminapor a écrit :

J'me rappelle avoir fait un tuto sur After Effect pour faire un truc du style du lecteur Windows, et si j'me plante pas tu fais ça avec un filtre en analysant les fréquences (essaie de retrouver le tuto si tu peux, ça peut être une bonne source).  
Pour ce qui du nom d'une lib, je connais absolument pas les libs dispo en C#, si t'as openAL ça devrait être faisable :D
 
edit : c'est ce tuto http://fr.tuto.com/after-effects/a [...] ab_extrait il me semble, ça te donne une base déjà :jap:


 
Merci pour le coup de pouce je vais voir si j'arrive a m'en sortir  :jap:

n°2117890
cafeninten​do
Posté le 22-12-2011 à 13:42:07  profilanswer
 

ixemul a écrit :

Oui, c'est du traitement de signal que tu désire faire, l'analyse de fréquence se fait par FFT. Il y a plein de lib ou d'algo pour extraire la FFT d'un signal audio.
 
La facile : Bass.NET ( http://www.un4seen.com/ )
La full managed : Naudio de mon pote mark + WPF sound visualization Library ( http://Naudio.codeplex.com & http://wpfsvl.codeplex.com/ )
La mienne bugguée [:petrus75] : utilisé dans SharpMod ( http://sharpmod.codeplex.com )


 
Merci, j'utilise bass.net pour lire mes fichiers audio, j'ai essayé avec sharpmod au début mais peu documenté j'ai pas réussi (mais je suis pas doué)
 
merci pour les infos, je vais essayer de m'en sortir :)

Message cité 1 fois
Message édité par cafenintendo le 22-12-2011 à 13:44:11
n°2117891
cafeninten​do
Posté le 22-12-2011 à 13:47:42  profilanswer
 

Derniere question, au cas ou, j'utilise des fichiers audio .mod .it .xm uniquement, mais ce genre de fichier contient les mêmes infos (des fréquences) analysable ? ou bien c'est complètement différent?

n°2117894
ixemul
Nan mais sans blague ! ⚡
Posté le 22-12-2011 à 13:52:49  profilanswer
 

cafenintendo a écrit :


 
Merci, j'utilise bass.net pour lire mes fichiers audio, j'ai essayé avec sharpmod au début mais peu documenté j'ai pas réussi (mais je suis pas doué)
 
merci pour les infos, je vais essayer de m'en sortir :)


 
Comment ça SharpMod est mal documenté ! [:ofou]
 
Je prévois une nouvelle release bientôt (intégration de NAudio 1.5 et full release XNA), mais pour l'instant je passe les fêtes de fin d'année.
 

cafenintendo a écrit :

Derniere question, au cas ou, j'utilise des fichiers audio .mod .it .xm uniquement, mais ce genre de fichier contient les mêmes infos (des fréquences) analysable ? ou bien c'est complètement différent?


 
Avec Bass.Net, oui, les filtres se font de toute manière sur le stream de sortie.
 
Avec SharpMod, non, je fais ma FFT en sortie du multiplexage des voies, en parallèle avec l'envoie du stream à Naudio. Mais je vais refaire la FFT car elle est instable par moment (en même temps, c'est fait à l'arrache pour le programme de démo, ça ne fait pas partie du projet)
 

mood
Publicité
Posté le 22-12-2011 à 13:52:49  profilanswer
 

n°2117900
cafeninten​do
Posté le 22-12-2011 à 14:10:37  profilanswer
 

ixemul a écrit :


 
Comment ça SharpMod est mal documenté ! [:ofou]
 
Je prévois une nouvelle release bientôt (intégration de NAudio 1.5 et full release XNA), mais pour l'instant je passe les fêtes de fin d'année.
 


 

ixemul a écrit :


 
Avec Bass.Net, oui, les filtres se font de toute manière sur le stream de sortie.
 
Avec SharpMod, non, je fais ma FFT en sortie du multiplexage des voies, en parallèle avec l'envoie du stream à Naudio. Mais je vais refaire la FFT car elle est instable par moment (en même temps, c'est fait à l'arrache pour le programme de démo, ça ne fait pas partie du projet)
 


 
C'est moi qui chie pour sharpmod :) j'ai toutes les sources mais je suis pas doué ;) les gars comme moi on a besoins de tuto pas à pas quasiment :o  
 
Je me permettrai pas de critiquer ton boulot, c'etait mal exprimé de ma part le "mal documenté"

Message cité 1 fois
Message édité par cafenintendo le 22-12-2011 à 14:10:52
n°2117902
cafeninten​do
Posté le 22-12-2011 à 14:14:31  profilanswer
 

Je vais me donner une journée pour réussir un truc avec bass.NET
 
et si jamais je suis complètement paumé je reviendrai pour avoir de l'aide en étant peut être un peu plus précis dans mes demandes d'aide :o

n°2117905
ixemul
Nan mais sans blague ! ⚡
Posté le 22-12-2011 à 14:17:56  profilanswer
 

cafenintendo a écrit :


 
C'est moi qui chie pour sharpmod :) j'ai toutes les sources mais je suis pas doué ;) les gars comme moi on a besoins de tuto pas à pas quasiment :o  
 
Je me permettrai pas de critiquer ton boulot, c'etait mal exprimé de ma part le "mal documenté"


 
Non, mais je blague hein ;). Je sais qu'il n'y a pas de doc, en même temps, mes principaux utilisateurs n'en ont pas besoin et j'ai déja expliqué 2~3 trucs sur divers forum concernant son utilisation dans certain cas un peu touchy.
 

n°2117910
cafeninten​do
Posté le 22-12-2011 à 14:28:52  profilanswer
 

Ok vous m'avez orienté vers cette fonction si je comprends bien
 
Bass.BASS_ChannelGetData Method (Int32, Single[], Int32)
 

Citation :

Retrieves the immediate sample data (or an FFT representation of it) of a stream or MOD music channel. Can also be used with a recording channel. This overload uses a managed float[] to reference the buffer data as 32-bit! SHOULD ONLY BE USED, if the stream was created with BASS_SAMPLE_FLOAT!


 
(source: http://www.bass.radio42.com/help/h [...] 1bd463.htm )


Message édité par cafenintendo le 22-12-2011 à 14:29:24
n°2117921
ixemul
Nan mais sans blague ! ⚡
Posté le 22-12-2011 à 14:41:54  profilanswer
 

tootafé !
 
un petit exemple dans la langue de Goethe ici :
http://www.bauer-martin.com/csharp [...] s-201.html
 
Et comme je suis un mec vraiment sympa, ce sont les premières valeurs du tableau retourné par la méthode qui vont t’intéresser (les basses fréquence au début et les plus élevées à la fin)
 
Si tu utilise la FFT avec en entrée un tableau de 128 valeurs (utilisation avec BASS_DATA_FFT256... envoie un MP à nyquist pourquoi 256 retourne 128 valeurs), tu prends grosso modo à la louche les 30 premières valeurs du tableau, tu fait une moyenne et tu compare à un seuil que tu va déclarer de manière arbitraire (selon la sensibilité que tu désire sur le boom boom :D)  

n°2117927
cafeninten​do
Posté le 22-12-2011 à 14:47:07  profilanswer
 

ixemul a écrit :

tootafé !
 
un petit exemple dans la langue de Goethe ici :
http://www.bauer-martin.com/csharp [...] s-201.html
 
Et comme je suis un mec vraiment sympa, ce sont les premières valeurs du tableau retourné par la méthode qui vont t’intéresser (les basses fréquence au début et les plus élevées à la fin)
 
Si tu utilise la FFT avec en entrée un tableau de 128 valeurs (utilisation avec BASS_DATA_FFT256... envoie un MP à nyquist pourquoi 256 retourne 128 valeurs), tu prends grosso modo à la louche les 30 premières valeurs du tableau, tu fait une moyenne et tu compare à un seuil que tu va déclarer de manière arbitraire (selon la sensibilité que tu désire sur le boom boom :D)  


 
[:roi]
 
Je vous tiens au courant si j'ai réussi, au risque de me payer la honte si je n'y arrive pas. Mais bon, personne pourra le vérifier si je reviens en disant que j'ai réussi [:braysse]

n°2117961
cafeninten​do
Posté le 22-12-2011 à 15:51:09  profilanswer
 

j'ai réussi a intégrer le truc a peu près dans mon programme [:cupra]  reste a nettoyer ce bordel de code et trouver un bon moyen de chopper une bonne valeur LIMITE pour mes basses detectés
 
Merci pour les soluces


Message édité par cafenintendo le 22-12-2011 à 15:52:16

Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C#/.NET managed

  DLL pour analyser les basses dans un mp3

 

Sujets relatifs
DLL et C++Maintenir un MP3 lancé pendant une session utilisateur
integrer une DLL ada dans un projet VisualC++ 2005Jouer MP3 en DirectSound
flash as2 potard volume + liste track mp3DLL et tableau de record
mettre un lecteur mp3 sur blogspot[Résolu] Problème syntaxe IE sur lien vers une page avec lecteur mp3
[batch]récupérer son IP (OK) et l'analyser (pas ok)Impossible de telecharger MP3 d'un site Web!!
Plus de sujets relatifs à : DLL pour analyser les basses dans un mp3


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR