Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755

    JMF problema nel riprodurre file (mp3) con ID3

    In un mio programma in java riproduco i file mp3 tramite la JMF,così facendo (in linea di massima):

    codice:
    Player p=Manager.createRealizedPlayer(new File(pathDelFile).toURI().toURL());
    p.start();
    ma ho notato che non riesco a riprodurre file mp3 con ID3 (spiegazione di cosa sono gli ID3 QUI ,devo postarlo in inglese causa "legge bavaglio" )

    ad esempio provate ad eseguire questo codice:

    codice:
    import javax.media.*;
    import java.net.URL;
    
    class Prova{
    	public static void main(String [] args) throws Exception{		
    		Player p = Manager.createRealizedPlayer(new URL("http://zipangulu.altervista.org/17_-_Airplanes_Part_2__Feat._B.o.B___Hayley_Williams_.mp3"));
    		p.start();
    	}
    }
    non lancia eccezzioni,ma la riproduzione non parte

    devo postare il codice del file online e non allego direttamente il file perchè esso potrebbe essere protetto quindi potrei andare contro il regolamento del forum

    Comunque tornando a noi,come potrei risolvere tale problema,quindi riuscire a riprodurre questo e tutti gli altri file mp3 con ID3???

    Ps. per avviare il codice sopra si devono avere i jar: jmf.jar e il plug-in mp3 , entrambi scaricabili QUI

  2. #2
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    Ho parzialmente risolto il problema:ho notato che il problema sorge nel riprodurre file che presentano gli id3v1 e allora ho così fatto per effettuare la loro riproduzione:

    Innanzitutto mi sono servito della libreria JID3,il cui jar (jid3lib-0.5.4.jar) è scaricabile QUI e ho poi così fatto:

    codice:
                        MP3File mf=new MP3File(pathFile);
                        if(mf.hasID3v1Tag()){
                            //QUESTO ERA IL CASO PROBLEMATICO
                            FileInputStream fis=new FileInputStream (pathFile);
                            FileOutputStream fos=new FileOutputStream ("fileTemporaneo.mp3");
                            byte[] byteNonModificati = new byte[fis.available()];
                            int ritardo=(int)mf.getMp3StartByte();
                            byte [] byteModificati=new byte [byteNonModificati.length-ritardo];
                            fis.read( byteNonModificati );
                            for(int i=0;i<byteModificati.length;i++){
                                byteModificati [i] = byteNonModificati [i+ritardo];
                            }
                            fos.write(byteModificati);
                            fos.flush();
                            fos.close();
                            p = Manager.createRealizedPlayer(new File("fileTemporaneo.mp3").toURI().toURL());
                        } else{
                            p = Manager.createRealizedPlayer(mf.getMp3file().toURI().toURL());
                        }
    Ora riesco a riprodurre i file che prima risultavano problematici...l'unico problema restano i file a 320 kbps (che presentano ID3v1 e non)che anche con questa procedura non riesco a riprodurre?perchè?C'è una soluzione?La JMF ha una limitazione di bitrate per file MP3?a riguardo non ho trovato nulla svolgendo svariate ricerche...

    Spero possiate aiutarmi e un po' che ci sbatto la testa!

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    hai letto i formati supportati da JMF ?
    RTFM Read That F*** Manual!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Nov 2009
    Messaggi
    755
    Si li ho letti ma lì sono riportati i formati supportati di default,tramite il plugin mp3 (anch'esso scaricabile dal sito ufficiale della oracle ) si possono riprodurre anche gli mp3...e da quello che ho potuto vedere non mi sembra ci siano limitazioni riguardo bitrate massimo o altro (io però ho problemi con mp3 con 320 kbps di bitrate, e non so spiegarmelo nè risolvere il probelma)...correggetemi se sbaglio.

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    non so in dettaglio, ho usato poco quella libreria, ma so che nel 90% de casi non si leggono le info sui formati supportati.
    Ti consiglio di cercare in qualche forum in inglese (pazienza per la lingua)
    RTFM Read That F*** Manual!!!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.