Ë
    Eü´j·  ã                   ó`   — d dl mZ d dlmZ d dlmZ d dlmZ d dlm	Z	 e G d„ de«      «       Z
y)	é    )Ú	dataclass)ÚClip)ÚEffect)ÚCompositeVideoClip)ÚCropc                   óZ   — e Zd ZU dZdZeed<   dZeed<   dZ	eed<   dZ
eed<   ded	efd
„Zy)ÚFreezeRegiona!  Freezes one region of the clip while the rest remains animated.

    You can choose one of three methods by providing either `region`,
    `outside_region`, or `mask`.

    Parameters
    ----------

    t
      Time at which to freeze the freezed region.

    region
      A tuple (x1, y1, x2, y2) defining the region of the screen (in pixels)
      which will be freezed. You can provide outside_region or mask instead.

    outside_region
      A tuple (x1, y1, x2, y2) defining the region of the screen (in pixels)
      which will be the only non-freezed region.

    mask
      If not None, will overlay a freezed version of the clip on the current clip,
      with the provided mask. In other words, the "visible" pixels in the mask
      indicate the freezed region in the final picture.

    r   ÚtNÚregionÚoutside_regionÚmaskÚclipÚreturnc                 ó  — | j                   �„| j                   \  }}}}|j                  t        | j                   Ž g«      j                  | j                  ¬«      j                  |j                  «      j                  ||f«      }t        ||g«      S | j                  �†| j                  \  }}}}|j                  t        | j                  Ž g«      j                  ||f«      }	|j                  | j                  ¬«      j                  |j                  «      }t        ||	g«      S | j                  �[|j                  | j                  ¬«      j                  |j                  «      j                  | j                  «      }t        ||g«      S y)zApply the effect to the clip.N)r
   )r   Úwith_effectsr   Úto_ImageClipr
   Úwith_durationÚdurationÚwith_positionr   r   r   Ú	with_mask)
Úselfr   Úx1Úy1Ú_x2Ú_y2ÚfreezeÚx2Úy2Úanimated_regions
             ú[/root/workspace/ytshorts/venv/lib/python3.12/site-packages/moviepy/video/fx/FreezeRegion.pyÚapplyzFreezeRegion.apply*   sY  € à�;‰;Ð"Ø#Ÿ{™{ÑˆB��C˜à×!Ñ!¤4¨¯©Ð#5Ð"6Ó7ß‘ §¡�Ó'ß‘˜tŸ}™}Ó-ß‘  B˜xÓ(ð	 ô & t¨V nÓ5Ð5à× Ñ Ð,Ø!×0Ñ0‰NˆB��B˜Ø"×/Ñ/Ü�t×*Ñ*Ð+Ð,óç‰m˜R ˜HÓ%ð ð ×&Ñ&¨¯©Ð&Ó0×>Ñ>¸t¿}¹}ÓMˆFÜ% v¨Ð&?Ó@Ð@à�Y‰YÐ"à×!Ñ! D§F¡FÐ!Ó+ß‘˜tŸ}™}Ó-ß‘˜4Ÿ9™9Ó%ð ô
 & t¨V nÓ5Ð5ð #ó    )Ú__name__Ú
__module__Ú__qualname__Ú__doc__r
   ÚfloatÚ__annotations__r   Útupler   r   r   r!   © r"   r    r	   r	   	   sC   … ñð4 €A€uƒLØ€FˆEÓØ €N�EÓ Ø€Dˆ$Óð6˜$ð 6 4ô 6r"   r	   N)Údataclassesr   Úmoviepy.Clipr   Úmoviepy.Effectr   Ú,moviepy.video.compositing.CompositeVideoClipr   Úmoviepy.video.fx.Cropr   r	   r*   r"   r    ú<module>r0      s/   ðÝ !å Ý !Ý KÝ &ð ô:6�6ó :6ó ñ:6r"   