aggiornamento de Desarrollo de OFIBO: Shuffle, Mejores Formas de Onda y Playlists Colaborativas
16 de septiembre de 2026
El 16 de septiembre fue altro día productivo de desarrollo per OFIBO. Trabajamos tanto en el frontend come en el backend, mejorando el reproductor de musica, aumentando la calidad de le formas de onda per audio de larga duración, introduciendo playlists colaborativas, refinando la gestión de playlists y corrigiendo un problema importante de configuración del perfil.
La mayoría de estas mejoras se construyeron ampliando i sistemas que OFIBO ya tenía, en lugar de reemplazar una arquitectura de produzione que ya funcionaba. Esto nos permitió introducir nuova funcionalidad importante manteniendo intactas la cola existente del reproductor, le playlists y la estructura de la applicazione.
Shuffle Llegó al Reproductor de OFIBO
una de le mejoras più importantes del reproductor fue la incorporación de Shuffle.
En lugar de reconstruir o reemplazar la cola de riproduzione existente de OFIBO, Shuffle se creó
come una capa ligera su la cola que ya gestiona PlayerContext.
Esto significa que la paginación de produzione y la cola ensamblada dinámicamente siguen funcionando
exactamente come prima.
Shuffle ahora funciona tanto en el reproductor con forma de onda come en el reproductor compacto. Lleva un registro de qué brani ya se han reproducido per que no se repitan fino a haber recorrido toda la cola disponibile en ese momento.
anche incorpora automáticamente le nuove brani que se añaden a la cola più adelante. Esto es especialmente importante per OFIBO perché la applicazione può seguire cargando brani mientras el oyente ya è reproduciendo musica.
anche añadimos historial de riproduzione aleatoria. Grazie a ello, Precedente ahora sigue el recorrido real de escucha en modo aleatorio en lugar de retroceder por el orden original de la playlist.
Mejores Controles del Reproductor en Móvil, Tablet y Escritorio
dopo de probar el reproductor compacto con tamaños de pantalla reales de produzione, refinamos la distribuzione responsive de sus controles.
En pantallas de telefono, preferito e Shuffle permanecen en el lado izquierdo del reproductor. En layouts de tablet y escritorio, esos controles se mueven al lado derecho, justo prima del carrito y del control de licenze.
anche corregimos un errore responsive que podía hacer que la identidad de la brano apareciera dos veces en el reproductor compacto alrededor del rango de ancho de pantalla 640–767px. El problema procedía del breakpoint de visibilidad usado per el título de brano en línea y ya ha sido corregido.
Visualización Correcta del Tiempo per Pistas de Varias Horas
OFIBO no è limitado a brani cortas, por lo que el reproductor anche necesitaba representar correttamente el audio de larga duración.
prima, le pistas de più de una hora podían seguire mostrando minutos acumulados.
Mejoramos el formateador de tiempo del reproductor per que le pistas largas utilicen ahora
el formato mucho più claro H:MM:SS.
Por ejemplo, una grabación larga ahora può mostrare: 4:23:31.
le brani normales siguen utilizando el formato familiar M:SS, por lo que nada
cambia per le pistas habituales.
una Resolución de Forma de Onda Mucho migliore per Audio Largo
anche investigamos por qué el detalle de la forma de onda empeoraba cada vez più en archivos de audio de una o varias horas.
El problema se rastreó fino a el proceso de generación de la forma de onda. La ruta de exportación anterior de WaveSurfer producía en la práctica solo alrededor de 8.000 picos por canal, casi independientemente de la duración del audio.
Esa resolución può funcionar bien per una brano corta, pero el stesso número de puntos de forma de onda extendido a lo largo de una, dos o cuatro horas de audio se vuelve cada vez più tosco.
Sustituimos este enfoque de resolución fija por una generación de forma de onda que escala según la duración de la pista.
Nuestro nuovo objetivo de calidad es aproximadamente 10.000 picos por cada cuatro minutos de audio, o alrededor de 41,67 picos por segundo.
Esto significa que OFIBO ahora può generar aproximadamente:
- 10.000 picos per una brano de 4 minutos
- 150.000 picos per una grabación de 1 hora
- 600.000 picos per una grabación de 4 horas
anche verificamos el backend de Laravel durante la investigación. El endpoint existente de formas de onda ya era capaz de aceptar el array de picos y almacenar la carga JSON completa.
En otras palabras, la supuesta limitación de payload del backend no era el problema. La solución correcta se aplicó dove correspondía: en la generación y exportación de la forma de onda.
Playlists Colaborativas
altra gran área de trabajo fue la collaborazione en playlists.
le playlists de OFIBO ahora possono tener colaboradores aprobados que participen en su gestión junto con el propietario.
Lo importante es que implementamos esto senza creare un segundo sistema de membresía innecesario.
OFIBO sigue utilizando la tabla pivote existente playlist_user.
El campo playlists.user_id sigue siendo el propietario canónico de la playlist,
mientras que i colaboradores aprobados se representan mediante registros existentes de
playlist_user usando is_collaborator = true.
Esto mantiene el modelo de datos più limpio y permite que la collaborazione se integre de forma natural con el sistema de playlists que OFIBO ya utiliza.
Un nuovo Sistema de Invitaciones a Playlists
Aunque la membresía aprobada sigue utilizando la tabla pivote existente, el estado de le invitaciones necesitaba su propio ciclo de vida.
per ello introdujimos la nuova tabla playlist_invitations.
Gestiona por separado le solicitudes de collaborazione pendientes y rechazadas respecto a la membresía aprobada de la playlist.
i colaboradores possono buscarse e invitarse por nome de utente. El sistema de invitaciones anche protege frente a varias situaciones no válidas:
- i utenti no possono invitarse a sí mismos.
- i colaboradores ya aprobados no possono volver a ser invitados.
- Se evitan invitaciones pendientes duplicadas.
- i utenti que rechazaron una invitación anteriormente possono volver a ser invitados più adelante.
quando se aprueba una invitación, OFIBO crea o actualiza la membresía correspondiente en
playlist_user y marca al utente come colaborador.
Si la invitación se rechaza, no se crea ninguna membresía de playlist.
i Colaboradores possono Gestionar Realmente la Playlist
La collaborazione no es simplemente un nome mostrado junto a una playlist.
Ampliamos la autorización autenticada de playlists per que i colaboradores aprobados puedan abrir y modificare playlists compartidas, ya sean públicas, no listadas o privadas.
i colaboradores aprobados possono:
- Aggiungi brani
- Elimina brani
- Reordenar brani
- Trabajar dentro de la interfaz existente de gestión de playlists
Reutilizamos deliberadamente el editor de playlists existente en lugar de creare un editor de collaborazione independiente. Esto mantiene consistente la interfaz de OFIBO y evita mantener dos sistemas distintos per prácticamente la stessa tarea.
La Propiedad de la Playlist Sigue Importando
Aunque i colaboradores possono gestionar el contenuto de una playlist, el propietario original sigue siendo distinto de i colaboradores.
Por eso, eliminare una playlist es una acción exclusiva del propietario.
Añadimos la acción que faltaba de Elimina Playlist per i propietarios e implementamos la eliminazione
mediante soft deletes de Laravel, preservando al stesso tiempo el indicador lógico existente
deleted de OFIBO.
i colaboradores no possono eliminare la playlist y esa acción destructiva no se les muestra en la interfaz.
Invitaciones a Playlists Dentro de Mis Playlists
i utenti invitados ahora reciben una sección de Invitaciones a playlists dentro de la experiencia existente de Mis Playlists.
da allí, i utenti possono Aprobar o Rechazar una invitación. una vez aprobada, la playlist compartida pasa a formar parte de su experiencia habitual de playlists en lugar de aparecer dentro de un sistema de collaborazione completamente separado.
una Interfaz più Limpia per “Invitar Colaborador”
anche refinamos la interfaz de invitaciones a playlists dopo de probarla.
En lugar de mostrare permanentemente todo el formulario de ricerca e invitación de colaboradores, la pagina de la playlist muestra inicialmente un botón sencillo de Invitar colaborador.
La interfaz completa de ricerca por nome de utente e invitación se abre solo quando se necesita.
Esto mantiene più limpia la pagina de la playlist senza perder ninguna funcionalidad de collaborazione.
Mostrando Juntos al Propietario y a i Colaboradores
La identidad de la playlist anche fue mejorada.
El nome de utente del propietario sigue apareciendo primero, pero ahora i colaboradores aprobados se muestran junto al propietario.
Por tanto, una playlist può mostrare una línea de identidad similar a:
@propietario y @colaborador
Esto deja claro de inmediato cuándo una playlist è siendo mantenida por più de un utente de OFIBO, al tiempo que sigue identificando quién es su propietario original.
Corregido un Errore del Navegador en la Impostazioni del Profilo
Por último, corregimos un problema a nivel del navegador que podía impedir que se guardaran ajustes del perfil que no tenían relación tra sí.
El problema procedía del pattern HTML utilizado por el campo de nome de utente.
En navegadores que usan el nuovo modo de expresiones regulares Unicode v, el guion de la
clase de caracteres [a-z0-9._-] podía provocar una excepción
Invalid character in character class.
come la validación del navegador ocurre prima de que el formulario llegue al backend, esto podía impedir actualizaciones de ajustes completamente distintos, come genere o privacy.
El guion ahora è correttamente escapado, eliminando la excepción del navegador y restaurando el envío normal del formulario de perfil.
Construyendo OFIBO senza Romper lo Que Ya Funciona
Un tema recurrente en el trabajo del 16 de septiembre fue ampliar OFIBO senza reemplazar innecesariamente sistemas de produzione estables.
Shuffle se construyó su la cola existente del reproductor. le playlists colaborativas reutilizaron la tabla pivote existente de membresía de playlists. La edición compartida reutilizó el editor de playlists existente. La investigación de le formas de onda confirmó que el backend ya estaba haciendo su trabajo prima de realizar cambios en el proceso de generación.
El risultato es una app de musica OFIBO più capaz, con riproduzione più inteligente, formas de onda mucho più detalladas per audio largo, collaborazione real en playlists, una gestión de playlists più limpia y ajustes de perfil più fiables.
Paso a paso, OFIBO sigue creciendo fino a convertirse en una piattaforma più rápida y completa per ascoltare, condividere y gestionar musica.
