+
    ¾~jœ  ã                   óÎ   € ^ RI t ^ RIHt ^ RIHt ^ RIHtHtHt ^ RI	H
t
 ]'       d   ^ RIHt ] ! R R4      4       t] ! R	 R
4      4       tR R ltR R ltR R ltR R ltR# )é    N)Ú	dataclass)Úimport_module)ÚTYPE_CHECKINGÚLiteralÚOptional)Úrtc)ÚImagec                   óB   a € ] tR t^t o RtRt Rt ^Kt V 3R ltRt	V t
R# )ÚEncodeOptionsz>Options for encoding rtc.VideoFrame to portable image formats.ÚJPEGNc                óh   <€ V ^8„  d   Qh/ S[ R,          ;R&   S[R,          ;R&   S[R,          ;R&   # )é   ÚformatÚResizeOptionsÚresize_optionsNÚquality)r   ÚPNG)r   r   Úint)r   Ú__classdict__s   "€Úv/Users/mitch_tango/dev/rabbit-r1-livekit/agent/.venv/lib/python3.14/site-packages/livekit/agents/utils/images/image.pyÚ__annotate__ÚEncodeOptions.__annotate__   s:   ø‡ ‚ ñ MÕ"Ñ+ñ	 ñ ˜_Õ-Ñ4ñ ñ 4ZÑò ó    © )Ú__name__Ú
__module__Ú__qualname__Ú__firstlineno__Ú__doc__r   r   r   Ú__annotate_func__Ú__static_attributes__Ú__classdictcell__©r   s   @r   r   r      s'   ø‡ € áHà%+€FØ)à04€NØ)à€GØA÷ ƒ r   r   c                   ó6   a € ] tR t^(t o Rt   V 3R ltRtV tR# )r   zSOptions for resizing rtc.VideoFrame as part of encoding to a portable image format.c                óL   <€ V ^8„  d   Qh/ S[ ;R&   S[ ;R&   S[R,          ;R&   # )r   ÚwidthÚheightÚstrategy)Úcenter_aspect_fitÚcenter_aspect_coverÚscale_aspect_fitÚscale_aspect_coverÚskew)r   r   )r   r   s   "€r   r   ÚResizeOptions.__annotate__(   s6   ø‡ ‚ ñ Jñ	 ñ Kñ ñ ð	õñ ò r   r   N)r   r   r   r   r   r    r!   r"   r#   s   @r   r   r   (   s   ø‡ € á]ð (ð 5ð÷# ƒ r   r   c                ó   € V ^8„  d   QhRR/# )r   ÚreturnNr   )r   s   "r   r   r   B   s   € ÷ ñ Dñ r   c                  óŒ   €  R \        4       9  d   \        R4      \        4       R &   R# R#   \         d    \        R4      Rhi ; i)r	   z	PIL.ImagezŠYou haven't included the 'images' optional dependencies. Please install the 'codecs' extra by running `pip install livekit-agents[images]`N)Úglobalsr   ÚImportErrorr   r   r   Ú
import_pilr4   B   sL   € ðØœ'›)Ô#Ü!.¨{Ó!;ŒG‹IgÓñ $øäô Üð Yó
àð	ðús	   ‚%+ «Ac                óP   € V ^8„  d   QhR\         P                  R\        R\        /# )r   ÚframeÚoptionsr0   )r   Ú
VideoFramer   Úbytes)r   s   "r   r   r   L   s%   € ÷ ñ ”#—.‘.ð ¬=ð ¼Uñ r   c                óH  € \        4        \        V 4      p\        W!4      p\        P                  ! 4       p/ pVP
                  R8X  d   VP                  e   VP                  VR&   VP                  ! WAP
                  3/ VB  VP                  ^ 4       VP                  4       # )zgEncode a rtc.VideoFrame to a portable image format (JPEG or PNG).

See EncodeOptions for more details.
r   r   )
r4   Ú_image_from_frameÚ_resize_imageÚioÚBytesIOr   r   ÚsaveÚseekÚread)r6   r7   ÚimgÚresizedÚbufferÚkwargss   &&    r   ÚencoderF   L   s|   € ô
 „LÜ
