dispatcher+ingest — fixes pour test end-to-end réel
- dispatcher: scp du MP4 source vers le worker avant ffmpeg (les chemins .82 ne sont pas accessibles côté .87) - dispatcher: wrapper shell autour de demo.py pour killer viser dès que le PLY est écrit (setsid + pkill -f frames_dir) - dispatcher: PLY_ok fallback — accepte rc!=0 si le PLY existe et a une taille > 0 - dispatcher: fallback frame_count abaissé à 150 pour l'estimation VRAM - ingest: strip du suffixe timezone (+00:00) des timestamps exiftool QuickTimeUTC=1 Testé bout-en-bout sur GX010001.MP4 (70 frames, 10.6M pts PLY, VRAM peak 9.4 GB, kill viser OK).
This commit is contained in:
@@ -34,7 +34,12 @@ def exif_create_date(path: Path) -> datetime | None:
|
||||
["exiftool", "-s3", "-CreateDate", "-api", "QuickTimeUTC=1", str(path)],
|
||||
stderr=subprocess.DEVNULL, text=True, timeout=10,
|
||||
).strip()
|
||||
return datetime.strptime(out, "%Y:%m:%d %H:%M:%S") if out else None
|
||||
if not out:
|
||||
return None
|
||||
# Strip timezone suffix (+HH:MM or -HH:MM) if present
|
||||
import re as _re
|
||||
out = _re.sub(r'[+-]\d{2}:\d{2}$', '', out).strip()
|
||||
return datetime.strptime(out, "%Y:%m:%d %H:%M:%S")
|
||||
except Exception:
|
||||
return None
|
||||
|
||||
|
||||
Reference in New Issue
Block a user