3.3.0: lo que entra nuevo ya entra ordenado
Las cuatro funciones que eligió Munka tras la 3.2.0: - Nueva pieza: crea «NN- Título» en su mes con el número que toca y sus subcarpetas; si la pieza ya existe, lo dice. Se deshace mientras siga vacía. - Bandeja de entrada: lo que se deje en _Entrada se reparte por mes, día de rodaje y cámara. «Traer material» copia una tarjeta comprobando cada archivo (se vuelve a leer y se compara la huella), conserva la fecha del rodaje y no toca el origen. - Versiones del mismo clip: dos clips de cámara que se llaman igual, duran lo mismo y tienen la misma forma son el mismo clip; se queda el de más imagen y el otro va a Duplicados. - Orden automático, apagado de fábrica: una tarea del Programador de tareas de Windows lanza «automatico», que lee todas las carpetas y hace solo lo seguro. No toca una carpeta que no se pueda leer entera ni una cuyo plan mueva más de 3.000 archivos, y si el programa ya está abierto se lo pide a él. Desinstalar quita la tarea. De paso: una ruta que empieza por guion bajo ya no pierde el guion al ir a la papelera. Pruebas: prueba_orden.py 24, probar.py 19, prueba_funcional.py 29, prueba_ventana.py 18 desde el código y 17 con el paquete. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Este commit está contenido en:
53
README.md
53
README.md
@@ -817,6 +817,59 @@ y repartida en sus meses, y una segunda pasada no propuso nada marcado. Pruebas:
|
||||
19 casos que reproducen cada uno de estos puntos en pequeño; `probar.py` 19 de 19, `prueba_funcional.py` 26
|
||||
de 26 y `prueba_ventana.py` 18.
|
||||
|
||||
3.3.0, lo que entra nuevo ya entra ordenado. Tras la 3.2.0 Munka eligió cuatro funciones de las nueve que
|
||||
se le propusieron. Las cuatro atacan el sitio donde nace el desorden: el día que se vuelca la tarjeta y el
|
||||
día que se crea la carpeta de una pieza.
|
||||
|
||||
- **Bandeja de entrada.** La carpeta `_Entrada` dentro de la del cliente. El plan la abre siempre: lo que
|
||||
se deje ahí (una tarjeta volcada, clips sueltos, una carpeta con el nombre de la sesión) va a su mes, a su
|
||||
día de rodaje y a su cámara. En la lista de la carpeta sale como «Repartir», que vuelve a leer la carpeta
|
||||
y aplica solo lo que sale de la bandeja y va marcado (`ordenar_entrada`); lo dudoso se queda dentro. La
|
||||
bandeja no se borra al vaciarse ni cuenta como carpeta vacía, y el esqueleto de la tarjeta (PRIVATE,
|
||||
M4ROOT, CLIP…) se quita solo, apuntado en el mismo lote para que «Deshacer» lo rehaga. De una tarjeta
|
||||
Sony, `SUB` cuenta como proxies y `THMBNL`, `GENERAL` y `MEDIAPRO.XML` como lo que son: índices de la
|
||||
cámara, a `_Para borrar`.
|
||||
- **Traer material** (`traer`). Copia una tarjeta, o cualquier carpeta de fuera, a la bandeja y la reparte.
|
||||
Cada archivo se copia a un nombre provisional, se vuelve a leer entero y se compara su huella (BLAKE2)
|
||||
con la del original; solo entonces toma su nombre, con la fecha del archivo conservada, que es la del
|
||||
rodaje. La lista de lo copiado con su huella queda en `.organilab\entradas\` dentro de la carpeta del
|
||||
cliente. Del origen solo se lee. Una copia cortada se retoma; un archivo que ya está y es distinto no se
|
||||
pisa. No se trae de dentro de la carpeta del cliente ni de la de otro cliente registrado, y se comprueba
|
||||
antes que cabe.
|
||||
- **Nueva pieza** (`nueva_pieza`). Crea «NN- Título» en su mes con el número siguiente al mayor que haya y
|
||||
las subcarpetas de `config.json` › `pieza.subcarpetas` (las que más se repiten en las piezas del estudio).
|
||||
Si la pieza ya existe, aunque esté escrita distinto, lo dice y no crea otra. En clientes de campañas o de
|
||||
proyecto usa su plantilla, sin número. Queda en la bitácora como `mkdir`: «Deshacer» la quita mientras
|
||||
siga vacía. Una pieza recién creada, y el mes o el año que se crearon para ella, no salen entre las
|
||||
carpetas vacías por borrar durante 30 días.
|
||||
- **Versiones del mismo clip** (`_mismas_tomas`). Dos clips de cámara que se llaman igual y pesan distinto
|
||||
pueden ser el mismo clip con dos calidades, o dos clips de dos tarjetas (las dos traen un C0001.MP4). Se
|
||||
leen con ffprobe: si duran lo mismo y tienen la misma forma de imagen son el mismo clip, se queda el de
|
||||
más imagen (a igualdad, el que más pesa) y el otro va a `Duplicados` a su lado; si no, se dejan. Solo
|
||||
material de cámara: la primera versión comparaba cualquier video, y sobre la carpeta de Galeano juntaba
|
||||
la entrega vertical y la horizontal de una pieza, que se llaman igual y duran lo mismo. Es la tercera
|
||||
clase de «Juntar repetidos», que ahora tiene botones propios en «Qué hay» («Comparar y ver todos»,
|
||||
«Juntar en Duplicados»); hasta ahora solo se llegaba por «hacer de una vez». En esa carpeta hay 24 clips
|
||||
de un rodaje guardados dos veces (los de 99 MB y su copia de 31 MB): con la ligera apartada, la fila de
|
||||
39 clips que el plan dejaba sin marcar ya no choca y puede ir a su mes.
|
||||
- **Orden automático** (`automatico`). Viene apagado. Encendido desde la portada, da de alta una tarea del
|
||||
usuario en el Programador de tareas de Windows («OrganiLAB - orden automatico», diaria, a la hora
|
||||
elegida) que lanza `OrganizadorLabstream.exe automatico`, sin consola ni ventana. La pasada recorre las
|
||||
carpetas registradas: escanea cada una y hace lo mismo que «hacer de una vez». Tres frenos: si la carpeta
|
||||
no está conectada o no se pudo leer entera, no la toca; si el plan mueve más de `automatico.limite`
|
||||
archivos (3.000), tampoco, y lo dice; y si el programa ya está abierto, la tarea se lo pide a él por su
|
||||
puerto en vez de trabajar a la vez. El resumen queda en `datos\automatico.json` y en la portada, carpeta
|
||||
por carpeta, con «Hacerlo ahora» para lanzarlo a mano. Con `ORGANILAB_ENSAYO` puesto, la tarea se escribe
|
||||
en un archivo en vez de darse de alta: así lo prueban las pruebas.
|
||||
|
||||
De paso: `destino_plantilla` recortaba el guion bajo inicial de cualquier ruta que entrara en una variable,
|
||||
así que lo apartado desde `_Entrada\…` llegaba a la papelera como `Entrada\…`; ahora solo recorta lo que deja
|
||||
una variable vacía. Y cada cuadro de confirmación de la interfaz vuelve a abrir con su botón habilitado.
|
||||
|
||||
Pruebas: `prueba_orden.py` 24 casos (5 nuevos: pieza, bandeja, tarjeta con una copia falseada que tiene
|
||||
que rechazar, versiones con ffprobe simulado, y la pasada automática con sus frenos); `prueba_funcional.py`
|
||||
29 de 29 (3 nuevas, por la interfaz de verdad del servidor); `probar.py` 19 y `prueba_ventana.py` 18.
|
||||
|
||||
Probado el 9 sep 2026 sobre una copia de ensayo: plan → aplicar → deshacer → volver a aplicar deja el árbol
|
||||
exacto; conversión ffmpeg verificada y reemplazo con original a `_Para borrar`. El puente de Resolve conectó
|
||||
con Resolve Studio 21.1 pero no pudo abrir proyecto porque Resolve estaba en el Gestor de proyectos:
|
||||
|
||||
Referencia en una nueva incidencia
Block a user