E1 · El docflow leído
5 minEjecuta el bloque "ler o docflow".
Listo cuando: La salida muestra 0.8.0, documentario y slug: egito-antigo con duracao_total: 60.
Clase 4 · 16 min
Dos motores parten de lugares distintos. docflow parte de un tema y entrega un documental corto narrado. refazvideo parte de un video de referencia y entrega tu versión en portugués, con tesis y guion tuyos. En los dos, el archivo que escribe el agente se verifica antes de cualquier generación.
Comenzar la clase
Objetivo: leer el tema de un documental de docflow y validar el guion visual de un refazvideo antes de cualquier generación.
Haz clic en cada etapa. Las marcadas como pagadas quedan fuera de la práctica.
docflow 0.8.0 (commit f1ed75e) y refazvideo 1.4.1 (commit e1f369e), leídos el 19/10/2026.
Versión, estilos y el tema del video modelo. Solo comandos locales.
E=${TMPDIR:-/tmp}/ensaio-fabrica/a4; rm -rf "$E"; mkdir -p "$E"; cd "$E"
git clone -q https://github.com/inematds/docflow.git && cd docflow && git checkout -q f1ed75e
./docflow --version
./docflow estilos | head -4
grep -E "^(slug|estilo|duracao_total|duracao_cena|formato|motor|voz):" temas/egito.yaml0.8.0
docflow 0.8.0 · estilos (use `estilo: <nome>` no tema)
documentario
Documentário narrado com cenas geradas por IA (imagem -> vídeo), ritmo calmo.
slug: egito-antigo
estilo: "realistic cinematic documentary, natural golden light, 35mm film look"
duracao_total: 60
duracao_cena: 10
formato: "16:9"
motor: agnes # flow | agnes | local
voz: nei # voz do inemavox (chatterbox): nei, nei2, bella...El motor y la voz quedan en el tema, no en el código. Atención: voz: nei es la voz clonada del propio Nei, usada con su consentimiento. En tu copia, cámbiala por una voz de banco o por la tuya, con formulario de consentimiento (clase 7). La duración total dividida por la duración de la escena da el número de escenas (60 ÷ 10 = 6).
En el commit f1ed75e, docflow publicar llama a yt-pubx en ensayo (dry-run), pero, si todavía no hay thumb.jpg en la carpeta del video, yt-pubx le pide a Codex la frase y la escena de la portada. El ensayo de publicación sin modelo está en la clase 8.
Antiguo Egipto en un minuto: el video que generó este tema (55 s, 16:9, narración local).
El ejemplo real del repositorio: guion en PT y el guion visual de dos bloques. Cada pantalla entra en un pie (at) que tiene que estar en la narración.
E=${TMPDIR:-/tmp}/ensaio-fabrica/a4; cd "$E"
git clone -q https://github.com/inematds/refazvideo.git && cd refazvideo && git checkout -q e1f369e
cat VERSION
X=exemplos/decisions-jev
python3 ferramentas/validar_visual.py $X/roteiro-pt.json $X/pt-b01.json $X/pt-b02.json; echo "saída: $?"1.4.1 aviso exemplos/decisions-jev/pt-b02.json cena 7: 'no visible damage' aparece 2x, casa com a 1ª OK 1 aviso(s) saída: 0
Un aviso no reprueba: el pie aparece dos veces en la narración y la pantalla entra en la primera. Si no es eso lo que quieres, cambia el pie por un fragmento único.
La misma validación con un pie cambiado ("Faz poucas semanas" en lugar de "Há poucas semanas").
E=${TMPDIR:-/tmp}/ensaio-fabrica/a4; cd "$E/refazvideo"; X=exemplos/decisions-jev
sed '0,/"at": "Há poucas semanas"/s//"at": "Faz poucas semanas"/' $X/pt-b01.json > "$E/pt-b01-errado.json"
python3 ferramentas/validar_visual.py $X/roteiro-pt.json "$E/pt-b01-errado.json" $X/pt-b02.json; echo "saída: $?"ERRO /tmp/ensaio-fabrica/a4/pt-b01-errado.json cena 1: cue não está na fala: 'Faz poucas semanas' aviso exemplos/decisions-jev/pt-b02.json cena 7: 'no visible damage' aparece 2x, casa com a 1ª 1 erro(s) 1 aviso(s) saída: 1
Sin el validador, esa pantalla nunca entraría en el video y solo lo descubrirías después de generar el avatar.
Leídas en el AGENTS.md del commit e1f369e. Valen antes de cualquier producción.
El video de referencia da el tema; la tesis, el guion y la narración son tuyos, en portugués natural. Los términos técnicos quedan como están.
El rostro del presentador original nunca aparece: cada captura se revisa y se cubre con preparar_print.py --cobrir. Derecho de imagen y licencia de material ajeno: curso 2, clase 7.
El avatar solo se genera con el "puede hacerse" del dueño registrado en APROVADO_HEYGEN, con fecha, bloques y minutos. Antes de eso: guion, storyboard y validador.
El motor, tal como está, no acredita la referencia por sí solo: solo si el pedido lo dice. Recomendación del curso: da crédito por defecto, y usa una captura de video de otra persona solo con licencia o uso permitido.
Un tema tuyo y una entrada tuya, verificados.
Ejecuta el bloque "ler o docflow".
Listo cuando: La salida muestra 0.8.0, documentario y slug: egito-antigo con duracao_total: 60.
Ejecuta "validar o roteiro visual" y "deixa errada".
Listo cuando: OK 1 aviso(s) con saída: 0, y luego cue não está na fala: 'Faz poucas semanas', 1 erro(s) 1 aviso(s) y saída: 1.
Copia temas/egito.yaml a temas/meu-tema.yaml en el clon del ensayo y cambia slug, tema, estilo, voz y las duraciones para un documental tuyo de 6 a 8 escenas. No corras roteiro ni gerar.
Listo cuando: cd ${TMPDIR:-/tmp}/ensaio-fabrica/a4/docflow && python3 -c "import yaml; t=yaml.safe_load(open('temas/meu-tema.yaml')); print(t['slug'], t['duracao_total'] // t['duracao_cena'], 'cenas', 'voz própria' if t['voz'] != 'nei' else 'voz do Nei')" → tu slug y un número de 6 a 8 seguido de cenas voz própria.
La explicación aparece después de tu respuesta.
Pregunta 1 de 3
¿Cuáles comandos del docflow llaman a un modelo o a un generador de video?
Pregunta 2 de 3
El validador del refazvideo reprobó con "cue não está na fala". ¿Qué quiere decir eso?
Pregunta 3 de 3
Quieres el documental sin ningún generador de video. ¿Qué camino del docflow?
Elige una alternativa. La explicación aparece después de tu intento.