§
    ÜóÉj1:  ã            	       ó‚  — d dl mZ d dlmZmZ d dlZd dlmZ d dl	m
Z
mZmZ d dlmZ d dlmZ d dlmZmZ d d	lmZmZ d d
lmZ d dlmZ d dlmZ ed         Zdej        defd„Zdedej        fd„Z ej!        ej"         G d„ de
¦  «        ¦   «         ¦   «         Z#ej$        dej%        ej&                 dej        de#fd„¦   «         Z'ej$        ej(         ej)        d¬¦  «        dej*        dej%        e         dej+        fd„¦   «         ¦   «         ¦   «         Z,ej!        ej"         G d„ de
¦  «        ¦   «         ¦   «         Z-dS )é    )ÚIterator)ÚLiteralÚget_argsN)Úlibav)ÚBufferÚ
ByteSourceÚ
bytesource)Ú	err_check)Úopaque_container)Úavrational_to_fractionÚto_avrational)Ú	Py_DECREFÚ	Py_INCREF)Úuint8_t)Úmemcpy)Ú
AVRational)(ÚpaletteÚnew_extradataÚparam_changeÚh263_mb_infoÚreplay_gainÚdisplay_matrixÚ	stereo_3dÚaudio_service_typeÚquality_statsÚfallback_trackÚcpb_propertiesÚskip_samplesÚjp_dual_monoÚstrings_metadataÚsubtitle_positionÚmatroska_block_additionalÚwebvtt_identifierÚwebvtt_settingsÚmetadata_updateÚmpegts_stream_idÚmastering_display_metadataÚ	sphericalÚcontent_light_levelÚa53_ccÚencryption_init_infoÚencryption_infoÚafdÚprftÚicc_profileÚ	dovi_confÚs12m_timecodeÚdynamic_hdr10_plusÚiamf_mix_gain_paramÚiamf_info_paramÚiamf_recon_gain_info_paramÚambient_viewing_environmentÚframe_croppingÚlcevcÚ3d_reference_displaysÚrtcp_srÚdtypeÚreturnc                 óf   — t          t          ¦  «        t          j        t          | ¦  «                 S ©N)r   ÚPktSideDataTÚcythonÚcastÚint©r;   s    ún/home/lighthouse/badge-speaker-benchmark/.benchmark-venv-community/lib64/python3.11/site-packages/av/packet.pyÚpacket_sidedata_type_to_literalrE   ?   s!   € Ý•LÑ!Ô!¥&¤+­c°5Ñ"9Ô"9Ô:Ð:ó    c                 óP   — t          t          ¦  «                             | ¦  «        S r>   )r   r?   ÚindexrC   s    rD   Ú!packet_sidedata_type_from_literalrI   C   s   € Ý•LÑ!Ô!×'Ò'¨Ñ.Ô.Ð.rF   c                   óh  — e Zd Zedededefd„¦   «         Zdej	        de
j        fd„Zd„ Zdded
e
j        fd„Zedefd„¦   «         Zedefd„¦   «         Zedefd„¦   «         Ze
j        de
j        fd„¦   «         Ze
j        de
j        fd„¦   «         Ze
j        de
j        fd„¦   «         Zdefd„ZdS )ÚPacketSideDataÚpacketÚ	data_typer<   c                 óJ   — t          |¦  «        }t          | j        |¦  «        S )a™  create new PacketSideData by copying an existing packet's side data

        :param packet: Source packet
        :type packet: :class:`~av.packet.Packet`
        :param data_type: side data type
        :return: newly created copy of the side data if the side data of the
                 requested type is found in the packet, else an empty object
        :rtype: :class:`~av.packet.PacketSideData`
        )rI   Ú_packet_sidedata_from_packetÚptr)rL   rM   r;   s      rD   Úfrom_packetzPacketSideData.from_packetJ   s#   € õ 2°)Ñ<Ô<ˆÝ+¨F¬J¸Ñ>Ô>Ð>rF   r;   Úsizec                 óF  — || _         t          j        5  |r[t          j        t          j        t          j        |¦  «        ¦  «        | _        | j        t          j        k    rt          d¦  «        ‚nt          j        | _        d d d ¦  «         n# 1 swxY w Y   || _
        d S )NúFailed to allocate memory)r;   r@   ÚnogilrA   Úp_ucharÚlibÚ	av_mallocÚdataÚNULLÚMemoryErrorrR   )Úselfr;   rR   s      rD   Ú	__cinit__zPacketSideData.__cinit__Y   sÈ   € ØˆŒ
