
    \j                     ,   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mZ d dlm	Z	  e	e
                                          j        d         Zedz  Zedz  Zedz  Zedz  Zed	z  Zed
z  ZdZd Zd Zd Zedk    r ej         e                       dS dS )    N)datetimetimezone)Path   zlog/tts-verification.jsonzimage/layout-manifest.jsonzaudio/story-full.wavzimage/layout-1920x1080.pngzoutput/footage/footage.mp4zlog/footage-submission.jsonzhttp://192.168.1.104:8022c                    t          j                    }|                     d          5 t          fdd          D ]}|                    |           	 d d d            n# 1 swxY w Y   |                                S )Nrbc                  .                          d          S )Ni   )read)handles   script/submit-footage.py<lambda>zsha.<locals>.<lambda>   s    &++o">">     r   )hashlibsha256openiterupdate	hexdigest)pathdigestblockr   s      @r   shar      s    ^F	4 !F>>>>DD 	! 	!EMM%    	!! ! ! ! ! ! ! ! ! ! ! ! ! ! ! s   ,A##A'*A'c                     t          j        dddddddt          |           gddd	          }t          |j                                                  S )
Nffprobez-verrorz-show_entrieszformat=durationz-ofzdefault=nw=1:nk=1T)capture_outputtextcheck)
subprocessrunstrfloatstdoutstrip)r   results     r   durationr&      sw    ^YgHY[`buwz{  xA  xA  B  SW  ^b  jn  o  o  oF$$&&'''r   c                  
   t                                           rKt                                          r2t                                          rt                                          st          dt          j                   dS t          j	        t           
                    d                    } t          j	        t          
                    d                    }|                     d          }|                     d          dus[|                    d          dusD|                    d	i                               d          dus|                    d          |k    rt          d
t          j                   dS t                                          rt          dt          j                   dS t          j                            t           dz   d          5 }t          j        |          }d d d            n# 1 swxY w Y   |                    d          dk    s|                    d          durt          dt          j                   dS i dt%          t                    dddddddt%          t                    dt%          t                    dddddd d!d"d#d$d%d&d'd(d)d*d+d"d,dd-d.d/d0i}t          j                            t           d1z   t          j        |                                          d2d3id45          }t          j                            |d$          5 }t          j        |          }d d d            n# 1 swxY w Y   |                    d6          }|r|                    d          d7vrt          d8t          j                   dS dd|||                    d          t           t%          t                              t.                              |t1          t                    t1          t                    t3          t                    t5          j        t8          j                                                  d9}	t>          j         !                    dd:           t>          "                    t          j        |	dd;<          d=z   d           t          t          j        ||                    d          |t%          t>                    d>d?                     d(S )@Nz7Footage blocked: verified TTS/layout inputs are missing)filer   zutf-8)encodingsource_canon_sha256verifiedT	visual_qaz/Footage blocked: TTS/layout canon hash mismatchzSFootage blocked: output already exists; inspect existing job instead of overwritingz/health   )timeoutstatusok
h264_nvencz,Footage blocked: GPU endpoint is not healthylayoutfootage_dirz(/data/video-pipeline/GacMaiAudio/footagepatternz*.mp4	recursiveaudiooutputseedi_  	overwriteFwidthi  heighti8  fps   center_xi  center_yr   center_widthi`  center_heightvideo_encoderpresetp4cq   z/v1/footage-render-huyenan/jobszContent-Typezapplication/jsonPOST)dataheadersmethodjob_id>   queuedrunningz-Footage submission did not return a valid job)versionr+   r*   rK   r/   endpointr7   payloadlayout_sha256audio_sha256expected_duration_secondssubmitted_at)parentsexist_ok   )ensure_asciiindent
)rK   r/   r*   
submission)rX   )#TTSexistsLAYOUTAUDIOLAYOUT_IMAGEprintsysstderrjsonloads	read_textgetOUTPUTurllibrequesturlopenBASEloadr!   Requestdumpsencoderelative_toPROJECTr   r&   r   nowr   utc	isoformat
SUBMISSIONparentmkdir
write_text)
ttsr2   canonresponsehealthrP   rj   jobrK   receipts
             r   mainr   !   s   ::<< v}} ellnn LL_L_LaLa GcjYYYYq
*S]]G]44
5
5CZ(('(::;;FGG)**E
wwz$&&&**Z*@*@*L*LPVPZPZ[fhjPkPkPoPopzP{P{  DH  QH  QH  LR  LV  LV  Wl  Lm  Lm  qv  Lv  Lv?cjQQQQq}} cjmjtuuuuq			y 0"		=	= %8$$% % % % % % % % % % % % % % %zz(t##vzz,'?'?t'K'K<3:NNNNq	#l##	A	 	7	 (	 	U		 &s6{{		
 		
 "5	 		  	 (-b	 	C	 $Q	 )7	 >Md	 		 (0	 8<R	 	G n$$00Z  ''))NDV3W`f %  G 
				4	4 "i!!" " " " " " " " " " " " " " "WWXF SWWX&&.CCC=CJOOOOq%CGGH$5$54f((1122w\**CJJ%-e__ X\22<<>> G D4888$*W5KKKdR]deee	$*#''(2C2C\aqtu  rA  rA  B  B  QV  W  W  W  X  X  X1s$   H  HH9MM!M__main__)r   rd   r   rb   urllib.requestri   r   r   pathlibr   __file__resolverU   rr   r\   r^   r_   r`   rh   rv   rl   r   r&   r   __name__exit r   r   <module>r      s+         



     ' ' ' ' ' ' ' '      
$x..
 
 
"
"
*1
-++	/	/((55	/	/44
"  ( ( (
3 3 3l zCHTTVV r   