
    V|hr	                     >    S SK Jr  SSKJrJrJrJr   " S S\5      rg)   )InfoExtractor   )ExtractorErrortraverse_objunified_timestampurl_or_nonec            	       L    \ rS rSrSrSSSSSSS	S
S.SS0S./rSrSS0rS rSr	g)ClipchampIE
   z6https?://(?:www\.)?clipchamp\.com/watch/(?P<id>[\w-]+)z'https://clipchamp.com/watch/gRXZ4ZhdDaUgRXZ4ZhdDaUmp4zUntitled videozAlexander Schwartzi/d20230406zre:^https?://.+\.jpg)idexttitleuploader	timestampupload_date	thumbnailskip_downloadm3u8)url	info_dictparamsz4https://%s.cloudflarestream.com/%s/manifest/video.%sparentOriginzhttps://clipchamp.comc                    U R                  U5      nU R                  X5      nU R                  X25      S   S   S   nUR                  S5      nUS:w  a  [	        SU S35      eUS   nU R                  S	U 3US
5      nU R                  SUSSS9=(       d    SnU R                  U R                  XS4-  UU R                  SSS9n	U	R                  U R                  U R                  XS4-  USU R                  SSS95        UU	SR                  [        USS[        145      5      =(       d    S S.[        USS[        14S[        14S[        14S.5      E$ ) Nprops	pagePropsvideostorage_location	cf_streamz#Unsupported clip storage location ""download_urlz$https://iframe.cloudflarestream.com/zDownloading player iframez+\bcustomer-domain-prefix=["\']([\w-]+)["\']	subdomainF)fatalzcustomer-2ut9yn3y6fta1yxempddash)queryr%   mpd_idr   r   hls)r(   r%   m3u8_id creator)
first_name	last_name)r   formatsr   projectproject_name
created_atthumbnail_url)r   r   r   )	_match_id_download_webpage_search_nextjs_datagetr   _search_regex_extract_mpd_formats_STREAM_URL_TMPL_STREAM_URL_QUERYextend_extract_m3u8_formatsjoinr   strr   r   )
selfr   video_idwebpagedatar    pathiframer$   r0   s
             T/home/james-whalen/.local/lib/python3.13/site-packages/yt_dlp/extractor/clipchamp.py_real_extractClipchampIE._real_extract   s   >>#&((7'':7CKPQXY88$67{* #FGWFXXY!Z[[N#''24&98E`b&&:Fu ' & E)D 	 ++!!Ye$<<h((f , F 	t11!!Yf$==x((u 2 F 	G
 dY@[^a]b4c!demim	
 4#^cU;*->,?@-}=" 		
 		
     N)
__name__
__module____qualname____firstlineno__
_VALID_URL_TESTSr;   r<   rH   __static_attributes__rK   rJ   rG   r
   r
   
   sT    JJ8%,#%0
 #F+ F N')@A 
rJ   r
   N)commonr   utilsr   r   r   r   r
   rK   rJ   rG   <module>rU      s    ! 3
- 3
rJ   