o
    g                     @   sn   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 )   )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 )N    )fpbits	bitbuffer)selfr    r   Q/home/ubuntu/cloudmapper/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) r   r   _binaryr   r   r   register_openr#   register_extensionsregister_mimer   r   r   r   <module>   s   $