
    V|h                     6    S SK Jr  SSKJrJr   " S S\5      rg)   )InfoExtractor   )int_or_noneurl_or_nonec                   ,    \ rS rSrSrSSSS./rS rSrg	)
CamModelsIE   z6https?://(?:www\.)?cammodels\.com/cam/(?P<id>[^/?#&]+)z+https://www.cammodels.com/cam/AutumnKnight/T   )urlonly_matching	age_limitc                    U R                  U5      nU R                  SU S3U5      n/ n/ nUS   R                  5        GH  u  pg[        U[        5      (       d  M  UR                  S5      n[        U[        5      (       d  ME  UR                  S5      n	UR                  S5      n
U GHP  n[        U[        5      (       d  M  [        UR                  S5      5      nU(       d  M>  U/n[        UR                  S5      5      nUb  UR                  U S	35        US
R                  U5      [        UR                  S5      5      U[        UR                  S5      5      [        UR                  S5      5      [        UR                  S5      5      U	U
S.	nSU;   a  SUS'   OFSU;   a  UR                  SSS.5        O+US:X  a"  UR                  US   US   US   US   S.5        GM?  UR                  U5        GMS     GM     UUUSUSS.$ ) Nz0https://manifest-server.naiadsystems.com/live/s:z.jsonformats	encodings
videoCodec
audioCodeclocationvideoHeightp-
videoWidth	videoKbps	audioKbpsfps)	r   	format_idwidthheightvbrabrr   vcodecacodecrtmpflvexthlsmp4i)r$   qualityjpegr   r   r   r   )r   r   r   r   Tr
   )idtitle
thumbnailsis_liver   r   )	_match_id_download_jsonitems
isinstancedictgetlistr   r   appendjoinupdate)selfr   user_idmanifestr   r+   r   format_dictr   r    r!   media	media_urlformat_id_listr   fs                   T/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/cammodels.py_real_extractCamModelsIE._real_extract   s   ..%&&>wiuMwX 
&.y&9&?&?&A"Ik400#4Ii.. __\2F __\2F"!%..'		*(=>	 "+$UYY}%=>%"))VHA,7$!$.!9(<)@A$&uyy'=>&uyy'=>&uyy'78$$
 Y&$AeHi'HH$#&  !F*"))#$U8%&wZ&'k)*;	+  q!O # 'Bd $
 	
     N)__name__
__module____qualname____firstlineno__
_VALID_URL_TESTSr@   __static_attributes__rC   rB   r?   r   r      s"    JJ< F@
rB   r   N)commonr   utilsr   r   r   rC   rB   r?   <module>rM      s    ! ,H
- H
rB   