ÝŒ\ð 	(ð 	(Øð (Ý"œK­¬½¼ÀdÑ8KÔ8KÑLÔL�”	Ø”9¥¤Ò+Ð+Ý%Ð&AÑBÔBÐBð ,õ #œK�”	ð	(ð 	(ð 	(ñ 	(ô 	(ð 	(ð 	(ð 	(ð 	(ð 	(ð 	(øøøð 	(ð 	(ð 	(ð 	(ð ˆŒ	ˆ	ˆ	s   ”A/BÂBÂBc                 ó¦   — t           j        5  t          j        t          j        | j        ¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S r>   )r@   rU   rW   Úav_freepÚaddressrY   ©r\   s    rD   Ú__dealloc__zPacketSideData.__dealloc__d   sŠ   € ÝŒ\ð 	4ð 	4ÝŒL�œ¨¬	Ñ2Ô2Ñ3Ô3Ð3ð	4ð 	4ð 	4ñ 	4ô 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4ð 	4øøøð 	4ð 	4ð 	4ð 	4ð 	4ð 	4ó   �,AÁA
ÁA
FÚmovec                 óü  — | j         dk    rdS | j        }t          j        5  |spt          j        t          j        t          j        | j         ¦  «        ¦  «        }|t          j        k    rt          d¦  «        ‚t          || j        | j         ¦  «         t          j        |j        | j        || j         ¦  «        }ddd¦  «         n# 1 swxY w Y   t          |¦  «         |rt          j        | _        d| _         dS dS )a  copy or move side data to the specified packet

        :param packet: Target packet
        :type packet: :class:`~av.packet.Packet`
        :param move: True to move the data from this object to the packet,
                     defaults to False.
        :type move: bool
        r   NrT   )rR   rY   r@   rU   rA   rV   rW   rX   rZ   r[   r   Úav_packet_add_side_datarP   r;   r
   )r\   rL   rd   rY   Úress        rD   Ú	to_packetzPacketSideData.to_packeth   s1  € ð Œ9˜Š>ˆ>àˆFàŒyˆåŒ\ð 	Wð 	WØð 3Ý”{¥6¤>µ3´=ÀÄÑ3KÔ3KÑLÔL�Ø�6œ;Ò&Ð&Ý%Ð&AÑBÔBÐBÝ�t˜TœY¨¬	Ñ2Ô2Ð2åÔ-¨f¬j¸$¼*ÀdÈDÌIÑVÔVˆCð	Wð 	Wð 	Wñ 	Wô 	Wð 	Wð 	Wð 	Wð 	Wð 	Wð 	Wøøøð 	Wð 	Wð 	Wð 	Wõ 	�#‰Œˆàð 	ÝœˆDŒIØˆDŒIˆIˆIð	ð 	s   ¡BCÃC
ÃC
c                 ó*   — t          | j        ¦  «        S )zH
        The type of this packet side data.

        :type: str
        )rE   r;   ra   s    rD   rM   zPacketSideData.data_type…   s   € õ /¨t¬zÑ:Ô:Ð:rF   c                 ó4   — t          j        | j        ¦  «        S )zT
        The description of this packet side data type.

        :type: str
        )rW   Úav_packet_side_data_namer;   ra   s    rD   Ú	data_desczPacketSideData.data_descŽ   s   € õ Ô+¨D¬JÑ7Ô7Ð7rF   c                 ó   — | j         S )zQ
        The size in bytes of this packet side data.

        :type: int
        ©rR   ra   s    rD   Ú	data_sizezPacketSideData.data_size˜   s   € ð ŒyÐrF   c                 ó   — | j         S r>   rn   ra   s    rD   Ú_buffer_sizezPacketSideData._buffer_size¢   ó
   € àŒyÐrF   c                 ó   — | j         S r>   )rY   ra   s    rD   Ú_buffer_ptrzPacketSideData._buffer_ptr¦   rr   rF   c                 ó   — dS )NT© ra   s    rD   Ú_buffer_writablezPacketSideData._buffer_writableª   s   € àˆtrF   c                 ó,   — | j         t          j        k    S )zK
        True if this object holds side data.

        :type: bool
        )rY   r@   rZ   ra   s    rD   Ú__bool__zPacketSideData.__bool__®   s   € ð Œy�FœKÒ'Ð'rF   N©F)Ú__name__Ú
