
    yf                     N    d dl mZ ddlmZmZmZmZmZmZm	Z	m
Z
  G d de      Zy)   )InfoExtractor   )
clean_htmldetermine_extint_or_noneparse_durationparse_resolutiontry_getunified_timestampurl_or_nonec                   p    e Zd ZdZdddddddd	d
ddddddddddddgdddddddddddd d!d"	dgZd# Zy$)%CCMAIEzJhttps?://(?:www\.)?ccma\.cat/(?:[^/]+/)*?(?P<type>video|audio)/(?P<id>\d+)zehttp://www.ccma.cat/tv3/alacarta/lespot-de-la-marato-de-tv3/lespot-de-la-marato-de-tv3/video/5630208/ 7296ca43977c8ea4469e719c609b08715630208mp4u   L'espot de La Marató de TV3z$md5:f12987f320e2f6e988e9908e4fe97765i!X20161108    )idexttitledescription	timestampupload_date	age_limit)urlmd5	info_dictzbhttp://www.ccma.cat/catradio/alacarta/programa/el-consell-de-savis-analitza-el-derbi/audio/943685/ fa3e38f269329a278271276330261425943685mp3z%El Consell de Savis analitza el derbiz$md5:e2a3648145f3241cb9c6b4b624033e5320170512i$!YnoneEsports)r   r   r   r   r   r   vcodec
categoriesz_http://www.ccma.cat/tv3/alacarta/crims/crims-josep-tallada-lespereu-me-capitol-1/video/6031387/ b43c3d3486f430f3032b5b160d80cbc36031387u2   Crims - Josep Talleda, l'"Espereu-me" (capítol 1)z$md5:7cbdafb640da9d0d2c0f62bad1e74e60i$8T^20200224z
mincount:4   Crims)	r   r   r   r   r   r   	subtitlesr   seriesc                 <   | j                  |      j                         \  }}| j                  d|||dd      }g }|d   d   }t        |t              r|D ]  }t        |j                  d            }|s t        |      dk(  r%|j                  | j                  ||d	d
             S|j                  d      }	t        |	      }
|
j                  ||	d       |j                  |
        n|j                  ||dk(  rdnd d       |d   }|d   }|j                  d      xs i }t        |j                  d      d      xs t        |j                  d            }t        |d       }t        |d       }t!        |      }i }|j                  d      xs g }t        |t"              r|g}|D ]_  }|j                  d      }|s|j%                  |j                  d      xs |j                  d      xs dg       j                  d|i       a g }|j                  di       }|rJ|j                  d      }|r7|t        |j                  d            t        |j                  d            dg}d }t        |d        }|r8|j'                  d!      }t)        |      d"k(  r|d#   d$k(  rd%}nt        |d#         }||t+        |j                  d&            |||||||j                  d'      t        |j                  d(            |r|gnd |j                  d)      d*S )+Nz)http://dinamics.ccma.cat/pvideo/media.jspdm)mediaidintformat)queryr/   r   filempddashF)mpd_idfatallabel)r   	format_idaudior"   )r   r$   
informaciotitoldurada
milisegonsi  textc                     | d   d   S )Ntematicar?    xs    7/usr/lib/python3/dist-packages/yt_dlp/extractor/ccma.py<lambda>z&CCMAIE._real_extract.<locals>.<lambda>_   s    :v1F     c                     | d   d   S )Ndata_emissioutcrB   rC   s    rE   rF   z&CCMAIE._real_extract.<locals>.<lambda>a   s    >1B51I rG   	subtitolsisocaimatgesampladaalcada)r   widthheightc                     | d   d   S )N	codi_eticr   rB   rC   s    rE   rF   z&CCMAIE._real_extract.<locals>.<lambda>|   s    !K.2F rG   _r   r   TPr   
descripciotitol_completcapitolprograma)r   r   r   durationr   
thumbnailsr+   formatsr   	alt_titleepisode_numberr%   r,   )_match_valid_urlgroups_download_json
isinstancelistr   getr   extend_extract_mpd_formatsr	   updateappendr   r   r
   r   dict
setdefaultsplitlenr   )selfr   
media_typemedia_idr/   r]   	media_urlformat_
format_urlr8   fr;   r   r=   r[   rA   data_utcr   r+   rK   stsub_urlr\   rN   thumbnail_urlr   rT   codi_etic_ss                               rE   _real_extractzCCMAIE._real_extract9   sA   #44S9@@B
H##7#!J $  'N5)	i&$ "(V)<=
! ,5NN4#<#<"HV5 $= $J KG,$U+%!&  q!"  NN $.'$9&t 
 <(
7#)/Rvzz,7>d.QWQ[Q[\bQcBd:'FG:'IJ%h/		IIk*0b	i&"I 	BffUmG$$FF5M;RVVF^;tRAAGwI B		 
))Ir*#KK.M((Y)?@)'++h*?@ 
 	J(FG	#//#.K;1$q>T) !I +KN ;I %jnn\&BC "$""#8)*..*CD(08*d nnZ0
 	
rG   N)__name__
__module____qualname__
_VALID_URL_TESTSrz   rB   rG   rE   r   r      s    ^Jv14A#%
 t1<A%#$+	
 q1JA#%%

3'FRZ
rG   r   N)commonr   utilsr   r   r   r   r	   r
   r   r   r   rB   rG   rE   <module>r      s%    !	 	 	E
] E
rG   