o
    >eB                     @  sz   d dl mZ ddlmZmZ ddlmZ G dd dZG dd dejZe	ej
e eej
d	d
g eej
d dS )    )annotations   )Image	ImageFile)i8c                   @  s4   e Zd Zdd Zdd Zdd Zdd Zd	d
 ZdS )	BitStreamc                 C  s   || _ d| _d| _d S )Nr   )fpbits	bitbuffer)selfr    r   T/var/www/html/humari/django-venv/lib/python3.10/site-packages/PIL/MpegImagePlugin.py__init__   s   
zBitStream.__init__c                 C  s   t | jdS )Nr   )r   r   read)r   r   r   r   next   s   zBitStream.nextc                 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   1   s   
zBitStream.readN)__name__
__module____qualname__r   r   r   r   r   r   r   r   r   r      s    
r   c                   @  s   e Zd ZdZdZdd ZdS )MpegImageFileMPEGc                 C  sD   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   _open@   s   
zMpegImageFile._openN)r   r   r   formatformat_descriptionr#   r   r   r   r   r   <   s    r   z.mpgz.mpegz
video/mpegN)
__future__r    r   r   _binaryr   r   r   register_openr$   register_extensionsregister_mimer   r   r   r   <module>   s   $