__module__Ú__qualname__ÚstaticmethodÚPacketr?   rK   rQ   rW   ÚAVPacketSideDataTyper@   Úsize_tr]   rb   Úbintrh   ÚpropertyÚstrrM   rl   rB   ro   Úcfuncrq   Úp_voidrt   rw   Úboolry   rv   rF   rD   rK   rK   G   s¹  € € € € € ð ð?˜Fð ?¨|ð ?Àð ?ð ?ð ?ñ „\ð?ð	˜sÔ7ð 	¸v¼}ð 	ð 	ð 	ð 	ð4ð 4ð 4ðð  ð ¨f¬kð ð ð ð ð: ð;˜3ð ;ð ;ð ;ñ „Xð;ð ð8˜3ð 8ð 8ð 8ñ „Xð8ð ð˜3ð ð ð ñ „Xðð „\ð˜fœmð ð ð ñ „\ðð „\ð˜Vœ]ð ð ð ñ „\ðð „\ð &¤+ð ð ð ñ „\ðð(˜$ð (ð (ð (ð (ð (ð (rF   rK   rL   c                 ól  — t           j        5  t          j        | j        | j        |¦  «        }|t           j        k    }d d d ¦  «         n# 1 swxY w Y   t          ||r|j        nd¦  «        }t           j        5  |r t          |j
        |j
        |j        ¦  «         d d d ¦  «         n# 1 swxY w Y   |S )Nr   )r@   rU   rW   Úav_packet_side_data_getÚ	side_dataÚside_data_elemsrZ   rK   rR   r   rY   )rL   r;   Úc_ptrÚfoundÚsdatas        rD   rO   rO   ·   s.  € õ 
Œð 2ð 2ÝÔ+ØÔ˜fÔ4°eñ
ô 
ˆð #¥f¤kÒ1ˆð	2ð 2ð 2ñ 2ô 2ð 2ð 2ð 2ð 2ð 2ð 2øøøð 2ð 2ð 2ð 2õ ˜5°Ð"< %¤* *¸1Ñ=Ô=€Eå	Œð 7ð 7Øð 	7Ý�5”:˜uœz¨5¬:Ñ6Ô6Ð6ð7ð 7ð 7ñ 7ô 7ð 7ð 7ð 7ð 7ð 7ð 7øøøð 7ð 7ð 7ð 7ð €Ls#   �1A
Á
AÁAÁ:#B)Â)B-Â0B-F)ÚcheckÚopaquerY   c                 óÂ   — | t           j        k    rNt           j        5  t          t          j        t
          | ¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S d S r>   )r@   rZ   Úgilr   rA   Úobject)r�   rY   s     rD   Ú_python_freer”   Ê   sŸ   € ð •”ÒÐÝŒZð 	3ð 	3Ý•f”k¥&¨&Ñ1Ô1Ñ2Ô2Ð2ð	3ð 	3ð 	3ñ 	3ô 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð 	3øøøð 	3ð 	3ð 	3ð 	3ð 	3ð 	3ð Ðs   �(AÁAÁAc                   óX  — e Zd ZdZd-d„Zd„ Zd-d„Zd„ Zej	        dej
        fd„¦   «         Zej	        dej        fd	„¦   «         Zej	        d
ej        fd„¦   «         Zd„ Zd„ Zed„ ¦   «         Zed„ ¦   «         Zej        defd„¦   «         Zed„ ¦   «         Zej        d„ ¦   «         Zed„ ¦   «         Zej        d„ ¦   «         Zed„ ¦   «         Zej        d„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zed„ ¦   «         Zej        d„ ¦   «         Zed„ ¦   «         Zej        d„ ¦   «         Zed„ ¦   «         Zej        d„ ¦   «         Zed „ ¦   «         Z ed!„ ¦   «         Z!ed"„ ¦   «         Z"ed#„ ¦   «         Z#e#j        d$„ ¦   «         Z#d%e$de%fd&„Z&d%e$de'fd'„Z(d.d)e'd*ej)        fd+„Z*de+e'         fd,„Z,dS )/r   zÂA packet of encoded data within a :class:`~av.format.Stream`.

    This may, or may not include a complete object within a stream.
    :meth:`decode` must be called to extract encoded data.
    Nc                 ó€   — t           j        5  t          j        ¦   «         | _        d d d ¦  «         d S # 1 swxY w Y   d S r>   )r@   rU   rW   Úav_packet_allocrP   )r\   Úinputs     rD   r]   zPacket.__cinit__ß   s~   € ÝŒ\ð 	-ð 	-ÝÔ*Ñ,Ô,ˆDŒHð	-ð 	-ð 	-ñ 	-ô 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-ð 	-øøøð 	-ð 	-ð 	-ð 	-ð 	-ð 	-s   �3³7º7c                 ó¦   — t           j        5  t          j        t          j        | j        ¦  «        ¦  «         d d d ¦  «         d S # 1 swxY w Y   d S r>   )r@   rU   rW   Úav_packet_freer`   rP   ra   s    rD   rb   zPacket.__dealloc__ã   s‹   € ÝŒ\ð 	9ð 	9ÝÔ�vœ~¨d¬hÑ7Ô7Ñ8Ô8Ð8ð	9ð 	9ð 	9ñ 	9ô 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9ð 	9øøøð 	9ð 	9ð 	9ð 	9ð 	9ð 	9rc   c           	      ó�  — d}d }|€d S t          |t          ¦  «        rL|}|rFt          t          j        | j        t          j        t          j        |¦  «        ¦  «        ¦  «         d S d S t          |¦  «        }|j	        }|rÄt          |¦  «         t          j        |j        |t          t          j        t          j        |¦  «        d¦  «        }|t          j        k    rt          |¦  «         t!          d¦  «        ‚|| j        _        |j        | j        _        t          j        t          j        |¦  «        | j        _        d S d S )Nr   zCould not allocate AVBufferRef)Ú
isinstancerB   r
   rW   Úav_new_packetrP   r@   rA   r	   Úlengthr   Úav_buffer_creater”   r†   rZ   r   r[   ÚbufrY   rR   )r\   r˜   rR   Úsourcer    s        rD   Ú__init__zPacket.__init__ç   s7  € ØˆØ!ˆð ˆ=ØˆFå�e�SÑ!Ô!ð 	>ØˆDØð VÝ�#Ô+¨D¬Hµf´kÅ&Ä*ÈdÑ6SÔ6SÑTÔTÑUÔUÐUÐUÐUðVð Võ   Ñ&Ô&ˆFØ”=ˆDØð >å˜&Ñ!Ô!Ð!ÝÔ*Ø”JØÝ Ý”K¥¤¨vÑ6Ô6Øñô �ð �&œ+Ò%Ð%Ý˜fÑ%Ô%Ð%Ý%Ð&FÑGÔGÐGØ"�””Ø &¤
�””Ý &¤­F¬J¸Ñ =Ô =�””��ð>ð >rF   c                 ó®   — | j         r| j         j        nd}d| j        j        › d|› d| j        › d| j        › d| j        j        › dt          | ¦  «        d›d	�S )
Nr   zav.z of #z, dts=z, pts=z; z bytes at 0xÚxú>)	Ú_streamrH   Ú	__class__r{   ÚdtsÚptsrP   rR   Úid©r\   Ústreams     rD   Ú__repr__zPacket.__repr__  s–   € Ø'+¤|Ð:�”Ô#Ð#¸ˆðI�$”.Ô)ð Ið I°ð Ið I¸d¼hð Ið IØ”HðIð IØ $¤¤ðIð IÝ;=¸d¹8¼8ÐHðIð Ið Ið	
rF   r<   c                 ó   — | j         j        S r>   ©rP   rR   ra   s    rD   rq   zPacket._buffer_size  ó   € àŒxŒ}ÐrF   c                 ó   — | j         j        S r>   )rP   rY   ra   s    rD   rt   zPacket._buffer_ptr  r°   rF   Údstc                 ó>  — |j         st          d¦  «        ‚| j        j        j         s|| j        _        d S | j        j        j         |j         k    r| j        j        j        |j        k    rd S t          j        | j        | j        j        |¦  «         || j        _        d S )NzCannot rebase to zero time.)ÚnumÚ
ValueErrorrP   Ú	time_baseÚdenrW   Úav_packet_rescale_ts)r\   r²   s     rD   Ú_rebase_timezPacket._rebase_time  s”   € àŒwð 	<ÝÐ:Ñ;Ô;Ð;àŒxÔ!Ô%ð 	Ø!$ˆDŒHÔØˆFàŒ8ÔÔ! S¤WÒ,Ð,°´Ô1CÔ1GÈ3Ì7Ò1RÐ1RØˆFåÔ  ¤¨4¬8Ô+=¸sÑCÔCÐCØ ˆŒÔÐÐrF   c                 ó¼   — t          |t          ¦  «        st          d¦  «        ‚t          |t	          j        |¦  «        ¦  «         |                      |¦  «         dS )aÂ  Rescale the packet timestamps to a new time base.

        This rescales :attr:`pts`, :attr:`dts`, and :attr:`duration`, then updates
        :attr:`time_base`. If the current time base is unset, the timestamp values
        are unchanged and the new time base is assigned.

        :meth:`~av.container.OutputContainer.mux` already performs this operation
        automatically when necessary.

        Wraps :ffmpeg:`av_packet_rescale_ts`.
        ztime_base must be an AVRationalN)rœ   r   Ú	TypeErrorr   r@   r`   r¹   )r\   r¶   r²   s      rD   Ú
rescale_tszPacket.rescale_ts&  s[   € õ ˜)¥ZÑ0Ô0ð 	?ÝÐ=Ñ>Ô>Ð>õ 	�i¥¤°Ñ!4Ô!4Ñ5Ô5Ð5Ø×Ò˜#ÑÔÐÐÐrF   c                 ó6   — | j                              | ¦  «        S )z™
        Send the packet's data to the decoder and return a list of
        :class:`.AudioFrame`, :class:`.VideoFrame` or :class:`.SubtitleSet`.
        )r¦   Údecodera   s    rD   r¾   zPacket.decode9  s   € ð
 Œ|×"Ò" 4Ñ(Ô(Ð(rF   c                 ó   — | j         j        S r>   )rP   Ústream_indexra   s    rD   rÀ   zPacket.stream_index@  s   € àŒxÔ$Ð$rF   c                 ó   — | j         S )zC
        The :class:`Stream` this packet was demuxed from.
        )r¦   ra   s    rD   r¬   zPacket.streamD  s   € ð
 Œ|ÐrF   r¬   c                 ó@   — || _         |j        j        | j        _        d S r>   )r¦   rP   rH   rÀ   r«   s     rD   r¬   zPacket.streamK  s   € àˆŒØ &¤
Ô 0ˆŒÔÐÐrF   c                 óX   — t          t          j        | j        j        ¦  «        ¦  «        S )z€
        The unit of time (in fractional seconds) in which timestamps are expressed.

        :type: fractions.Fraction
        )r   r@   r`   rP   r¶   ra   s    rD   r¶   zPacket.time_baseP  s!   € õ &¥f¤n°T´XÔ5GÑ&HÔ&HÑIÔIÐIrF   c                 ó^   — t          |t          j        | j        j        ¦  «        ¦  «         d S r>   )r   r@   r`   rP   r¶   )r\   Úvalues     rD   r¶   zPacket.time_baseY  s'   € å�e�Vœ^¨D¬HÔ,>Ñ?Ô?Ñ@Ô@Ð@Ð@Ð@rF   c                 óR   — | j         j        t          j        k    r| j         j        S dS )z¾
        The presentation timestamp in :attr:`time_base` units for this packet.

        This is the time at which the packet should be shown to the user.

        :type: int | None
        N)rP   r©   rW   ÚAV_NOPTS_VALUEra   s    rD   r©   z
Packet.pts]  s(   € ð Œ8Œ<�3Ô-Ò-Ð-Ø”8”<Ðð .Ð-rF   c                 óR   — |€t           j        | j        _        d S || j        _        d S r>   )rW   rÇ   rP   r©   ©r\   Úvs     rD   r©   z
Packet.ptsi  ó$   € àˆ9ÝÔ-ˆDŒHŒLˆLˆLàˆDŒHŒLˆLˆLrF   c                 óR   — | j         j        t          j        k    r| j         j        S dS )zo
        The decoding timestamp in :attr:`time_base` units for this packet.

        :type: int | None
        N)rP   r¨   rW   rÇ   ra   s    rD   r¨   z
Packet.dtsp  s(   € ð Œ8Œ<�3Ô-Ò-Ð-Ø”8”<Ðð .Ð-rF   c                 óR   — |€t           j        | j        _        d S || j        _        d S r>   )rW   rÇ   rP   r¨   rÉ   s     rD   r¨   z
Packet.dtsz  rË   rF   c                 ó>   — | j         j        dk    r| j         j        S dS )z–
        The byte position of this packet within the :class:`.Stream`.

        Returns `None` if it is not known.

        :type: int | None
        éÿÿÿÿN)rP   Úposra   s    rD   rÐ   z
Packet.pos�  s%   € ð Œ8Œ<˜2ÒÐØ”8”<Ðð ÐrF   c                 ó   — | j         j        S )zN
        The size in bytes of this packet's data.

        :type: int
        r¯   ra   s    rD   rR   zPacket.size�  s   € ð ŒxŒ}ÐrF   c                 óR   — | j         j        t          j        k    r| j         j        S dS )zŠ
        The duration in :attr:`time_base` units for this packet.

        Returns `None` if it is not known.

        :type: int
        N)rP   ÚdurationrW   rÇ   ra   s    rD   rÓ   zPacket.duration–  s*   € ð Œ8Ô¥Ô 2Ò2Ð2Ø”8Ô$Ð$ð 3Ð2rF   c                 óR   — |€t           j        | j        _        d S || j        _        d S r>   )rW   rÇ   rP   rÓ   rÉ   s     rD   rÓ   zPacket.duration¢  s*   € àˆ9Ý #Ô 2ˆDŒHÔÐÐà !ˆDŒHÔÐÐrF   c                 óN   — t          | j        j        t          j        z  ¦  «        S r>   )r‡   rP   ÚflagsrW   ÚAV_PKT_FLAG_KEYra   s    rD   Úis_keyframezPacket.is_keyframe©  s   € å�D”H”N¥SÔ%8Ñ8Ñ9Ô9Ð9rF   c                 óŒ   — |r!| j         xj        t          j        z  c_        d S | j         xj        t          j         z  c_        d S r>   )rP   rÖ   rW   r×   rÉ   s     rD   rØ   zPacket.is_keyframe­  s?   € àð 	5ØŒHˆNŒN�cÔ1Ñ1ˆNŒNˆNˆNàŒHˆNŒN¥Ô 3Ð4Ñ4ˆNŒNˆNˆNrF   c                 óN   — t          | j        j        t          j        z  ¦  «        S r>   )r‡   rP   rÖ   rW   ÚAV_PKT_FLAG_CORRUPTra   s    rD   Ú
is_corruptzPacket.is_corrupt´  ó   € å�D”H”N¥SÔ%<Ñ<Ñ=Ô=Ð=rF   c                 óŒ   — |r!| j         xj        t          j        z  c_        d S | j         xj        t          j         z  c_        d S r>   )rP   rÖ   rW   rÛ   rÉ   s     rD   rÜ   zPacket.is_corrupt¸  s?   € àð 	9ØŒHˆNŒN�cÔ5Ñ5ˆNŒNˆNˆNàŒHˆNŒN¥Ô 7Ð8Ñ8ˆNŒNˆNˆNrF   c                 óN   — t          | j        j        t          j        z  ¦  «        S r>   )r‡   rP   rÖ   rW   ÚAV_PKT_FLAG_DISCARDra   s    rD   Ú
is_discardzPacket.is_discard¿  rÝ   rF   c                 óN   — t          | j        j        t          j        z  ¦  «        S r>   )r‡   rP   rÖ   rW   ÚAV_PKT_FLAG_TRUSTEDra   s    rD   Ú
is_trustedzPacket.is_trustedÃ  rÝ   rF   c                 óN   — t          | j        j        t          j        z  ¦  «        S r>   )r‡   rP   rÖ   rW   ÚAV_PKT_FLAG_DISPOSABLEra   s    rD   Úis_disposablezPacket.is_disposableÇ  s   € å�D”H”N¥SÔ%?Ñ?Ñ@Ô@Ð@rF   c                 ó¶   — | j         j        t          j        ur@t	          j        t          j        t          j        | j         j        j        ¦  «        ¦  «        S d S r>   )	rP   Ú
opaque_refr@   rZ   r   ÚgetrA   Úp_charrY   ra   s    rD   r�   zPacket.opaqueË  sJ   € àŒ8Ô¥f¤kÐ1Ð1Ý#Ô'Ý”�FœM¨4¬8Ô+>Ô+CÑDÔDñô ð ð 2Ð1rF   c                 óª   — t          j        t          j        | j        j        ¦  «        ¦  «         |€d S t          j        |¦  «        | j        _        d S r>   )rW   Úav_buffer_unrefr@   r`   rP   ré   r   ÚaddrÉ   s     rD   r�   zPacket.opaqueÒ  sG   € åÔ�FœN¨4¬8Ô+>Ñ?Ô?Ñ@Ô@Ð@àˆ9ØˆFÝ.Ô2°1Ñ5Ô5ˆŒÔÐÐrF   r;   c                 ó�   — t          |¦  «        }t          j        | j        j        | j        j        |¦  «        t          j        k    S )zwTrue if this packet has the specified side data

        :param dtype: side data type
        :type dtype: str
        )rI   rW   r‰   rP   rŠ   r‹   r@   rZ   )r\   r;   Údtype2s      rD   Úhas_sidedatazPacket.has_sidedataÚ  sC   € õ 3°5Ñ9Ô9ˆåÔ'Ø”Ô" D¤HÔ$<¸fñô õ Œ{òð	
