o
    lQi                     @  s|   d dl mZ d dlZd dlZd dlZd dlZd dlZddlmZ ddl	m
Z
 dd Zdd
dZdd Zedkr<e  dS dS )    )annotationsN   )FinalExportConfig)FinalExportVideoWorkerc                   C  s   t jt jddtjd d S )Nz1%(asctime)s [%(levelname)s] %(name)s: %(message)sz%Y-%m-%d %H:%M:%S)levelformatdatefmtstream)loggingbasicConfigINFOsysstdout r   r   src/final_export_video_main.pysetup_logging   s   
r   returnargparse.Namespacec                  C  sz   t jdd} | jdd d | jdd d | jdd d | jdtd d | jd	td d | jd
dd | jddd |  S )Nz'Final export Stage A video spool worker)descriptionz--worker-id)defaultz
--gpu-typez--run-idz--max-videos)typer   z--polish-threadsz--require-variants
store_true)actionz--require-validation)argparseArgumentParseradd_argumentint
parse_args)parserr   r   r   r      s   r   c                  C  s  t   t } td}| jr| jtjd< | jr| jtjd< | jr&| jtjd< | j	d ur3t
| j	tjd< | jd ur@t
| jtjd< | jrHdtjd< | jrPdtjd	< t }| }|rj|D ]}|d
| q\td |d|j |d|j |d|j t|}t|  d S )Nfinal_export_video_main	WORKER_IDGPU_TYPEFINAL_EXPORT_RUN_IDFINAL_EXPORT_MAX_VIDEOSFINAL_EXPORT_POLISH_THREADStrueFINAL_EXPORT_REQUIRE_VARIANTSFINAL_EXPORT_REQUIRE_VALIDATIONzConfig error: %sr   z%Starting final export video worker %sz  Run ID: %sz  Polish threads: %s)r   r   r
   	getLogger	worker_idosenvirongpu_typerun_id
max_videosstrpolish_threadsrequire_variantsrequire_validationr   from_envvalidate_for_video_stageerrorr   exitinfor   asynciorunstart)argsloggerconfigerrorsr5   workerr   r   r   main"   s8   





r@   __main__)r   r   )
__future__r   r   r8   r
   r*   r   final_export_configr   final_export_workerr   r   r   r@   __name__r   r   r   r   <module>   s    
	!
