
    _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d dl
Z
 ed          ZdZdZedz  ZdZdZd	Zd
 Zd Zd Zd Zd Zedk    r e             dS dS )    )PathNzN/data/video-pipeline/HaTramAudio/project/021-Ngay-Toi-Bi-Gach-Ten-Khoi-Gia-Phazrun-20260721T131911Z-ac5d64d1@bb80e97d9adcb0427ea3828449858445323db228cca38f37cdf0446fffefdd6fz+image/normalized/intro-poster-1920x1080.png@37c64f54f8485a4ea5fca2b0ca63530715cc428f4c27226d3056df3c77a2a150z0http://192.168.40.32:7861/voice/ngoc-huyen-cloneu   Các bạn đang nghe truyện được phát từ Hạ Trâm Audio, chúc các bạn có những giây phút nghe truyện vui vẻ. Hãy ủng hộ chúng tôi bằng cách like video và đăng ký kênh.c                      t           j                            t           j        j                                                                      dd          S )Nz+00:00Z)dtdatetimenowtimezoneutc	isoformatreplace     work/render/build_intro.pyr
   r
      s5    11;;==EEhsSS
Sr   c                 &   t          j                    }t          | d          5 }|                    d          x}r,|                    |           |                    d          x},d d d            n# 1 swxY w Y   |                                S )Nrbi   )hashlibsha256openreadupdate	hexdigest)phfbs       r   shar      s    
>
1Tll +a66+*qxx{{{166+*+ + + + + + + + + + + + + + +	s   AA44A8;A8c                     | j                             dd           |                     | j        dz             }|                    t          j        |dd          dz              |                    |            d S )NTparentsexist_okz.tmpF   )ensure_asciiindent
)parentmkdirwith_suffixsuffix
write_textjsondumpsr   )r   ots      r   atomicr0      s    d+++ammAHVO.L.LAQ\\Z^Zdefty  BC  [D  [D  [D  EI  [I  NJ  NJ  NJ  KL  KT  KT  UV  KW  KW  KW  KW  KWr   c                     t          t          j        dddddddt          |           gddd	          j                                                  S )
Nffprobez-verrorz-show_entrieszformat=durationz-ofzdefault=nw=1:nk=1T)capture_outputtextcheck)float
subprocessrunstrstdoutstrip)r   s    r   durationr=      s    jniW_EVW\]pqtuvqwqwx  IM  SW  ^b  c  c  c  j  p  p  r  r  	s  	s  sr   c            "         t          j        t          dz                                            } | d         t          k    r| d         dk    r| d         dk    sJ t          t          dz            t          k    rt          t                    t          k    sJ t          dz  }t          d	z  }t          d
z  }t          dz  }t          dz  }dt          j	        t          dt          t          t          j        t                                                                                    ddddt          |          t!                      d
}t#          ||           t$          j                            t          dddd                                          }t$          j                            t.          |ddid          }|                    d          }	t$          j                            |d          5 }
t5          |	d          5 }|
j        dk    sJ |
                    d          x}r,|                    |           |
                    d          x},d d d            n# 1 swxY w Y   d d d            n# 1 swxY w Y   |	                    |           |                                j         dk    sJ tC          j"        d d!d"d#d$d%d&d'd(d)d*d+d,t          |          gd-.           t          d/z  }|#                    d0| d1| d2           tC          j"        d d!d"d#d$d%d3d4d5d't          |          d6d7d8d9d+d,t          |          gd-.           tI          |          }|j%        &                    d-d-:           tC          j"        d d!d"d#d$d;d7d't          t                    d't          |          d)|d<d=d>d?d@dAdBdCdDdEdFd+dGdHdIdJdKt          |          gd-.           tI          |          }tO          ||z
            dLk    sJ |(                    dMd-t          |          tI          |          t          |          tI          |          t!                      dN           t#          ||           i dOddPt          j	        dt          ddMdQd-dRt          dSt          t                    dTt          dUt          dVt          |          dWt          |          dXt          |          dYtI          |          dZt          |          d[t          |          d\|d]t          |          t          |          |                                j         |d^d_gd`t!                      da}t#          t          dbz  |           tS          t          j*        dMd-||                                j         |dc         dddef                     d S )gNz.ownership-lock.jsonrun_idownerzorostatusmain_session_pipelinezstory/story-canon.txtzaudio/intro-voice.wavzaudio/intro-silence-2s.wavzaudio/intro-full.wavzoutput/intro/intro.mp4zlog/intro-tts-attempt.json   creating
doc_truyentruez1.0)styledenoisespeed)
schema_version
project_idr?   rB   source_canon_sha256r5   text_sha256request_configoutput_path
created_at)r5   rH   rJ   rI   zContent-Typez!application/x-www-form-urlencodedPOST)dataheadersmethodz	.wav.parti  )timeoutwb   i   r   ffmpegz-hide_bannerz	-loglevelr3   z-yz-flavfiz-izanullsrc=r=48000:cl=monoz-tz2.000z-c:a	pcm_s16leT)r6   zwork/render/intro-concat.txtzfile 'z'
file 'z'
concatz-safe0z-ac1z-ar48000r    z-loopz.6fz-r30z-c:v
h264_nvencz-presetp4z-cq21z-pix_fmtyuv420paacz-b:a192kz	-movflagsz
+faststartg0b/?	completed)rB   verifiedvoice_sha256voice_durationsilence_sha256silence_durationcompleted_atrK   rL   rh   rM   poster_pathposter_sha256
intro_text
voice_pathri   silence_pathsilence_duration_seconds
audio_pathaudio_sha256audio_duration_secondsrP   i  i8     )output_sha256output_size_bytesoutput_duration_seconds
resolutionfpsrQ   zlog/intro-render.jsonrx   )rB   rh   duration_secondsbytesr   F)r$   )+r,   loadsROOT	read_textRUNr   CANONPOSTERPOSTER_HASHnameTEXTr   r   encoder   r:   r
   r0   urllibparse	urlencoderequestRequestENDPOINTr)   urlopenr   rB   r   writer   statst_sizer8   r9   r+   r=   r'   r(   absr   printr-   )lockvoicesilencefullvideoattemptintentrS   reqtemprr   r   r\   vdvideo_dreceipts                    r   mainr      s
   
