
    g                     T    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)FadeOutc                   ,    e Zd ZU dZeed<   dedefdZy)CrossFadeOutzMakes the clip disappear progressively, over ``duration`` seconds.
    Only works when the clip is included in a CompositeVideoClip.
    durationclipreturnc                 
   |j                   t        d      |j                  |j                         }|j                   |j                  _         |j                  j	                  t        | j                         g      |_        |S )zApply the effect to the clip.zAttribute 'duration' not set)r	   
ValueErrormask	with_maskwith_effectsr   )selfr
   s     f/var/www/it7/html/youtubeDownloader/venv/lib/python3.12/site-packages/moviepy/video/fx/CrossFadeOut.pyapplyzCrossFadeOut.apply   se    == ;<<99>>#D!]]		II**GDMM,B+CD	    N)__name__
__module____qualname____doc__float__annotations__r   r    r   r   r   r      s!     O$ 4 r   r   N)	dataclassesr   moviepy.Clipr   moviepy.Effectr   moviepy.video.fx.FadeOutr   r   r   r   r   <module>r       s,    !  ! , 6  r   