[C++] Reproductor de música simple

Iniciado por Stakewinner00, 10 Enero 2016, 19:40 PM

0 Miembros y 1 Visitante están viendo este tema.

Stakewinner00

Hace 2 días estuve programando un reproductor de música simple ya que mpd era muy complejo para lo que necesitaba y los clientes que probé no me funcionaban como queria, no es la gran cosa, le faltan muchas funcionalidades, y el código es mejorable, pero cumple su función así que lo comparto por si alguien tenía la misma necesidad que yo.

Siempre pongo la música en modo aleatorio y siempre tengo muchas ventanas abiertas y cuando quiero pausar la música, o abrir el reproductor era molesto estar buscando la ventana del reproductor, así que programe esto.
Este programa busca todas las canciones del directorio especificado y las reproduce aleatoriamente. Además puedes dejar el daemon corriendo y asociarle ciertos keybins al cliente para no tener que estar buscando la ventana.

Al ejecutarlo en modo daemon por defecto inicia en pausa, de este modo puedo añadirle a mi .xinitrc una línea para que se ejecute nada más iniciar sessión y asociarle unos keybinds para el cliente (por ejemplo con xbindkeys como me propusieron por el IRC). Así cuando quiera reproducir música solo tengo que pulsar una tecla sin esperar a cargar ningún programa :D

Para ejecutarlo en modo cliente se le ha de pasar como único argumento la carpeta donde buscar las canciones. Para ejecutarlo en modo daemon se le ha de pasar un segundo argumento que debe ser "d", por ejemplo: player++ ~/Music d.
Para comunicarse con el daemon el primer argumento tiene que ser la opción, n (next) p (pause) q (quit), por ejemplo: player++ n hará que el daemon reproduzca la siguiente canción de la lista aleatoria.

El programa actualmente solo funciona en linux, pero no sería difícil hacerlo correr en windows.
El programa depende de 3 librerías, la mpg123, sfml y boost-filesystem.
No me gusta demasiado la librería sfml pero era muy fácil de usar, y quería algo fácil. Estoy abierto a sugerencias, de momento mire la openal, sdl-mixer y fmod pero me quede con la sfml por ahora.

Si en el futuro me lo tomo más en serio puede que le ponga soporte para filtrar por artista y otras cosas que considere útiles.

Repositorio git: https://github.com/stakewinner00/cppplayer/

MAFUS

No lo he probado, pero tiene buena pinta.  ;-) ;-) ;-)
Interesante proyecto.