Posez votre question Signaler

Codage de huffman

jean - Dernière réponse le 29 nov. 2007 à 09:35
salut je fais des recherche sur la compression mp3,le principe de la compression audio,et la je suis en train d'etudier le code de huffman,je sais le principe du codage mais je voudrais savoir comment on va mettre en place ce codage en ce qui concerne le mp3 c'est e dire quel sera la demarche a suivre pour coder un fichier audio en code de huffman? ( comment va t'on faire pour reconnaitre les frequence identique,leur appartion etc.) si quelqu'un peut m'aider,merci beaucoup!
Lire la suite 

Codage de huffman »

15 réponses
Réponse
+1
moins plus
Hello.

Le codage huffman intervient après l'analyse et la quantization des fréquences.

Dans l'encodage MP3, les étapes sont:

- découpage de la musique en entrée en petit morceaux (chunks)
- analyse de chaque chunk: transformée de fourrier pour en extraire les fréquences, puis:
- comparaison au modèle psyco-acoustique pour éliminer les fréquences inutiles
- enfin, encodage en huffman de ces données.
jean - 27 mai 2005 à 10:46
effectivement c'est ce que j'avais compris lors de mes recherche mais je veux savoir un peu plus sur le codage de huffman,pour ce qui est du filtrage j'ai pu trouver plus de précision en ce qui concerne les sous bande le modele psychoaccoustique,mais la ce que je veux savoir c'est la suite,quand on a filtrer comment on code avec huffman,pour etre plus precis quel sont les etapes pour coder en mp3 autrement dit,si je veux programmer le code de huffman sur matlab par exemple,quel sont les etape du codage pour faire la programmation du mp3?
Ajouter un commentaire
Réponse
+0
moins plus
Le mieux, c'est encore de prendre le source d'un encodeur MP3.
Par exemple LAME qui est opensource (les sources sont donc disponibles).

Pour huffman, j'ai mis une petite explication là:
http://sebsauvage.net/comprendre/compactage
jean - 30 mai 2005 à 13:29
J'ai lis un sujet sur la MDCT et le code de huffman en ce qui concerne le mp3 et je voudrais avoir une confirmation ou me dire si ce n'est pas ça:

moi ce qui j'ai compris c'est que d'abord pour compresser un fichier audio wave,tout d'abord on filtre le fichier c'est a dire on le decoupe en 32 bande,on applique une fft et on le compare avec le modele psychoaccoustique,donc on aura un signal filtré dont on a enlever les frequence inutile,mais apres c 'est la que j'ai du mal a comprendre,ce que j'ai pu comprendre apres,c'est qu'on applique la MDCT sur le signal filtré pour exprimé ce signal en somme de cosinus et ainsi avoir toutes les frequence des cosinus sommé et apres on fais un codage de huffman avec ces frequence en analysant les frequence egales et leur nombre d'apparition.

Est ce que c'est ca ou pas? je n'ai pas l'impression que ce soit ca mais c'est ce que j'ai compris, donc si c'est pas ca je voudrais savoir apres avoir filtrer,qu'est ce qu'on fait? comment va t'on arriver au code de huffman?
Ajouter un commentaire
Réponse
+0
moins plus
En fait, une fois que tu as tout passé au filtre passe-bande+FFT+modèle psycoacoustique, tu as "terminé ta compression.

Tu obtiens en sortie une suite de bits.
Ce sont des bits que tu compresse ensuite en huffman.

En fait, on pourrait très bien se passer de huffman, ou même prendre un autre algo (LZW).
L'encodage Huffman est la toute dernière étape de la compression.
jean - 30 mai 2005 à 14:48
donc si je comprend bien la FFT et la MDCT c'est la meme chose? Mais pourquoi dans schema du principe de compression mp3 il y a deux bloques différents : un pour la FFT et l'autre pour la MDCT?
Ajouter un commentaire
Réponse
+0
moins plus
D'après ce que j'en comprend, FFT est surtout utilisé pour piloter le système psycho-acoustique (principalement pour détecter les fréquences qui peuvent être éliminées sans gêne).

Mais il est trop grossier et trop consommateur en temps de calcul pour être directement utilisé pour la compression elle-même.

Le MDCT est - lui - chargé de découper le signal à compresser:
- en bandes (sachant que la largeur et l'emplacement de ces bandes peut varier pour s'adapter au signal à compresser.).
- en frames (morceaux), en effectuant un recouvrement des frames pour éviter des 'sauts' dans le signal à la jonction de deux frames.
sebsauvage - 31 mai 2005 à 11:06
c'est bien ca?

Je crois que c'est ça.
Mais je n'ai jamais étudié les sources des encodeurs MP3 :-)


le codage de huffman il va se baser sur quoi pour faire son codage?

Il intervient en bout de chaîne, quand tous les autres encodeurs ont déjà terminé leur boulot.
Huffman se moque de savoir si c'est des coefficients, du texte, des images ou quoi que ce soit d'autre.

Huffman ne voit qu'une suite de données numériques à compresser.

Le principe de huffman est de faire une analyse statistique sur les données sorties afin de construire une table des symboles les plus fréquents.

D'ailleurs je ne comprend pas que ce soit huffman qui ait été choisi.
Huffman n'est pas du tout adapté aux flux (streaming).
La famille des LZ aurait sûrement été bien plus adaptée, non ?
Enfin bref, peut-être que la nature des données ne s'y prête pas...
jean - 31 mai 2005 à 15:37
Tu connais pas un site (en francais ) ou on explique mathematiquement ce qu'est la MDCT, car j'ai un rapport à rendre bientot et je n'ai aucun support pour pouvoir rédiger cette partie, car meme si j'ai compris certaine chose,y'en a d'autre qui sont un peut flou,je suis en train de faire un rapport sur la compression mp3 et la seule chose qui me manque c'est la MDCT, la séparation en sous bande, le modele psychoacoustique et le code de huffman j'ai pigé, mais la MDCT c'est tres compliqué à comprendre je trouve.
sebsauvage - 31 mai 2005 à 15:53
Désolé, je n'ai rien de particulier.
Essai Google et wikipedia.
Ajouter un commentaire
Réponse
+0
moins plus
Salut
moi aussi j ai besoin de bien comprendre la compression MP3
Mr Jean pouvez vous m'envoyez votre rapport.
Merci d'avance.
Ajouter un commentaire
Réponse
+0
moins plus
Ca remonte a loin ce temps la. Le rapport que j'ai fait est encore la sur mon pc. Si tu veux le lire, contacte moi par mail.
djiefte@yahoo.fr

Et j'ai oublié de remercier sebsauvage qui m'a aidé, j'etais trop concentrer sur l'affaire que j'ai oublié.
J'ai eu un 15 pour le rapport (ecrit+oral).
sebsauvage - 29 nov. 2007 à 09:35
Content d'avoir pu t'aider :-)
Ajouter un commentaire
Ce document intitulé « codage de huffman » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook