Newsgroup: it.comp.java
Titolo: errore con mp3 rinominato

ciao,
vi propongo una cosa stupida ma alla quale io non sono riuscito a
trovare la soluzione:
ho un file mp3 es: 1.mp3
lo rinomino in 1.jbx
e adesso scrivo:
MediaLocator mediaLocator = new MediaLocator("file:c:" + File.separator
+"juke-box"+ File.separator +"1.jbx");
Player player =  Manager.createPlayer(locator);
player.addControllerListener(this);
player.realize();
ma ho un errore:
the player launch one exception: javax.media.NoPlayerException: Cannot
find a Player for :file:c:\juke-box\1.jbx
mi e' stato detto che MediaLocator riconosce il tipo di file
dall'estensione. Se e' cosi' come devo fare per far suonare un .jbx (che
e' solo un mp3 rinominato) con un player??
grazie e ciao
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 e' solo un mp3 rinominato) con un player??
Mai sentita una sciocchezza simile.
Non conosco il MediaLocator, ma trovo assurdo che qualcuno pensi che un file
in genere con delle caratteristiche possa essere letto solo perché ha una
determinata estensione.
Posso capire una lista di file che fa vedere solo quelli che hanno una
determinata estensione senza andare a testare se poi è valida, ma leggerli
proprio no.
Rinominare un mp3 in un altro formato non ti servirà a nulla.
Alcuni lettori lo leggeranno ugualmente, perché sanno come leggere un mp3 e
pure solo rinomini in .class, loro aprendolo capiranno che è un mp3 e lo
leggeranno in quel modo.
Tutto questo per magia?????
Assolutamente no, grazie ad una cosa che chiunque ha affrontato la vecchia,
sana, informatica conosce.
Si chiama header del file, cioè quella serie di informazioni che descrivono,
il tipo, la grandezza, le caratteristiche e le info necessarie per leggerle.
Ogni file che deve essere interpretato (praticamente il 99% dei formati
esistenti) ha un suo header che ne determina il tipo.
Rinominare un file sperando di cambiargli tipo è come scrivere su una 500:
Alitalia e poi imboccare l'autostrada sperando che decolli.

 Alitalia e poi imboccare l'autostrada sperando che decolli.
Ciao TelespallaBob
prima di tutto ti rigrazio perche' hai sempre risposto ai miei post...
secondo io non volevo fare una pazzia del genere, magari mi sono
spiegato male.
io ho un file .mp3 lo voglio rinominare in .jbx (una estensione a caso)
questo lo faccio solo per una questione estetica.
Se faccio il mediaLocator della URL del file e creo un player ho
l'errore che ho descritto.
Anche io mi sono meravigliato di mandare in til il JMF solo per aver
rinominato il file,
cmq questo e' quello che accade sul mio pc, perche'?
adesso, posso creare un player settato per mp3 e poi caricare il source
del file?


 del file?
Puoi spiegarti meglio????
Se vuoi leggere un Mp3 senza che questo abbia tale estensione, porse
dovresti scaricare il file su locale e poi rinominarlo. Ora io non ho mai
lavorato con MediaLocator quindi non so dirti di piů, ma sicuramente una
scappatoia c'č.
Ciao

 Ciao
il fatto di roniminare l' mp3 e' piu' che altro un fatto estetico e di
continuita' con un programma che esiste gia'.
non e' ne' indispensabile ne' utile.... ma oramai mi sono intestardito!!
questo e' il codice:
try{
	MediaLocator locatorA = new MediaLocator("file:c:" + File.separator
+"juke-box"+ File.separator +"1.mp3");
	MediaLocator locatorB = new MediaLocator("file:c:" + File.separator
+"juke-box"+ File.separator +"1.jbx");
	Player player =  Manager.createPlayer(locatorA);
//	Player player =  Manager.createPlayer(locatorB);
	player.addControllerListener(this);
	player.realize();
}
catch (Exception ex){
	System.err.println(ex.toString());
}
ho due file c:\juke-box\1.mp3 e c:\juke-box\1.jbx
se uso locatorA tutto bene, se uso locatorB:
	javax.media.NoPlayerException: Cannot find a Player for
:file:c:\juke-box\1.jbx
boooo????
ciao e grazie Telespalla (salutami Bart ;-) )


L'eccezione che ti viene sollevata č molto chiara :
NoPlayerException...........
Eccezione nessun lettore per quel tipo di file.
Lui cerca di riconoscer i file, prima dall'estensione e poi li decodifica.
Non ho la documentazione del MediaLocator e di Player, mandami via E-mail la
documentazione che hai su queste due classi, cosě vediamo insieme se c'č una
scappatoia.
Ciao

 wrote in message
news:1b7e09b2ec5cf2b63a4...@mygate.mailgate.org...

Lo so che č sporca, ma potresti rinominare tu internamente al programma il
nome del file nel caso l'estensione sia .jbx
if(stringa.endsEith".jbx")
    stringa = stringa.substring(0,stringa.length()-".jbx".length())+".mp3";

 wrote in message
news:a4dhqr$6j80$1...@stargate1.inet.it...

Avevi ragione, c'e' una scappatoia. Con un po' di cu*o l'ho trovata ed
e'
veramente una cavolata. La pubblico cosi' chi ha il mio stesso problema
puo'
dargli un'occiata. Basta semplicemente:
//************
import com.sun.media.*;
MimeManager.addMimeType( ".jbx", "audio/mpeg");
//************
adesso tutti i file .jbx verranno trattati come mpeg.
TelespallaBob, ti ringrazio molto, se non altro per la disponibilita'
che mi hai dato.
E' sempre confortante trovare qualcuno a cui rompere le statole quando
si e'
in difficolta'.
ciao e grazie ancora.