rF   c                 ó8   — t                                | |¦  «        S )a€  get a copy of the side data

        :param dtype: side data type (:meth:`~av.packet.PacketSideData.sidedata_types` for the full list of options)
        :type dtype: str
        :return: newly created copy of the side data if the side data of the
                 requested type is found in the packet, else an empty object
        :rtype: :class:`~av.packet.PacketSideData`
        )rK   rQ   )r\   r;   s     rD   Úget_sidedatazPacket.get_sidedataé  s   € õ ×)Ò)¨$°Ñ6Ô6Ð6rF   FÚsidedatard   c                 ó2   — |                      | |¦  «         dS )a
  copy or move side data to this packet

        :param sidedata: Source packet side data
        :type sidedata: :class:`~av.packet.PacketSideData`
        :param move: If True, move the data from `sidedata` object, defaults to False
        :type move: bool
        N)rh   )r\   rô   rd   s      rD   Úset_sidedatazPacket.set_sidedataô  s    € ð 	×Ò˜4 Ñ&Ô&Ð&Ð&Ð&rF   c              #   óš   K  — t          | j        j        ¦  «        D ].}t          | j        | j        j        |         j        ¦  «        V — Œ/dS )zjiterate over side data of this packet.

        :yield: :class:`~av.packet.PacketSideData` object
        N)ÚrangerP   r‹   rO   rŠ   Útype)r\   Úis     rD   Úiter_sidedatazPacket.iter_sidedataþ  sZ   è è € õ �t”xÔ/Ñ0Ô0ð 	Uð 	UˆAÝ.¨t¬x¸¼Ô9KÈAÔ9NÔ9SÑTÔTÐTÐTÐTÐTð	Uð 	UrF   r>   rz   )-r{   r|   r}   Ú__doc__r]   rb   r¢   r­   r@   r…   r�   rq   r†   rt   rW   r   r¹   r¼   r¾   rƒ   rÀ   r¬   ÚsetterÚStreamr¶   r©   r¨   rÐ   rR   rÓ   rØ   rÜ   rá   rä   rç   r�   r„   r‡   rñ   rK   ró   r‚   rö   r   rû   rv   rF   rD   r   r   Ö   s  € € € € € ðð ð-ð -ð -ð -ð9ð 9ð 9ð>ð >ð >ð >ð@
