Progreso de desarrollo en mi programa DLNA Player – Septiembre de 2021

Progreso de desarrollo en mi programa DLNA Player – Septiembre de 2021

Hola a todos,

Ha pasado mucho tiempo desde mi último post acerca de mi programa DLNA Player. La verdad es que he tomado un descando y no he trabajado en mis programas personales recientemente. He estado descansando y viendo películas. Sin embargo, en estos días, retomé la iniciativa y comencé a escribir código. En este post, les mostraré lo nuevo que he implementado en este programa:

Interfaz gráfica de DLNA Player v0.5
La interfaz gráfica.

En términos de la interfaz gráfica, no mucho ha cambiado. Ahora hay un nuevo menú llamado «Options» en donde ahora puedes decidir en decodificar los siguientes formatos de audio:

  • FLAC a WAV
  • M4A a WAV
  • MP3 a WAV
  • Opus a WAV
  • WMA a WAV

O puedes decidir si decodificar los formatos anteriores a FLAC en vez de WAV. Esto lo añadí para mejorar la compatibilidad con varios productos.

Opciones de decodificación en el programa DLNA Player.
Lista de opciones de decodificación.

Una cosa que implementé en estos días es que si algún decodificador no está presente, para evitar problemas el programa hará una verificación al inicio. El programa verificará si los siguientes programas esenciales existen:

  • flac.exe – Para decodificar FLAC a WAV.
  • opusdec.exe – Para decodificar Opus a WAV.
  • ffmpeg.exe – Para decodificar M4A, MP3 y WMA.

Ffmpeg también es necesario si lo queremos usar en lugar de flac.exe y opusdec.exe, o si queremos decodificar los archivos a formato FLAC en vez de WAV. Si alguno de estos programas no se encuentran disponibles, sus respectivas opciones serán desactivadas:

Algunas opciones de DLNA Player están desactivadas porque faltan algunos decodificadores.
Algunas opciones están desactivadas porque faltan algunos decodificadores.

Respecto al código del programa, algunas partes han sido mejoradas para estabilizar la interfaz, la decodificación y proceso de reproducción. Por ejemplo, al cargar una pista, la interfaz no se volverá inestable ya que este proceso ahora ocurre aparte del proceso principal. Esto era más notable al escuchar una pista de un disco CD porque el programa tiene que cargarlo a memoria.

Función "Play" del programa DLNA Player mostrando que las pistas se cargan aparte.
La función LoadFile() ahora se ejecuta aparte.

Pienso que estoy casi listo para lanzar esta nueva versión al mundo para que todos puedan usarlo con sus reproductores. Lo he estado probando con un reproductor Hiby R3 Pro Saber. El único problema que he encontrado es que no quiere funcionar con el firmware 1.6. Por eso, en los momentos uso la versión 1.5. No se por qué falla la 1.6. Es algo que debo investigar más adelante. Sin embargo, lo bueno es que funciona bien con versiones anteriores:

Streaming music from the DLNA Player software to the Hiby R3 Pro Saber Digital Audio Player.

Los mantendré informados de los arreglos y mejoras que le haga al programa

Por los momentos, puedes descargar la versión 0.4 en GitHub haciendo click aquí. Esta versión incluye el código que carga la próxima canción mientras la actual se reproduce, haciendo que la próxima comience a reproducirse más rápido luego de que la canción actual termine.