Como muchos me pidieron un reproductor de mp3 con un playlist, ahora dejo a consideracion de los programadores el codigo fuente completo hecho con netbeans 6.0 y la api de Java Media.
Hasta la fecha ya deje muchos tutoriales sobre como utilizar esa API, asi que no veo la razon de redundar sobre lo mismo, por ese motivo en esta ocasion solamente dejare el codigo fuente para que sea examinado por ustedes, claro esta el codigo esta extra comentado y lo mas simple posible, y si siguen los tutos que hice creo que no habra donde perderse, ademas de que examinar el codigo fuente y ver como funciona es una buena practica de INGENIERIA INVERSA que todo programador debe conocer.
Este reproductor tiene la capacidad de abrir archivos mp3 y cargarlos en un
playlist para poder reproducirlos uno por uno, ademas tiene implementados los controles
Preview y
Next para poder pasar de una cancion a otra con un simple clic, las canciones pueden ser reproducidas desde el boton PLAY o haciendo doble clic en el archivo seleccionado en el playlist.
Dicho esto no queda mas que dejar un video de como quedo el reproductor
La interfaz que se ve es gracias al skin de Substance, esta libreria junto a las demas librerias de JMF estan en el RAR, asi que no queda mas que decir sino que a bajarselo y estudiarlo.
Enlaces vivitos y coleando ;)
23 comentarios:
Gracias por el aporte, te quedo muy bien el reproductor.
Comentas que has hecho tutoriales sobre la API Media de Java, ¿tienes un sitio web donde pueda encontrarlos o alguna dirección?
Gracias!
waw..good the article...
mmm..can i get the project???please..for my references..
please send to my email..
'jews13th@gmail.com'
...thanks be4..^_^..
Ola tengo un proyecto que hacer y es algo parecido a esto pero la cancion tengo qeu realizar la busqueda y ya que la encuentre la reproducira...
Pero como la jalo desde alguna carpeta predefinida???
Ayuda xrfas!!!
Disculpa no se como has compilado tu aplicacion pero no funka nota no tengo instalado el jmf y como es una aplicacion java-multiplataforma no deberia haber problemas, te sugiero corregirla.
Te paso un link de un verdadero reproductor de sonido y funka de manera multiplataforma.
http://jonathan-palomino.blogspot.com/2010/10/reproductor-de-sonido-java.html
Ivanhoe todo los tutos y codigo estan en esta pagina, solo buscalos
Angelica Yureni eso no tiene que ver nada con JMF, es puro codigo java, te recomendaria cargar los mp3 en un array,vector o map y despues realizar la busqueda en ellos
Jonathan para que "funke" :) debes tener instalado la API de JMF, este reproductor esta hecho utilizando esa libreria.
quisiera saber como puedo hacer un reproductor que reproduzca mp3 y videos un mismo frame... de ante mano gracias
como puedo agregar el boton pausa?
no puedo bajar el codigo fuente que aparece en la pagina.
Que tal amigo?...he estado intentando recrear tu reproductor t..de mp3 con play list..pero tengo una duda....como puedo hacer que en lugar que abra un solo archivo y lo despliegue en el jlist, pueda abrir una carpeta con mp3y desplegar estos archivos en el playlis como puedo hacerlo, basandome que ya he recreado el tuyo, el cual me sirvio de ejemplo..espero puedas ayudarme
Ricardo: pues necesitas un lugar donde almacenar tu lista de canciones, una clase playlist por ejemplo donde puedas añadir/quitar las canciones, esto es POO, por lo que una cancion tambien es un objeto con sus propios metodos y propiedades (titulo cancion, duracion, etc). Creo que deje un ejemplo por ahi con lo que tu quieres hacer, buscalo esta en este blog.
Anonimo: el enlace esta activo
que tal!!,,te molesto nuevamente con una ayuda.....quisiera saber si puedes proporcionarme un ejemplo de keylistener con teclas de direccion para moverme en todo un formulario en java...la verdad estoy desesperado...no tengo ni idea de como hacerlo......la verdad espero puedas ayudarme.....te dejo mi correo....para saber si te puedo agregar al messenger y comentartelo con mas detalle....ricardojesuslp@hotmail.com
por cierto gracias por el ejemplo del reproductor me salvo de muchas sitauciones :)
oye, muy buen programa, estoy tratando de ejecutarlo y obtengo este error, realmente te agradecería si me ayudaras, mi correo es flaca_5_5@hotmail.com
Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
at org.jvnet.substance.utils.SubstanceColorUtilities.getDefaultBackgroundColor(SubstanceColorUtilities.java:852)
at org.jvnet.substance.utils.SubstanceColorUtilities.getBackgroundFillColor(SubstanceColorUtilities.java:786)
at org.jvnet.substance.SubstancePanelUI.__org__jvnet__substance__SubstancePanelUI__installDefaults(SubstancePanelUI.java:73)
at org.jvnet.substance.SubstancePanelUI.installDefaults(SubstancePanelUI.java)
at javax.swing.plaf.basic.BasicPanelUI.installUI(BasicPanelUI.java:56)
at org.jvnet.substance.SubstancePanelUI.__org__jvnet__substance__SubstancePanelUI__installUI(SubstancePanelUI.java)
at org.jvnet.substance.SubstancePanelUI.installUI(SubstancePanelUI.java)
at javax.swing.JComponent.setUI(JComponent.java:664)
at javax.swing.JPanel.setUI(JPanel.java:153)
at javax.swing.JPanel.updateUI(JPanel.java:126)
at javax.swing.JPanel.(JPanel.java:86)
at javax.swing.JPanel.(JPanel.java:109)
at javax.swing.JPanel.(JPanel.java:117)
at javax.swing.JRootPane.createGlassPane(JRootPane.java:545)
at javax.swing.JRootPane.(JRootPane.java:365)
at javax.swing.JFrame.createRootPane(JFrame.java:277)
at javax.swing.JFrame.frameInit(JFrame.java:258)
at javax.swing.JFrame.(JFrame.java:181)
at jcmousemp3.reproductor.(reproductor.java:10)
at jcmousemp3.Main$1.run(Main.java:25)
at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:251)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:705)
at java.awt.EventQueue.access$000(EventQueue.java:101)
at java.awt.EventQueue$3.run(EventQueue.java:666)
at java.awt.EventQueue$3.run(EventQueue.java:664)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:675)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:211)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:128)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:117)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:113)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:105)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Hola maestro,muy bueno el tuto, sin embargo los links estan caidos, es posible resubirlos??gracias saludos
resubiendo :)
mouse tengo una pregunta ademas de agregar las librerias tengo que agregar otra cosa lo que pasa es que cuando le voy a dar play a cualquier cancion me sale un error mi correo es chelo.189@hotmail.com
solo necesita la librerias de JMF y de substance, si no me dices que error te sale no te puedo ayudar
hola hola me parecio interesante tu reproductor, sobre todo por la parte del play list
oye el link de descarga ya no funciona
espero lo puedas corregir o si no es mucho pedir
me lo puedas enviar x correo
oscarreyesarmas@gmail.com
saludos
me pareció interesante tu reproductor, sobre todo por la parte del play list pero el link de descarga ya no sirve me lo podrías enviar XD
isma_vg55@hotmail.com
Como le pongo un botón para reproducir forma aleatoria? atte. Vane
Alguien me podría enviar el proyecto por favor, tengo que registrarme en 4shared para poder descargarlo, hpriodulce@gmail.com es mi dirección, de antemano gracias
no se escucha :/ te agradeceria mucho si me pudieras ayudar. la barrita no avanza solo pone el nombre de la cancion abajo pero nunca avanza la barra ni se escucha
Que tal muy bueno tu programa solo que a mi me aparece un error al momento de querer reproducir una cancion.
el error es el siguiente:
Unable to handle format: mpeglayer3, 44100.0 Hz, 16-bit, Stereo, LittleEndian, Signed, 16000.0 frame rate, FrameSize=32768 bits
Failed to realize: com.sun.media.PlaybackEngine@d89fb1
Error: Unable to realize com.sun.media.PlaybackEngine@d89fb1
may 14, 2015 8:39:53 PM repro.mp3 play
Grave: null
javax.media.CannotRealizeException
at javax.media.Manager.blockingCall(Manager.java:2005)
at javax.media.Manager.createRealizedPlayer(Manager.java:528)
at repro.mp3.play(mp3.java:30)
at repro.control.dale_play(control.java:69)
at repro.reproductor.LISTAMouseClicked(reproductor.java:380)
at repro.reproductor.access$400(reproductor.java:6)
at repro.reproductor$6.mouseClicked(reproductor.java:192)
at java.awt.AWTEventMulticaster.mouseClicked(AWTEventMulticaster.java:270)
at java.awt.Component.processMouseEvent(Component.java:6508)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3320)
at java.awt.Component.processEvent(Component.java:6270)
at java.awt.Container.processEvent(Container.java:2229)
at java.awt.Component.dispatchEventImpl(Component.java:4861)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4501)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4422)
at java.awt.Container.dispatchEventImpl(Container.java:2273)
at java.awt.Window.dispatchEventImpl(Window.java:2719)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:735)
at java.awt.EventQueue.access$200(EventQueue.java:103)
at java.awt.EventQueue$3.run(EventQueue.java:694)
at java.awt.EventQueue$3.run(EventQueue.java:692)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at java.awt.EventQueue$4.run(EventQueue.java:708)
at java.awt.EventQueue$4.run(EventQueue.java:706)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:76)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:705)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:242)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:150)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:146)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:138)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:91)
espero me puedas ayudar y de antemano gracias.
Amigo me interesa mucho el programa. ud me haria el favor de pasarmelo. porfa es urgente. mi correo es jssalas8@yahoo.com
Publicar un comentario