˜EÓ
"€CÜ˜CÓ)€GÜZŠZ‹\€FØ€FØ‡~~˜Ô G§O¡OÒ$?Ø#ŸO™OˆˆyÑØ‡L‚LŸ™Ñ2¨6Ò2Ø
‡KK„NØ;‰;‹=Ðr   c                ó<   € V ^8„  d   QhR\         P                  RR/# )r   r6   r0   úImage.Image)r   r8   )r   s   "r   r   r   ]   s   € ÷ ñ œSŸ^™^ð °ñ r   c                 óN  € T pV P                   \        P                  P                  8w  d*   V P	                  \        P                  P                  4      p\
        P                  ! R V P                  V P                  3\        VP                  4      4      P	                  R4      pV# )ÚRGBAÚRGB)Útyper   ÚVideoBufferTyperJ   Úconvertr	   Ú	frombytesr&   r'   r9   Údata)r6   Ú	convertedÚ	rgb_images   &  r   r;   r;   ]   sw   € Ø€IØ‡zz”S×(Ñ(×-Ñ-Ô-Ø—M‘M¤#×"5Ñ"5×":Ñ":Ó;ˆ	ä—’ ¨¯©°e·l±lÐ(CÄUÈ9Ï>É>ÓEZÓ[×cÑcØó€Ið Ðr   c                ó,   € V ^8„  d   QhRRR\         RR/# )r   ÚimagerH   r7   r0   )r   )r   s   "r   r   r   h   s+   € ÷ KIñ KI˜ð KI´ð KIÀ=ñ KIr   c                 ób	  € VP                   f   V # VP                   pVP                  R8X  d(   V P                  VP                  VP                  34      # VP                  R8X  EdX   \
        P                  ! RVP                  VP                  34      pVP                  p\        V P                  VP                  V P                  ,          ,          4      pVP                  VP                  ,          V P                  V P                  ,          8”  dD   VP                  p\        V P                  VP                  V P                  ,          ,          4      pV P                  WE34      p\
        P
                  P                  VVVP                  V,
          ^,          VP                  V,
          ^,          34       V# VP                  R8X  EdX   \
        P                  ! RVP                  VP                  34      p\        V P                  VP                  V P                  ,          ,          4      pVP                  pVP                  VP                  ,          V P                  V P                  ,          8”  dD   \        V P                  VP                  V P                  ,          ,          4      pVP                  pV P                  WE34      p\
        P
                  P                  VVVP                  V,
          ^,          VP                  V,
          ^,          34       V# VP                  R8X  d©   VP                  p\        V P                  VP                  V P                  ,          ,          4      pWRP                  8  dD   VP                  p\        V P                  VP                  V P                  ,          ,          4      pV P                  WE34      # VP                  R8X  d©   VP                  p\        V P                  VP                  V P                  ,          ,          4      pWRP                  8”  dD   VP                  p\        V P                  VP                  V P                  ,          ,          4      pV P                  WE34      # \        RVP                   24      h)Nr-   r)   rK   r*   r,   r+   zUnknown resize strategy: )
r   r(   Úresizer&   r'   r	   Únewr   ÚpasteÚ
ValueError)rT   r7   Úresize_optsÚresultÚ	new_widthÚ
new_heightrC   s   &&     r   r<   r<   h   s–  € Ø×ÑÒ%Øˆà×(Ñ(€KØ×Ñ˜vÔ%Ø|‰|˜[×.Ñ.°×0BÑ0BÐCÓDÐDØ	×	Ñ	Ð!4Õ	4Ü—’˜5 ;×#4Ñ#4°k×6HÑ6HÐ"IÓJˆð  ×%Ñ%ˆ	Ü˜Ÿ™¨×):Ñ):¸U¿[¹[Õ)HÕIÓJˆ
ð ×Ñ˜{×1Ñ1Õ1°E·K±KÀ%Ç,Á,Õ4NÔNØ$×+Ñ+ˆJÜ˜EŸK™K¨;×+=Ñ+=ÀÇÁÕ+LÕMÓNˆIà—,‘, 	Ð6Ó7ˆä‰×ÑØØà×"Ñ" YÕ.°1Õ4Ø×#Ñ# jÕ0°QÕ6ðô	
ð ˆØ	×	Ñ	Ð!6Õ	6Ü—’˜5 ;×#4Ñ#4°k×6HÑ6HÐ"IÓJˆô ˜Ÿ™¨×):Ñ):¸U¿[¹[Õ)HÕIÓJˆ
Ø×%Ñ%ˆ	ð ×Ñ × 1Ñ 1Õ1°E·L±LÀ5Ç;Á;Õ4NÔNÜ˜EŸK™K¨;×+=Ñ+=ÀÇÁÕ+LÕMÓNˆIØ$×+Ñ+ˆJà—,‘, 	Ð6Ó7ˆÜ‰×ÑØØà×"Ñ" YÕ.°1Õ4Ø×#Ñ# jÕ0°QÕ6ðô	
ð ˆØ	×	Ñ	Ð!5Ô	5à×%Ñ%ˆ	Ü˜Ÿ™¨×):Ñ):¸U¿[¹[Õ)HÕIÓJˆ
ð ×*Ñ*Ô*Ø$×+Ñ+ˆJÜ˜EŸK™K¨;×+=Ñ+=ÀÇÁÕ+LÕMÓNˆIà|‰|˜YÐ3Ó4Ð4Ø	×	Ñ	Ð!3Ô	3à×%Ñ%ˆ	Ü˜Ÿ™¨×):Ñ):¸U¿[¹[Õ)HÕIÓJˆ
ð ×*Ñ*Ô*Ø$×+Ñ+ˆJÜ˜EŸK™K¨;×+=Ñ+=ÀÇÁÕ+LÕMÓNˆIà|‰|˜YÐ3Ó4Ð4ä
Ð0°×1EÑ1EÐ0FÐGÓ
HÐHr   )r=   Údataclassesr   Ú	importlibr   Útypingr   r   r   Úlivekitr   ÚPILr	   r   r   r4   rF   r;   r<   r   r   r   Ú<module>rc      sj   ðó 
Ý !Ý #ß 3Ñ 3å çÝð ÷
Bð 
Bó ð
Bð ÷ð ó ðõ2õõ"÷KIr   