ð 
ð 
ð „\ð˜fœmð ð ð ñ „\ðð „\ð˜Vœ]ð ð ð ñ „\ðð „\ð! ¤ð !ð !ð !ñ „\ð!ðð ð ð&)ð )ð )ð ð%ð %ñ „Xð%ð ðð ñ „Xðð „]ð1˜Vð 1ð 1ð 1ñ „]ð1ð ðJð Jñ „XðJð ÔðAð Añ ÔðAð ð	 ð 	 ñ „Xð	 ð 	„Zðð ñ „Zðð ð ð  ñ „Xð ð 	„Zðð ñ „Zðð ð	 ð 	 ñ „Xð	 ð ðð ñ „Xðð ð	%ð 	%ñ „Xð	%ð „_ð"ð "ñ „_ð"ð ð:ð :ñ „Xð:ð Ôð5ð 5ñ Ôð5ð ð>ð >ñ „Xð>ð Ôð9ð 9ñ Ôð9ð ð>ð >ñ „Xð>ð ð>ð >ñ „Xð>ð ðAð Añ „XðAð ðð ñ „Xðð „]ð6ð 6ñ „]ð6ð
 #ð 
¨$ð 
ð 
ð 
ð 
ð	7 #ð 	7¨.ð 	7ð 	7ð 	7ð 	7ð'ð ' ^ð '¸6¼;ð 'ð 'ð 'ð 'ðU˜x¨Ô7ð Uð Uð Uð Uð Uð UrF   r   ).Úcollections.abcr   Útypingr   r   r@   Úcython.cimportsr   rW   Úcython.cimports.av.bufferr   r   r	   Úcython.cimports.av.errorr
   Úcython.cimports.av.opaquer   Úcython.cimports.av.utilsr   r   Úcython.cimports.cpython.refr   r   Úcython.cimports.libc.stdintr   Úcython.cimports.libc.stringr   Úav.rationalr   r?   r€   rE   rI   ÚfinalÚcclassrK   r…   ÚpointerÚAVPacketrO   rU   Ú	exceptvalr†   Úvoidr”   r   rv   rF   rD   ú<module>r     s±  ðØ $Ð $Ð $Ð $Ð $Ð $Ø $Ð $Ð $Ð $Ð $Ð $Ð $Ð $à €€€Ø (Ð (Ð (Ð (Ð (Ð (Ø DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DÐ DØ .Ð .Ð .Ð .Ð .Ð .Ø 6Ð 6Ð 6Ð 6Ð 6Ð 6Ø JÐ JÐ JÐ JÐ JÐ JÐ JÐ JØ <Ð <Ð <Ð <Ð <Ð <Ð <Ð <Ø /Ð /Ð /Ð /Ð /Ð /Ø .Ð .Ð .Ð .Ð .Ð .à "Ð "Ð "Ð "Ð "Ð "ð
 ð'ô)€ðX;¨3Ô+Cð ;Èð ;ð ;ð ;ð ;ð/¨\ð /¸cÔ>Vð /ð /ð /ð /ð „Ø„ðk(ð k(ð k(ð k(ð k(�Vñ k(ô k(ñ „ñ „ðk(ð\ „ðØŒN˜3œ<Ô(ðØ14Ô1Iðàðð ð ñ „ðð$ „Ø„Ø€Ô˜ÐÑÔð3ØŒMð3à
Œ.˜Ô
!ð3ð „[ð3ð 3ð 3ñ Ôñ „ñ „ð3ð „Ø„ðmUð mUð mUð mUð mUˆVñ mUô mUñ „ñ „ðmUð mUð mUrF   