Commit Graph
2 Commits
Author SHA1 Message Date
Lizandro GuarnizoandClaude Fable 5 587c23adcd Playlist TV: subir en cola con resumen — «subí 5 y solo salieron 2»
El reproductor no se saltaba nada: en la base solo había 2 videos. El defecto
estaba en la subida: los archivos elegidos se mandaban TODOS EN PARALELO
(inp.files.forEach), peleándose el ancho de banda de subida. Los primeros
alcanzaban a entrar y el resto moría por timeout — avisando con un toast que
desaparece en segundos y con una barra de progreso que además era la misma
para todos, pisándose entre sí. El cliente veía «subí 5», la playlist tenía 2.

Ahora los archivos van de a uno (secuencial a propósito), un fallo no frena a
los que siguen, y al terminar queda un RESUMEN FIJO: «3 de 5 agregados», con
el nombre de cada rechazado y su motivo en cristiano. Los videos de iPhone
(.mov) —causa probable del resto de los faltantes— se rechazan de inmediato
con la instrucción de convertirlos a MP4, en el navegador y en el servidor.
Y los límites de PHP (INI_SIZE, FORM_SIZE, PARTIAL) dejan de caer en «error
de subida desconocido».

Verificado además que nginx acepta cuerpos de 90 MB o más: el límite del web
server no era la causa.

scripts/test_tv_playlist.js: 11 pruebas contra el código real — nunca dos
subidas a la vez, los 5 se intentan pese a fallos, el resumen cuenta y nombra,
y los pre-chequeos rechazan sin tocar la red.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-27 10:19:02 -05:00
Lizandro GuarnizoandClaude Sonnet 4.6 6254e45e8f Pantalla TV del turnero: playlist de videos e imágenes en vez de un solo video
Nueva tabla turnero_tv_media (tipo, url, orden, duracion_segundos) para
soportar múltiples videos/imágenes reproducidos en secuencia y en bucle.
El video que ya estaba cargado se migró como primer ítem de la playlist.

- save_tv_media.php / delete_tv_media.php / reorder_tv_media.php
  reemplazan a save_tv_video.php (eliminado).
- configuracion.php (tab TV): subida múltiple, lista reordenable por
  arrastre, duración editable por imagen.
- display_global.php: el <video> único se reemplaza por un reproductor
  JS que recorre la playlist — video hasta 'ended', imagen por su
  duración configurada, y vuelve a empezar al terminar.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-08-03 14:33:05 -05:00