Ë
    ÛÍ:jÍ  ã            	       ó–  — U d dl Z d dlmc mZ d dl mZmZ d dlmZm	Z	 d dl
mZ  e j                  e j                  e   «      Ze j                   e j                   d¬«      e j"                  de j$                  ded	e j&                  fd
„«       «       «       Ze j*                  e j,                   G d„ d«      «       «       Z e«       Zeed<   y)é    N)ÚNULLÚsizeof)Úuint8_tÚ	uintptr_t)ÚmemcpyF)ÚcheckÚopaqueÚdataÚreturnc                 óê   — t        j                  t         j                  |«      }t         j                  5  t        j                  |«       d d d «       t        j                  |«       y # 1 sw Y   ŒxY w©N)ÚcythonÚcastÚp_charÚgilÚopaque_containerÚpopÚlibÚav_free)r	   r
   Únames      ú^/home/mcse/projects/srt_converter/srt-converter-venv/lib/python3.12/site-packages/av/opaque.pyÚkey_freer      sN   € ô !Ÿ+™+¤f§m¡m°TÓ:€DÜ	�‰ñ #Ü×Ñ˜TÔ"÷#ä‡K�K�Õ÷#ð #ús   µA)Á)A2c                   ó†   — e Zd Zd„ Zej
                  dedej                  ej                     fd„«       Z
defd„Zdefd„Zy)ÚOpaqueContainerc                 ó   — i | _         y r   )Ú_objects)Úselfs    r   Ú	__cinit__zOpaqueContainer.__cinit__   s	   € Øˆ�ó    Úvr   c                 óø  — t        j                  t         j                  t        |«      «      }|| j                  |<   t        j                  t
        t        j                  t        t        «      «      «      }|t        k(  rt        d«      ‚t        |t        j                  |«      t        t        «      «       t        j                  |t        t        «      t        t        d«      }|t        k(  rt        d«      ‚|S )Nz!Failed to allocate memory for keyr   zFailed to create AVBufferRef)r   r   ÚlonglongÚidr   Úu8ptrr   Ú	av_mallocr   r   r   ÚMemoryErrorr   ÚaddressÚav_buffer_creater   )r   r    Úkeyr
   Ú
buffer_refs        r   ÚaddzOpaqueContainer.add   s³   € ô  Ÿ™¤V§_¡_´b¸³eÓ<ˆØˆ�‰�cÑä—k‘k¤%¬¯©´v¼iÓ7HÓ)IÓJˆØ”4Š<ÜÐAÓBÐBäˆt”V—^‘^ CÓ(¬&´Ó*;Ô<ô 7:×6JÑ6JØ”&œÓ#¤X¬t°Qó7
ˆ
ð œÒÜÐ<Ó=Ð=àÐr   c                 ó”   — t        j                  t         j                  t           |«      d   }| j                  j                  |«      S ©Nr   )r   r   Úpointerr   r   Úget©r   r   r)   s      r   r/   zOpaqueContainer.get1   s5   € ÜŸ™¤V§^¡^´IÑ%>ÀÓEÀaÑHˆØ�}‰}× Ñ  Ó%Ð%r   c                 ó–   — t        j                  t         j                  t           |«      d   }| j                  j                  |d «      S r-   )r   r   r.   r   r   r   r0   s      r   r   zOpaqueContainer.pop5   s7   € ÜŸ™¤V§^¡^´IÑ%>ÀÓEÀaÑHˆØ�}‰}× Ñ   dÓ+Ð+r   N)Ú__name__Ú
__module__Ú__qualname__r   r   ÚcfuncÚobjectr.   r   ÚAVBufferRefr+   r/   r   © r   r   r   r      sR   „ òð ‡\�\ð�Vð  §¡¨s¯©Ñ ?ò ó ðð*&˜6ó &ð,˜6ô ,r   r   r   )r   Úcython.cimports.libavÚcimportsÚlibavr   r   r   Úcython.cimports.libc.stdintr   r   Úcython.cimports.libc.stringr   Útypedefr.   r$   r5   Ú	exceptvalÚnogilÚp_voidÚvoidr   ÚfinalÚcclassr   r   Ú__annotations__r8   r   r   ú<module>rF      sÀ   ðä ß #Ð #ß ß :Ý .àˆ�‰�v—~‘~ gÑ.Ó/€ð ‡�Ø€×Ñ˜ÔØ‡�ð�V—]‘]ð ¨%ð °F·K±Kò ó ó ó ðð ‡�Ø‡�÷ ,ð  ,ó ó ð ,ñF %4Ó$5Ð �/Ô 5r   