§
    Í;Ëjæ  ã                   ó  — d Z ddlZddlZddlmZ  eej        d¦  «        rej                             d¬¦  «          eej        d¦  «        rej                             d¬¦  «         ddl	m
Z
mZmZmZmZ d„ Zed	k    r e¦   «          dS dS )
u9  
Helper script to generate a multi-source mashup video in Target/ for empirical testing.
Cáº¯t cÃ¡c Ä‘oáº¡n tá»«:
- Sintel 15m (3 Ä‘oáº¡n x 30s)
- Bunny (1 Ä‘oáº¡n x 20s)
- Tears of Steel 12m (1 Ä‘oáº¡n x 30s)
Sau Ä‘Ã³ ghÃ©p (concatenate) tuáº§n tá»± cáº£ video + audio thÃ nh Target/target_composite_mashup.mp4.
é    N)ÚPathÚreconfigureúutf-8©Úencoding)ÚAPP_ROOTÚDATA_DIRÚ
TARGET_DIRÚTEMP_DIRÚget_ffmpeg_pathc                  ó@  — t          ¦   «         } t          j        dd¬¦  «         t          j        dd¬¦  «         t          dz  }t          dz  }t          dz  }d|ddd	fd
|dddfd|dddfd|dddfd|dddfg}g }t          d¦  «         |D ]Ý\  }}}}	}
t          d|› d�z  }| dd|d|	d t          |¦  «        d!d"d#d$d%d&d'd(d)d*d+d,d-d.t          |¦  «        g}t          j        |t          j	        t          j	        ¬/¦  «        }|j
        d0k    r/t          d1|› d2|j                             d3d4¬5¦  «        › �¦  «        ‚|                     |¦  «         t          d6|
› d7|j        › �¦  «         ŒÞt          d8z  }t!          |d9d3¬:¦  «        5 }|D ]?}|                     d;|                     ¦   «                              ¦   «         › d<�¦  «         Œ@	 d d d ¦  «         n# 1 swxY w Y   t          d=z  }t          d>|j        › d?�¦  «         | dd@dAdBdCd t          |¦  «        dDdEt          |¦  «        g}t          j        |t          j	        t          j	        ¬/¦  «        }|j
        d0k    r,t          dF|j                             d3d4¬5¦  «        › �¦  «        ‚t          dG|› �¦  «         d S )HNT)ÚparentsÚexist_okzref_sintel_15m.mp4zref_tears_of_steel_12m.mp4zsample_ref_bunny.mp4Úsintel_1z00:01:00z00:01:30u   Sintel Ä�oáº¡n 1 (30s)Ú	bunny_midz00:00:05z00:00:25u   Bunny Ä�oáº¡n giá»¯a (20s)Úsintel_2z00:05:30z00:06:00u   Sintel Ä�oáº¡n 2 (30s)Ú	tears_midz00:02:00z00:02:30u   Tears of Steel Ä�oáº¡n (30s)Úsintel_3z00:09:15z00:09:45u   Sintel Ä�oáº¡n 3 (30s)uA   [*] Ä�ang cáº¯t vÃ  chuáº©n hÃ³a 5 phÃ¢n Ä‘oáº¡n video + audio...Úclip_z.mp4z-yz-ssz-toz-iz-vfz[scale=1280:720:force_original_aspect_ratio=decrease,pad=1280:720:(ow-iw)/2:(oh-ih)/2,fps=24z-c:vÚlibx264z-presetÚfastz-crfÚ22z-c:aÚaacz-arÚ44100z-acÚ2)ÚstdoutÚstderrr   u   Lá»—i khi cáº¯t z: r   Úignore)Úerrorsu     [OK] Ä�Ã£ táº¡o z -> zconcat_list.txtÚwr   zfile 'z'
