Cuando recibas el ALE, revisa primero estos campos
La respuesta corta: un ALE se entrega hoy con 28 columnas en un orden fijo; la fila de nombres de columna se contrasta con ese orden. Las dos horas después del cierre son el costo real del día: los números de toma anotados en papel hay que volver a teclearlos en una hoja de cálculo, y al final hay que dejarle ordenado el registro a quien lo lea mañana; un número de toma saltado o un fotograma de desfase en el código de tiempo hacen que devolverlo y volver a conformar caiga en la tarde del día siguiente. SlateX lo entrega como filas de datos: arma una fila por cámara, cuatro cámaras son cuatro filas, y aunque no se anote ninguna cámara igual sale una fila. La casilla que no se anotó queda vacía; no la tapamos con un número que solo parece legítimo. Esta página se escribe con una sola vara: lo que entregas debe permitir que quien lo reciba encuentre por sí mismo en qué no cuadra. La línea de declaración del encabezado dice con letras exactas de quién son estas reglas; léela como una frontera, no como un certificado.
Que el archivo se abra solo prueba que la sintaxis se lee. Un formato válido no quiere decir que los hechos estén bien.
Nombres y orden de las columnas: 28 columnas, cotejadas contra las cadenas que salen en el archivo
La posición de cada columna es un contrato entre nosotros y quien recibe: si cambias una columna, cambia a la vez su fila de datos, y si los dos lados no van juntos el archivo entero queda desfasado. Las 28 columnas que se entregan hoy van en este orden: Name, Tracks, Start, End, Duration, Scene, Take, Reel #, Soundroll, FPS, SlateX Description, SlateX Comments, Tape, Camera, Camera Notes, VFX_Count, VFX_Type, Director, Sound TC, Source File Name, Source File, Camroll, Shoot date, Unit, Rating, Circled take, TC Mode, SlateX Set Time. La última es una columna nuestra, y lo que trae es la Duración de escena que el script anota en el registro de la take; no mide con la misma vara que Duration, cuyo tramo, en pantalla, es la casilla de solo lectura Duración de TC, y más abajo, en la sección de posición en el tiempo, se ve cómo van las dos lado a lado. Revisa contra esas cadenas literales y no des por supuesto que un sistema posterior va a mapear solo, hacia un mismo campo, nombres de columna parecidos. SlateX Description y SlateX Comments traen delante el nombre del producto porque en esas dos celdas va lo que escribimos nosotros, y no deben pasar por la semántica estándar de nadie más.
Quién es una fila: número de tarjeta, forma literal y número que cuenta el software son tres cosas
Tape entrega el número de tarjeta que copiaste en el set, tal cual, con una condición: que todo el número sea letras y números ASCII. Lo que cumple pasa a mayúsculas y se recorta a 31 caracteres; si se mezcla cualquier otro carácter (chino, un espacio, un guion), la celda queda vacía entera, porque no juntamos letras del nombre de una tarjeta para entregarte un número que nunca escribiste. Lo de las mayúsculas tiene su razón: si el uso de mayúsculas de una misma tarjeta se parte, aguas abajo esa tarjeta se convierte en tres, y las salidas por lote, las nuevas salidas y las hojas de edición dejan de cuadrar por todos lados. Camroll entrega ese mismo número de tarjeta, y esa celda también pide el número entero en ASCII: si el nombre de la tarjeta trae caracteres que no son latinos, la celda queda vacía y el texto tal cual solo vive en el CSV y en el PDF. El contrato de Reel # dice que en esa columna va un número, así que si el número de tarjeta lleva cualquier letra la celda entera queda vacía; no le quitamos el prefijo para armar un número que lo parezca.
Hay una cosa más con pinta de identificador: el número de pantalla que cuenta el propio software, una letra de cámara más tres dígitos correlativos. Junto con el número de tarjeta que tú copiaste, en el CSV quedan sueltos en dos columnas, Reel y Camera Card, y escribirlos aparte es justo para que se vea cuál está copiado y cuál lo puso el software. Ese número derivado no corresponde a ninguna tarjeta física, así que no sirve para volver a encontrar el material original.
Name se mide con las mismas dos varas: 31 caracteres y ASCII. Arma un nombre fijo con el número de rollo y el de clip de la cámara que está en esa fila —número de escena, de plano y de toma—: solo cuando la take no tiene ninguna fila de cámara: la misma fila sale con el mismo nombre en cada entrega, pero no hay promesa de que dos filas distintas no compartan nombre: el número de toma se anota a mano, así que la identidad se verifica renglón por renglón contra el número de escena, el de plano y el de toma (y el de cámara cuando hay varias). Es un identificador generado, no el nombre que tú escribiste en el papel del set.
Posición en el tiempo: la entrada y la salida solo admiten lo que de verdad se leyó en el set
Start toma el código de tiempo del punto de entrada que esta fila tiene anotado: el valor real del punto de entrada está en esa casilla, y no hay una segunda columna de retroceso. End toma el punto de salida que está guardado en la base. El punto de salida llega a la base por dos caminos: la cadena de grabación capta, justo cuando se pide stop, la lectura que muestra la pantalla, y el software la escribe en la base en ese momento; además, las páginas de alta y de edición del registro de la take tienen cada una su casilla “salida”, donde el script copia a mano lo que ve en la pantalla de la cámara. Si no se recorre ninguno de los dos caminos, queda vacío; tampoco lo sacamos de sumarle la duración a la entrada, porque eso sería hacer pasar un número calculado por la lectura que muestra la pantalla de la cámara. La celda del punto de salida en el CSV viene del mismo lado y con la misma vara. Una celda vacía aparece en la hoja de conciliación del cierre como TC_OUT_MISSING, y el criterio es: hay punto de entrada y no hay punto de salida. Alguien tiene que volver al reporte de cámara o a la pantalla del equipo para copiarlo.
Duration ya no son los segundos que reportó el cronómetro del script. Esta columna es la distancia exacta en fotogramas entre las dos lecturas de entrada y salida, sin contar el fotograma final, y por eso es igual a End − Start; si falta cualquiera de las dos lecturas, la celda sale vacía. La Duración de escena que anota el script —cuánto duró de verdad la acción de esa take, con el prearranque, la claqueta y un director que arranca antes metidos ahí— va por su cuenta, en la última columna SlateX Set Time, y sale al lado de Duration. Que los dos números no cuadren no está mal, es lo normal en el set: nunca están midiendo el mismo tramo. La hoja de conciliación marca ese caso con DURATION_MISMATCH solo para que alguien lo mire, y no toca el valor de ninguna celda. FPS solo tiene valor cuando esa fila declara su propia frecuencia de fotogramas: sin declaración, no hay número. Esta columna nunca muestra una frecuencia que esta cámara no haya reportado.
Los punto y coma van solo con lo declarado. En TC Mode únicamente puede aparecer un testigo, DF, y el blanco significa que no hay declaración de drop frame, no que sea sin drop frame. Solo en las filas que declaran DF se escriben Start, End y Duration con punto y coma. Es una convención de pantalla nuestra, de SlateX, y el encabezado lo dice textual; no es un requisito de ningún estándar, así que no leas el punto y coma como la clave universal de “esta fila es drop frame”. El código de tiempo de sonido se entrega tal cual: se mira la forma, nunca se recortan posiciones de fotograma.
En este ALE, un valor ausente solo tiene una cara: vacío
Las celdas sin código de tiempo anotado, o cuya cadena no pasa el control de forma o de rango, salen vacías. En este archivo ya no vas a ver 00:00:00:00. Lo malo de esa cadena de ceros no era estar mal, era parecer válida: dejaba a quien recibe sin poder separar un cero real del set de un cero metido de relleno, así que esa ruta se quitó por completo. Valor ausente es vacío, y un vacío abre dos preguntas: si no se anotó nada o si lo anotado no es ASCII. Las columnas de texto libre son justo donde cae la segunda.
Las columnas Source File Name y Source File están; su valor llega por dos caminos: los copiaste en el set, o la app llena esas mismas celdas al importar los medios desde un archivo y no reemplaza lo que ya habías copiado a mano; si no recorriste ninguno, quedan vacías, porque no nos inventamos rutas. VFX_Count también está en la lista, pero no tiene campo manual: solo los proyectos de demostración incluidos traen un valor; una toma creada en el set sale vacía. Soundroll entrega el número de rollo del libro del reporte de sonido por ese mismo filtro de Tape: el valor sale solo si está todo formado por letras y dígitos ASCII, y si falta queda vacío: no lo tapamos con el número que cuenta el software. Todo el ALE solo acepta ASCII, pero eso son dos varas distintas, no una. El texto libre que alguien lee —descripción, notas de la take, notas de cámara, director, unidad— primero se reduce sin pérdida a formas ASCII cuando lo único que cambió fue el glifo: acentos, comillas tipográficas y guiones, puntuación de ancho completo; los saltos de línea y las tabulaciones antes de escribir se aplastan a espacio. Solo lo que sigue siendo no latino después de esa reducción hace que la celda entera salga vacía. Las celdas de índice que reconocen la fuente —número de tarjeta, número de escena, nombre de archivo, ruta— nunca se reducen: esa celda tiene que traer lo que tú transcribiste, así que un valor no ASCII sale vacío. Por eso una nota en chino acá es una celda vacía, y una nota en alemán con acentos sale reducida; el texto tal cual se queda en el CSV y en el PDF en los dos casos.
En qué estado quedó la fila también está escrito en el archivo
Rating entrega el texto del estado del set, la familia Circle, Keep, Hold, N/G, y la celda queda vacía si la take nunca recibió estado; Circled take entrega TRUE o FALSE. Así, quien recibe lee en el propio ALE qué estado tenía una take y si estaba entre las marcadas en círculo, sin tener que volver a preguntarle al script.
Tracks tiene cuatro formas, no un “si no es MOS entonces es sonido sincronizado”: V es una take MOS, A1A2 es una pista suelta y VA1A2 es sonido sincronizado; si una fila no tiene ningún dato de sonido la celda queda vacía, porque no la llenamos por defecto con sonido sincronizado. Los literales van unidos, sin separadores; no existe la forma V A1 A2 con espacios.
Qué es la hoja de conciliación del cierre y qué no es
Una exportación de un solo día puede traer un Reconcile_*.csv. Esta hoja solo juzga nuestra página: qué falta y qué se contradice consigo mismo. Son catorce testigos, cada uno dice una cosa: CARD_MISSING, SOURCE_MISSING, SOURCE_DUP, SOUND_ROLL_MISSING, SOUND_TC_MISSING, MOS_VS_SOUND, MOS_VS_WILD, TC_MODE_UNDECLARED, TC_SOURCE_UNDECLARED, TC_EPOCH_MIXED, DURATION_MISMATCH, TC_IN_MISSING, TC_OUT_MISSING, DAY_MISSING. De esos, SOURCE_DUP, MOS_VS_SOUND, MOS_VS_WILD, DURATION_MISMATCH y TC_EPOCH_MIXED suben la fila entera a “conflicto”, el resto cae en “faltante”, y solo se escribe “coherente” cuando no aplica ninguno de los dos. DURATION_MISMATCH compara las dos varas, Duración de escena contra Duración de TC, y no decide quién anotó mal. La hoja marca y nada más: no toca el valor de ninguna fila ni tapa los números de uno con los de otro.
Ese “coherente” de la hoja tiene una sola lectura: nuestras propias reglas no encontraron nada. No quiere decir que dos departamentos hayan confirmado nada.
Su frontera hay que decirla clara: esta hoja no lee el reporte de cámara ni el reporte de sonido. El encabezado trae dos columnas llamadas “tarjeta del reporte de cámara” y “número de rollo de sonido”, pero el valor de esas dos celdas sale del registro que tú copiaste en nuestro software, no de los reportes originales de los dos departamentos. DAY_MISSING dice que este registro, tal como está ahora, no pertenece a ningún día de rodaje: la take no se perdió y sale igual en el paquete completo; lo que no tiene valor son las cuatro celdas de número de día, fecha, unidad y director, y este testigo es el que lo saca a la vista. Lo que se paga es que el papel de cierre de ese día no se puede completar, no que se hayan perdido los datos. Hay un faltante que esta hoja no nombra: las celdas vaciadas porque el texto no es ASCII; en la base el valor está anotado, así que ningún testigo se prende, y esas columnas solo las puedes cotejar contra lo que tú copiaste.
Contrástalo con tu propia plantilla de importación
Lo de arriba es una lista de revisión, no un estándar del gremio, y no predice cómo va a interpretar cada columna ningún sistema que reciba. Su único fin es poner a la vista lo que sí se puede revisar, para que quien recibe sepa dónde tiene que volver a la fuente. Antes de entregar nada, quien recibe debe contrastar el registro renglón por renglón con su propia plantilla de importación: la revisión queda en manos del lector.
Cuando la revisión no pasa, no mezcles las tres salidas
Devuélvelo. Cuando los campos de identidad o de tiempo contradicen al material o al registro del set, y el registro original se puede rastrear, devuélvelo a quien lo generó para que corrija el origen y lo vuelva a sacar; así no queda del lado de quien recibe una versión retocada a mano y sin nota de origen.
Complétalo a mano. Solo cuando el hueco es chico, el origen está claro y cada cambio puede apuntar a un material o a un registro concreto, y dejando la justificación al lado. No rellenes un blanco adivinando, ni le fabriques un número al End, que está vacío.
Tómalo solo como referencia. Si no se puede confirmar la procedencia, o si todavía no verificaste cómo trata este archivo el sistema que sigue, limítalo al uso de referencia y no le cargues decisiones que pidan una coincidencia exacta.
FAQ
¿Se puede tomar 00:00:00:00 como el cero real del set?
Esa cadena de ceros no la vas a volver a ver. Todo valor ausente sale como cadena vacía: un blanco se lee primero como que no se anotó, salvo en las columnas de texto libre, donde el valor sí está anotado y no se puede entregar porque no es ASCII; el texto original está en el CSV.
¿Por qué una misma take ocupa varias filas?
El ALE se genera fila por fila, por cámara. Un mismo Scene y Take con cuatro cámaras son cuatro filas: revísalas cámara por cámara con Camera, en lugar de contar las takes por el total de filas. Si no se anotó ninguna información de cámara, igual sale una fila.
¿Se puede usar End para el conformado?
Mira primero si tiene valor. El punto de salida anota el valor que se leyó en ese momento en el set: la cadena de grabación lo capta al parar, y el script también puede copiarlo a mano de la pantalla; si se leyó, hay valor, y si no se recorre ninguno de los dos caminos queda vacío; tampoco lo deducimos de la entrada más la duración. Aunque tenga valor, sigue siendo una lectura que hay que cotejar contra el material: contrasta el archivo real con tu propia plantilla de importación, y esta página no promete que al importarlo todo quede en su lugar.
¿Un código de tiempo con punto y coma ya significa drop frame?
No. Solo las filas cuyo TC Mode dice DF usan la forma con punto y coma, y eso es una convención de pantalla de SlateX. Un blanco significa que no hay declaración, no que sea sin drop frame.
Si la hoja dice “coherente”, ¿los dos departamentos ya se cuadran?
No. Esta hoja solo lee nuestra propia página, y “coherente” quiere decir que nuestras reglas no encontraron nada. El reporte de cámara y el reporte de sonido están fuera de lo que lee.
Axiom One LLC — SlateX