o
    'j6h9  ã                   @  s’   d dl mZ ddlmZmZ ddlmZ ddlmZ G dd„ dƒZ	ddd„Z
G dd„ dejƒZe ejee
¡ e ejddg¡ e ejd¡ dS )é    )Úannotationsé   )ÚImageÚ	ImageFile)Úi8)ÚSupportsReadc                   @  s>   e Zd Zddd„Zddd	„Zddd„Zddd„Zddd„ZdS )Ú	BitStreamÚfpúSupportsRead[bytes]ÚreturnÚNonec                 C  s   || _ d| _d| _d S )Nr   )r	   ÚbitsÚ	bitbuffer)Úselfr	   © r   úb/var/www/html/chefvision.cloud.itp360.com/venv/lib/python3.10/site-packages/PIL/MpegImagePlugin.pyÚ__init__   s   
zBitStream.__init__Úintc                 C  s   t | j d¡ƒS )Nr   )r   r	   Úread)r   r   r   r   Únext   s   zBitStream.nextr   c                 C  sf   | j |k r%|  ¡ }|dk rd| _ q | jd> | | _|  j d7  _ | j |k s| j| j | ? d|> d @ S )Nr   é   r   )r   r   r   )r   r   Úcr   r   r   Úpeek"   s   

úzBitStream.peekc                 C  sN   | j |k r| jd> t| j d¡ƒ | _|  j d7  _ | j |k s| j | | _ d S )Nr   r   )r   r   r   r	   r   )r   r   r   r   r   Úskip,   s
   

þzBitStream.skipc                 C  s   |   |¡}| j| | _|S )N)r   r   )r   r   Úvr   r   r   r   2   s   
zBitStream.readN)r	   r
   r   r   )r   r   )r   r   r   r   )r   r   r   r   )Ú__name__Ú
__module__Ú__qualname__r   r   r   r   r   r   r   r   r   r      s    




r   ÚprefixÚbytesr   Úboolc                 C  s
   |   d¡S )Ns     ³)Ú
startswith)r   r   r   r   Ú_accept8   s   
r"   c                   @  s   e Zd ZdZdZddd„ZdS )ÚMpegImageFileÚMPEGr   r   c                 C  sR   | j d usJ ‚t| j ƒ}| d¡dkrd}t|ƒ‚d| _| d¡| d¡f| _d S )Né    i³  znot an MPEG fileÚRGBé   )r	   r   r   ÚSyntaxErrorÚ_modeÚ_size)r   ÚsÚmsgr   r   r   Ú_openE   s   
zMpegImageFile._openN)r   r   )r   r   r   ÚformatÚformat_descriptionr-   r   r   r   r   r#   A   s    r#   z.mpgz.mpegz
video/mpegN)r   r   r   r    )Ú
__future__r   Ú r   r   Ú_binaryr   Ú_typingr   r   r"   r#   Úregister_openr.   Úregister_extensionsÚregister_mimer   r   r   r   Ú<module>   s   
	