j$--88::;;4>SVCVCV[_`g[hjp[p[puy  {C  vD  F]  v]  v]  v]  v]  eh  im  nE  iE  eF  eF  HM  eM  eM  RU  V\  R]  R]  _j  Rj  Rj  Rj  Rj##D1M,MGSWXnSnduy  {S  vSot  \`  a}  \}  T[Cjow{  KR  KY  Z^  Ze  Ze  Zg  Zg  Kh  Kh  Kr  Kr  Kt  Kt  O[  fl  uz  F{  F{  JM  NS  JT  JT  be  bg  bg  	h  	h  io  pw  x~  i  i  ilT,uW]^^__ffhhmsm{  nD  nD  EM  SW  ao  pS  `T  \b  nD  nc  ncil$$nS-- (4T?? (a	
366)'QWWQZZZ166)'( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( ( eEJJLL02222.WT$wtTnost{  }C  DO  PS  T[  P\  P\  ]  dh  i  i  i  i++F,=,=>cu>c>cW^>c>c>c,d,d,d.WT$xPWX[\`adekalalmrsvw|  ~E  FL  MX  Y\  ]a  Yb  Yb  c  jn  o  o  o  oTNN5<%%dD%AAA*.RZ[ijuv}  C  DK  LO  PT  UX  Y_  U`  U`  ae  fi  jn  fo  fo  pt  xz  u@  u@  AE  FJ  KQ  R^  _h  im  ns  tx  yC  DM  NT  UZ  [a  bh  it  uA  BE  FK  BL  BL  RM  TX  CY  CY  CY  CY	%GBJ : : : :CJJ`hin`o`o  BE  FM  BN  BN  bj  kr  bs  bs  CF  CH  CH  I  I  J  J  J  KQ  RY  Z`  Ka  Ka  Ka 
F	
1  
F	\$)  
F	HS  
F	+  
F	V`ae  
F	f{  }B  
F	  CP  QT  U[  Q\  Q\  
F	  ]l  mx  
F	  yE  FJ  
F	  KW  X[  \a  Xb  Xb  
F	  cq  ru  v{  r|  r|  
F	  }K  LO  PW  LX  LX  
F	  Ys  t|  }D  tE  tE  
F	  FR  SV  W[  S\  S\  
F	  ]k  lo  pt  lu  lu  
F	  vN  OQ  
F	  R_  `c  di  `j  `j  
F	  {~  D  {E  {E  Z_  Zd  Zd  Zf  Zf  Zn  IP  _c  dh  ^i  pr  @	C	  @	E	  @	E	  
F	  
F	  
F	  G	M	  N	R	  S	j	  N	j	  k	r	  G	s	  G	s	  G	s	  t	y	  z	~	  z	D
  O
Z
  f
j
  ~
E  NS  NX  NX  NZ  NZ  Nb  ls  tC  lD  E
E  E
E  SX  z	Y  z	Y  z	Y  t	Z  t	Z  t	Z  t	Z  t	Zs7   4I9AI"I9"I&	&I9)I&	*I99I= I=__main__)pathlibr   r	   r   r   r,   r8   urllib.parser   urllib.requestwaver   r   r   r   r   r   r   r
   r   r0   r=   r   __name__r   r   r   <module>r      sD         N N N N N N N N N N N N N N N N N N N N N N N N N N N N	T
Z[[`\_  GI  AF  QU  VC  QC  JP  PR  DO  \N  S[  Te	  OS S S S  
W W Ws s sZ Z Z" Zr   