Update deformes4D_engine.py
Browse files- deformes4D_engine.py +13 -8
deformes4D_engine.py
CHANGED
|
@@ -125,11 +125,16 @@ class Deformes4DEngine:
|
|
| 125 |
video_resolution: int, use_continuity_director: bool,
|
| 126 |
progress: gr.Progress = gr.Progress()):
|
| 127 |
|
| 128 |
-
|
| 129 |
-
|
| 130 |
-
|
| 131 |
-
|
| 132 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 133 |
# 2. Calcular o número de chunks a podar com base na porcentagem, com mínimo de 4
|
| 134 |
trim_chunks = max(4, int(round(total_chunks_gerados * (trim_percent / 100))))
|
| 135 |
|
|
@@ -139,12 +144,12 @@ class Deformes4DEngine:
|
|
| 139 |
logger.warning(f"A poda ({trim_percent}%) era muito grande. Ajustada para {trim_chunks} chunks para deixar 1 chunk de vídeo.")
|
| 140 |
|
| 141 |
# 3. Definir fatias e alvos com base nos cálculos
|
| 142 |
-
VIDEO_CHUNK_COUNT = total_chunks_gerados - trim_chunks -
|
| 143 |
|
| 144 |
-
HANDLER_CHUNK_INDICES = slice(total_chunks_gerados -
|
| 145 |
ECO_CHUNK_INDICES = slice(VIDEO_CHUNK_COUNT, VIDEO_CHUNK_COUNT + 2)
|
| 146 |
|
| 147 |
-
HANDLER_FRAME_TARGET = ((total_chunks_gerados-
|
| 148 |
FRAMES_TO_GENERATE = (((total_chunks_gerados)-1) * 8) +1
|
| 149 |
DESTINATION_FRAME_TARGET = FRAMES_TO_GENERATE
|
| 150 |
|
|
|
|
| 125 |
video_resolution: int, use_continuity_director: bool,
|
| 126 |
progress: gr.Progress = gr.Progress()):
|
| 127 |
|
| 128 |
+
|
| 129 |
+
# 1. Calcula o número de chunks normalmente
|
| 130 |
+
num_chunks = max(5, int(round(seconds_per_fragment * 3))) # Usando a fórmula simplificada
|
| 131 |
+
|
| 132 |
+
# 2. Verifica se é par e, se for, adiciona 1 para torná-lo ímpar
|
| 133 |
+
if num_chunks % 2 == 0:
|
| 134 |
+
total_chunks_gerados = num_chunks + 2
|
| 135 |
+
else:
|
| 136 |
+
total_chunks_gerados = num_chunks +1
|
| 137 |
+
|
| 138 |
# 2. Calcular o número de chunks a podar com base na porcentagem, com mínimo de 4
|
| 139 |
trim_chunks = max(4, int(round(total_chunks_gerados * (trim_percent / 100))))
|
| 140 |
|
|
|
|
| 144 |
logger.warning(f"A poda ({trim_percent}%) era muito grande. Ajustada para {trim_chunks} chunks para deixar 1 chunk de vídeo.")
|
| 145 |
|
| 146 |
# 3. Definir fatias e alvos com base nos cálculos
|
| 147 |
+
VIDEO_CHUNK_COUNT = total_chunks_gerados - trim_chunks -1
|
| 148 |
|
| 149 |
+
HANDLER_CHUNK_INDICES = slice(total_chunks_gerados - 1, total_chunks_gerados)
|
| 150 |
ECO_CHUNK_INDICES = slice(VIDEO_CHUNK_COUNT, VIDEO_CHUNK_COUNT + 2)
|
| 151 |
|
| 152 |
+
HANDLER_FRAME_TARGET = ((total_chunks_gerados-1) - VIDEO_CHUNK_COUNT) * 8
|
| 153 |
FRAMES_TO_GENERATE = (((total_chunks_gerados)-1) * 8) +1
|
| 154 |
DESTINATION_FRAME_TARGET = FRAMES_TO_GENERATE
|
| 155 |
|