
    Pd`j              	          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Z ee	          
                                j        d         Zej        dk    sJ dZdZ ed          Zedz                                                                  Zed	z                                                                  Z ej        ed
z                                            Zd Zd Zd Zd Zd Zedz                      d            eeedz              eeedz             ed         Zded          ded          ded          ded          d	Z eeedz              ededz              ed            dS )!    )PathN   z0047-Vi-Sao-Nuoc-Tieu-Vang-Dam-Khi-Ban-Thieu-Nuocz,http://192.168.40.32:7861/voice/truong-giangz0http://192.168.40.11:20128/v1/images/generationszH/home/hermes/.hermes/skills/image-generation/gen-img-gpt/references/.envznarration/intro.txtznarration/outro.txtzlogs/poster_brief.jsonc                     	 t          j        t          |           d          5 }|                                dk    o|                                dk    cd d d            S # 1 swxY w Y   d S #  Y dS xY w)Nrbr   F)waveopenstr
getnframesgetframerate)fws     scripts/prepare_assets.pywavokr      s    yQQ!,,..*:*Qq~~?O?OPQ?QQQQQQQQQQQQQQQQQQQuuus.   "A. 0A!A. !A%%A. (A%)A. .A3c                     	 |                                  }t          j        d|dd                   \  }}t          |          dk    o'|d d         dk    o|dd         d	k    o|d
k    o|dk    S #  Y dS xY w)Nz>II      i'     s   PNG

is   IENDi   i@  F)
read_bytesstructunpacklen)r   dr   hs       r   pngokr      s    LLNN!v}U1RU84431QCFF5L  =VQrPQrUThMh  =Vmnoqrtotmuw~m~  =V  DE  GK  DK  =V  PQ  SV  PV  6Vuuus   A.A1 1A6c           
         t          |          rd S dt          j                    j        z   }g }d| fdddfD ]6\  }}|                    d| d| d| d	                                           7t          j                            t          d

                    |          d| d                                z   dd| id          }|                    d          }|                    t          j                            |d                                                     t          |          st          d          |                    |           d S )Nz----text)styletu_nhien)speed1)denoisetruez--z(
Content-Disposition: form-data; name="z"

z
    z--
Content-Typezmultipart/form-data; boundary=POSTdataheadersmethodz.tmp.wavi,  timeoutzinvalid WAV)r   uuiduuid4hexappendencodeurllibrequestRequestVOICEjoinwith_suffixwrite_bytesurlopenreadRuntimeErrorreplace)r   outbpartskvreqtmps           r   ttsrD      s.   	#JJvv	$*,,
5T]/>PQ  o  oSQqRWR^R^  `ede  `e  `e  RS  `e  `e  ^_  `e  `e  `e  `l  `l  `n  `n  So  So  So  So^Esxx~A~~~7L7L7N7N'NXf  hL  IJ  hL  hL  XM  U[  \  \  ad  ap  ap  q{  a|  a|  ]`  }@  }L  }L  MS  M[  Mc  Mc  dg  ps  Mc  Mt  Mt  My  My  M{  M{  }|  }|  }|c

4m444Sr$   c                  f   t                                                                           D ]w} d| v rq|                     dd          d                                         rC|                     dd          d                                                             d          c S xt          d          )N=r   z"'zmissing key)ENV	read_text
splitlinessplitstripr;   )lines    r   keyrM      s    ]]__'')) c cTD[[TZZA&&q)//11[C9J9J19M9S9S9U9U9[9[\a9b9b2b2b2bM"""r$   c           
      V   t          |          rd S d| ddd}t          j                            t          t          j        |                                          dt                      z   ddd	          }|	                    d
          }|
                    t          j        t          j        t          j                            |d                    d         d         d                              t          |          st          d          |                    |           d S )Nzcx/gpt-5.5-image	1536x1024b64_json)modelpromptsizeresponse_formatzBearer zapplication/json)Authorizationr%   r&   r'   z.tmp.pngi  r+   r(   r   zinvalid PNG)r   r2   r3   r4   IMGjsondumpsr1   rM   r7   r8   base64	b64decodeloadr9   r;   r<   )rR   r=   bodyrB   rC   s        r   imager]      s   	#JJvv!6Wabbgmgug}g}  B  HL  HR  SW  HX  HX  H_  H_  Ha  Ha  {D  EH  EJ  EJ  {J  Zl  jm  jm  u{g}  h|  h|cf  AD  AP  AP  Q[  A\  A\  }@  ]`  ]l  ]l  ms  m}  ~B  ~G  HN  HV  H^  H^  _b  ko  H^  Hp  Hp  ~q  ~q  rx  ~y  z{  ~|  }G  ~H  mI  mI  ]J  ]J  ]Jc

4m444Sr$   audioT)exist_okzaudio/intro.wavzaudio/outro.wavintrozClassic stick-figure doodle on a light cream whiteboard-like background, simple black lines with slightly imperfect natural hand-drawn character. High-impact mobile video thumbnail, not a slide. dominant_focal causal_metaphor
typographycompositionu   Display exactly one Vietnamese headline and no other readable text: THIẾU NƯỚC, SAO NƯỚC TIỂU VÀNG ĐẬM? Preserve the comma and question mark. Bold hierarchy, selective blue orange and red accents, three purposeful layers, no dead space, 16:9.zimages/intro_poster.pngu&  Classic stick-figure doodle on a light cream whiteboard-like background, simple black hand-drawn lines. Warm celebratory closing composition with large expressive stick figures. Display exactly Bản Năng Cổ Đại and Thanks for watching, no other readable text, no logo or watermark, 16:9.zimages/outro_poster.pngzASSET_GATE PASS) pathlibr   rY   rW   r   urllib.requestr2   r-   r   __file__resolveparentsPnamer5   rV   rG   rH   rK   r`   outroloadsbriefr   r   rD   rM   r]   mkdirbirR   print r$   r   <module>rt      s         2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2$x.."1%QV5g-g-g-g-g49kSptpt  v@  qA  qAlo	))++11331=R;R:]:]:_:_:e:e:g:gEnxnrnxz{  }U  {U  z`  z`  zb  zb  oc  ochm      # # #  
 7  4       U1->+>!?!?!?E!L]J]@^@^@^>  v  `b  cs  `t  v  v  wy  zK  wL  v  v  OQ  R^  O_  v  v  bd  er  bs  v  v  v& fQ(( ) ) )%%  1Y  Z[  \u  Zu  +v  +v  +v      r$   