Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Algoritmi - MP3 e Immagini
Forum - Algoritmi - MP3 e Immagini

Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 1:00
Giovedì, 01/01/1970

Qualcuno sa come leggere un file MP3(ricavare la frequenza per millisecondo)
e un file immagine in formato PNG o JPEG (ricavare i mappa dei pixel)??

PM Quote
Avatar
TheKaneB (Member)
Guru^2


Messaggi: 1792
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 1:37
Martedì, 15/12/2009
Da un file audio, in genere, non puoi ottenere la frequenza al millisecondo, perchè ogni suono reale è composto dalla sovrapposizione di infiniti segnali a frequenze diverse, quindi al massimo puoi ottenere uno spettro di frequenze al millisecondo (analisi spettrale). In genere quello che ricavi è il valore del campione in funzione del tempo, o un array di campioni per "frame" (tipicamente 1 frame consiste di pochi millisecondi). Se parli di file MIDI è diverso perchè è molto più semplice, hai un TOT di strumenti, e ogni strumento può emettere una nota con una certa frequenza, un panning, un volume e pochi altri parametri....

cmq se ti serve decodificare un mp3 puoi usare la libreria open source "lame". Per le immagini puoi usare libpng.

cerca su google lame e libpng per avere tutti i dettagli sul loro uso...

Se invece ti interessano gli algoritmi per implementarli da te, è una cosa molto complessa per l'MP3 (ci sono di mezzo la trasformata di fourier, l'applicazione di un modello psicoacustico sul dominio delle frequenze, un'euristica per l'allocazione dei bit sui vari canali dello stream, l'impacchettamento su un contenitore di tipo Mpeg o Wav, varie...)

Discorso analogo per le jpeg, dove ti ritrovi con una trasformazione tra lo spazio dei colori RGB allo spazio YCbCr, tassellazione in caselle 8x8, trasformata di fourier, quantizzazione dei coefficienti tramite matrice a zigzag, impacchettamento in formato jfif, jpeg, jmpeg, o altri...
Un po' più semplice per PNG, che in fondo è una bitmap a 4 canali compressa con zlib.

Ultima modifica effettuata da TheKaneB il 15/12/2009 alle 1:41
PM Quote
Avatar
()
Newbie


Messaggi:
Iscritto:

Segnala al moderatore
Postato alle 15:23
Martedì, 15/12/2009

Grazie Mille.

Comunque non conosco molto bene il C, mi aspettavo una risposta in altro linguaggio e per questo ho chiesto l'algoritmo.
Dicevi che il PNG è solamente compresso con zlib.
Forse ti chiedo troppo ma potresti spiegarmi come funziona

PM Quote
Avatar
TheKaneB (Member)
Guru^2


Messaggi: 1792
Iscritto: 26/06/2009

Segnala al moderatore
Postato alle 15:32
Martedì, 15/12/2009
mi spiace ma non lo conosco a memoria, però puoi trovare tutto quello che ti serve qui http://www.libpng.org/pub/png/png-sitemap.html#info

Ciao ;)

PM Quote