ztarget_composite_mashup.mp4u:   [*] Ä�ang ghÃ©p cÃ¡c Ä‘oáº¡n thÃ nh target hoÃ n chá»‰nh: z...z-fÚconcatz-safeÚ0z-cÚcopyu   Lá»—i khi ghÃ©p mashup: u>   [HOÃ€N Táº¤T] Target composite mashup Ä‘Ã£ sáºµn sÃ ng táº¡i: )r   r   Úmkdirr
   r	   ÚprintÚstrÚ
subprocessÚrunÚPIPEÚ
returncodeÚRuntimeErrorr   ÚdecodeÚappendÚnameÚopenÚwriteÚresolveÚas_posix)ÚffmpegÚ
sintel_srcÚ	tears_srcÚ	bunny_srcÚclipsÚ
clip_pathsr.   ÚsrcÚstartÚendÚdescÚout_clipÚcmdÚresÚconcat_fileÚfÚpÚtarget_mashupÚ
concat_cmds                      ú1C:\Projects\VideoDetection\tools\create_mashup.pyÚbuild_mashuprF      sd  € ÝÑÔ€FÝ„N˜4¨$Ð/Ñ/Ô/Ð/ÝÔ˜T¨DÐ1Ñ1Ô1Ð1åÐ0Ñ0€JÝÐ7Ñ7€IÝÐ1Ñ1€Ið 
�Z ¨ZÐ9QÐRØ	�i ¨ZÐ9UÐVØ	�Z ¨ZÐ9QÐRØ	�i ¨ZÐ9WÐXØ	�Z ¨ZÐ9QÐRð€Eð €JÝ	Ð
MÑNÔNÐNØ',ð >ð >Ñ#ˆˆc�5˜#˜tÝÐ0 dÐ0Ð0Ð0Ñ0ˆà�DØ�5Ø�3Ø•#�c‘(”(ØÐpØ�IØ�vØ�DØ�EØ�7Ø�3Ý�‰MŒMð
ˆõ Œn˜S­¬ÅÄÐQÑQÔQˆØŒ>˜QÒÐÝÐg°$ÐgÐg¸#¼*×:KÒ:KÈGÐ\dÐ:KÑ:eÔ:eÐgÐgÑhÔhÐhØ×Ò˜(Ñ#Ô#Ð#ÝÐ< 4Ð<Ð<¨X¬]Ð<Ð<Ñ=Ô=Ð=Ð=õ Ð.Ñ.€KÝ	ˆk˜3¨Ð	1Ñ	1Ô	1ð :°QØð 	:ð 	:ˆAà�GŠGÐ8˜QŸYšY™[œ[×1Ò1Ñ3Ô3Ð8Ð8Ð8Ñ9Ô9Ð9Ð9ð	:ð:ð :ð :ñ :ô :ð :ð :ð :ð :ð :ð :øøøð :ð :ð :ð :õ
 Ð!>Ñ>€MÝ	Ð
^À}ÔGYÐ
^Ð
^Ð
^Ñ_Ô_Ð_à�ØˆhØ�Ø�c�+ÑÔØˆfÝˆMÑÔð€Jõ Œ.˜­J¬OÅJÄOÐ
TÑ
TÔ
T€CØ
„~˜ÒÐÝÐc°c´j×6GÒ6GÈÐX`Ð6GÑ6aÔ6aÐcÐcÑdÔdÐdå	Ð
ZÈ=Ð
ZÐ
ZÑ[Ô[Ð[Ð[Ð[s   ÆAGÇGÇGÚ__main__)Ú__doc__r'   ÚsysÚpathlibr   Úhasattrr   r   r   Úsrc.core.pathsr   r	   r
   r   r   rF   Ú__name__© ó    rE   ú<module>rP      s÷   ððð ð Ð Ð Ð Ø 
€
€
€
Ø Ð Ð Ð Ð Ð à
€7ˆ3Œ:�}Ñ%Ô%ð -Ø„J×Ò GÐÑ,Ô,Ð,Ø
€7ˆ3Œ:�}Ñ%Ô%ð -Ø„J×Ò GÐÑ,Ô,Ð,à TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ TÐ Tð>\ð >\ð >\ð@ ˆzÒÐØ€L�N„N€N€N€Nð ÐrO   