Ë
    Eü´jÕ  ã                   óh   — d dl mZ d dlmZ d dlZd dlmZ d dlm	Z	 d dl
mZ e G d„ de	«      «       Zy)	é    )Ú	dataclass)ÚUnionN)ÚClip)ÚEffect)Ú	ImageClipc                   óJ   — e Zd ZU dZeeej                  f   ed<   dedefd„Z	y)ÚMasksOraQ  Returns the logical 'or' (maximum pixel color values) between two masks.

    The result has the duration of the clip to which has been applied, if it has any.

    Parameters
    ----------

    other_clip ImageClip or np.ndarray
      Clip used to mask the original clip.

    Examples
    --------

    .. code:: python

        clip = ColorClip(color=(255, 0, 0), size=(1, 1))     # red
        mask = ColorClip(color=(0, 255, 0), size=(1, 1))     # green
        masked_clip = clip.with_effects([vfx.MasksOr(mask)]) # yellow
        masked_clip.get_frame(0)
        [[[255 255   0]]]
    Ú
other_clipÚclipÚreturnc                 ó  ‡ — t        ‰ j                  t        «      r‰ j                  j                  ‰ _        t        ‰ j                  t        j
                  «      r|j                  ˆ fd„«      S |j                  ˆ fd„«      S )zApply the effect to the clip.c                 óD   •— t        j                  | ‰j                  «      S ©N)ÚnpÚmaximumr
   )ÚframeÚselfs    €úV/root/workspace/ytshorts/venv/lib/python3.12/site-packages/moviepy/video/fx/MasksOr.pyú<lambda>zMasksOr.apply.<locals>.<lambda>-   s   ø€ œbŸj™j¨°·±Ó@€ ó    c                 ón   •— t        j                   | |«      ‰j                  j                  |«      «      S r   )r   r   r
   Ú	get_frame)r   Útr   s     €r   r   zMasksOr.apply.<locals>.<lambda>1   s(   ø€ ¤R§Z¡ZÙ˜a“L $§/¡/×";Ñ";¸AÓ">ó&€ r   )Ú
isinstancer
   r   Úimgr   ÚndarrayÚimage_transformÚ	transform)r   r   s   ` r   ÚapplyzMasksOr.apply%   sd   ø€ ô �d—o‘o¤yÔ1Ø"Ÿo™o×1Ñ1ˆDŒOä�d—o‘o¤r§z¡zÔ2Ø×'Ñ'Û@óð ð —>‘>óóð r   N)
Ú__name__Ú
__module__Ú__qualname__Ú__doc__r   r   r   r   Ú__annotations__r   © r   r   r	   r	      s0   … ñð, �d˜BŸJ™JÐ&Ñ'Ó'ð˜$ð  4ô r   r	   )Údataclassesr   Útypingr   Únumpyr   Úmoviepy.Clipr   Úmoviepy.Effectr   Úmoviepy.video.VideoClipr   r	   r%   r   r   ú<module>r,      s2   ðÝ !Ý ã å Ý !Ý -ð ô(ˆfó (ó ñ(r   