Warning, /multimedia/kmplayer/tests/arte.smil is written in an unsupported language. File is not indexed.
0001 <smil xmlns="http://www.w3.org/ns/SMIL" version="3.0" baseProfile="Language"> 0002 <head> 0003 <layout> 0004 <root-layout width="400" height="240"/> 0005 <region background-color="SlateGray" z-index="1"> 0006 <region top="2" left="20" width="27" height="18"> 0007 <region background-color="red"> 0008 <region height="33.3%" background-color="black"/> 0009 <region top="66%" background-color="yellow"/> 0010 </region> 0011 <region id="de"/> 0012 </region> 0013 <region top="2" left="50" width="27" height="18"> 0014 <region background-color="white"> 0015 <region width="33.3%" background-color="red"/> 0016 <region left="66%" background-color="blue"/> 0017 </region> 0018 <region id="fr"/> 0019 </region> 0020 <region id="count" top="2" left="140" width="120" height="18" 0021 background-color="#475360"/> 0022 <region id="previous" top="2" left="280" width="30" height="18" 0023 background-color="#475360" showBackground="whenActive"/> 0024 <region id="index" top="2" left="320" width="20" height="18" 0025 background-color="#475360" showBackground="whenActive"/> 0026 <region id="next" top="2" left="350" width="30" height="18" 0027 background-color="#475360" showBackground="whenActive"/> 0028 <region top="25" left="20" width="360"> 0029 <region id="title" height="20" background-color="#475360"/> 0030 <region id="play" right="0" width="40" height="20" 0031 background-color="white" showBackground="whenActive"/> 0032 <region top="25" background-color="SlateGray"> 0033 <region height="140"> 0034 <region id="description" width="175" 0035 background-color="#475360" fit="scroll"/> 0036 <region id="image" right="0" width="175" 0037 background-color="#475360" fit="meet"/> 0038 </region> 0039 <region id="status" bottom="0" height="40" 0040 background-color="black" fit="scroll"/> 0041 </region> 0042 </region> 0043 </region> 0044 <region id="glass" z-index="0" background-color="black" 0045 backgroundOpacity="80" sensitivity="transparent"> 0046 <region id="video" top="22" left="17" width="366" height="206" 0047 showBackground="whenActive" background-color="black"/> 0048 </region> 0049 </layout> 0050 <state id="mystate" language="http://www.w3.org/TR/1999/REC-xpath-19991116"> 0051 <data xmlns=""> 0052 <message/> 0053 <language/> 0054 <feed> 0055 <index/> 0056 <count/> 0057 <rss/> 0058 </feed> 0059 <page> 0060 <uri/> 0061 <html/> 0062 </page> 0063 <vref> 0064 <uri/> 0065 <videoref/> 0066 </vref> 0067 <vlink> 0068 <uri/> 0069 <video/> 0070 </vlink> 0071 <json> 0072 <uri/> 0073 <value/> 0074 <streamer/> 0075 <url/> 0076 <tmp/> 0077 </json> 0078 <guide> 0079 <html/> 0080 </guide> 0081 <image/> 0082 <swf-player/> 0083 <movie-sd/> 0084 <video-uri/> 0085 </data> 0086 </state> 0087 <paramGroup id="centered-text"> 0088 <param name="fontColor" value="white"/> 0089 <param name="regPoint" value="center"/> 0090 <param name="regAlign" value="center"/> 0091 </paramGroup> 0092 </head> 0093 <body> 0094 <par dur="indefinite"> 0095 <text region="de" src="data:,DE" regPoint="center" regAlign="center"/> 0096 <text region="fr" src="data:,FR" regPoint="center" regAlign="center"/> 0097 0098 <text begin="mystate.stateChange(/data/message)" 0099 region="status" src="data:,{escape-uri(/data/message)}"> 0100 <param name="fontColor" value="grey"/> 0101 <param name="fontSize" value="-2"/> 0102 </text> 0103 0104 <set targetElement="de" attributeName="background-color" to="red" 0105 begin="de.activateEvent" dur="0.1"/> 0106 0107 <setvalue begin="de.activateEvent" ref="language" value="'de'"/> 0108 <setvalue begin="fr.activateEvent" ref="language" value="'fr'"/> 0109 0110 <seq begin="mystate.stateChange(language)"> 0111 <setvalue ref="/data/feed/count" value="-1"/> 0112 <setvalue ref="/data/feed/index" value="0"/> 0113 <setvalue ref="/data/feed/rss" value="'empty'"/> 0114 <setvalue ref="/data/message" value="'Clearing data'"/> 0115 <par dur="indefinite"> 0116 <switch> 0117 <send expr="language = 'de'" 0118 action="http://videos.arte.tv/de/do_delegate/videos/index-3188626,view,rss.xml" method="get" 0119 replace="instance" target="/data/feed/rss"/> 0120 <send action="http://videos.arte.tv/fr/do_delegate/videos/index-3188626,view,rss.xml" method="get" 0121 replace="instance" target="/data/feed/rss"/> 0122 </switch> 0123 <seq begin="mystate.stateChange(/data/feed/rss)"> 0124 <setvalue ref="/data/feed/count" 0125 value="count(/data/feed/rss/channel/item)"/> 0126 <switch> 0127 <setvalue expr="/data/feed/count > 0" 0128 ref="/data/feed/index" value="1"/> 0129 <setvalue ref="/data/message" value="'No items found'"/> 0130 </switch> 0131 </seq> 0132 <seq begin="mystate.stateChange(/data/feed/index)"> 0133 <setvalue ref="/data/page/uri" value="'invalid'"/> 0134 <setvalue ref="/data/page/html" value="'empty'"/> 0135 <setvalue ref="/data/vref/uri" value="'invalid'"/> 0136 <setvalue ref="/data/vref/videoref" value="'empty'"/> 0137 <setvalue ref="/data/vlink/uri" value="'invalid'"/> 0138 <setvalue ref="/data/vlink/video" value="'empty'"/> 0139 <setvalue ref="/data/movie-sd" value="'invalid'"/> 0140 <setvalue ref="/data/json/value" value="'empty'"/> 0141 <setvalue ref="/data/image" value="'invalid'"/> 0142 <setvalue ref="/data/swf-player" value="'invalid'"/> 0143 <setvalue ref="/data/video-uri" value="'invalid'"/> 0144 <seq/> 0145 <par> 0146 <setvalue ref="/data/page/uri" 0147 value="/data/feed/rss/channel/item[number(/data/feed/index)]/link"/> 0148 <switch begin="mystate.stateChange(/data/page/uri)"> 0149 <seq expr="starts-with(/data/page/uri, 'http://')"> 0150 <setvalue ref="/data/message" 0151 value="concat('Get ', /data/page/uri)"/> 0152 <send action="{/data/page/uri}" 0153 method="get" replace="instance" target="/data/page/html"/> 0154 </seq> 0155 <setvalue ref="/data/message" 0156 value="concat('Could not get HTML ', /data/page/uri)"/> 0157 </switch> 0158 <switch begin="mystate.stateChange(/data/page/html)"> 0159 <setvalue ref="/data/json/uri" 0160 expr="count(/data/page/html//div[@arte_vp_url]) > 0" 0161 value="/data/page/html//div[@arte_vp_url][1]/@arte_vp_url"/> 0162 <seq> 0163 <setvalue ref="/data/vref/uri" 0164 value="substring-before(substring-after(tokenize(/data/page/html, 'vars_player.videorefFileUrl *= *"[^"]+"')[1], '"'), '"')"/> 0165 <setvalue ref="/data/swf-player" 0166 value="substring-before(substring-after(tokenize(/data/page/html, 'url_player *= *"[^"]+"')[1], '"'), '"')"/> 0167 </seq> 0168 </switch> 0169 <switch begin="mystate.stateChange(/data/vref/uri)"> 0170 <seq expr="starts-with(/data/vref/uri, 'http://')"> 0171 <setvalue ref="/data/message" 0172 value="concat('Get ', /data/vref/uri)"/> 0173 <send action="{/data/vref/uri}" 0174 method="get" replace="instance" target="/data/vref/videoref"/> 0175 </seq> 0176 <setvalue ref="/data/message" 0177 value="concat('Could not get flash var ', /data/vref/uri)"/> 0178 </switch> 0179 <setvalue begin="mystate.stateChange(/data/vref/videoref)" 0180 ref="/data/vlink/uri" 0181 value="/data/vref/videoref/videos/video[@lang = /data/language]/@ref"/> 0182 <switch begin="mystate.stateChange(/data/vlink/uri)"> 0183 <send expr="starts-with(/data/vlink/uri, 'http://')" 0184 action="{/data/vlink/uri}" 0185 method="get" replace="instance" target="/data/vlink/video"/> 0186 <setvalue ref="/data/message" 0187 value="concat('Could not get ', /data/vlink/uri)"/> 0188 </switch> 0189 <setvalue begin="mystate.stateChange(/data/vlink/video)" 0190 ref="/data/movie-sd" 0191 value="/data/vlink/video/urls/url[@quality = 'hd']"/> 0192 <setvalue begin="mystate.stateChange(/data/vlink/video)" 0193 expr="count(/data/vlink/video/firstThumbnailUrl) > 0" 0194 ref="/data/image" 0195 value="/data/vlink/video/firstThumbnailUrl[1]"/> 0196 <switch begin="mystate.stateChange(/data/movie-sd)"> 0197 <seq expr="starts-with(/data/movie-sd, 'rtmp://')"> 0198 <setvalue ref="/data/message" 0199 value="concat('Found URL ', /data/movie-sd)"/> 0200 <setvalue ref="/data/video-uri" 0201 value="concat(/data/movie-sd, ' swfVfy=1 swfUrl=', /data/swf-player)"/> 0202 </seq> 0203 <seq expr="string-length(/data/movie-sd) > 0"> 0204 <setvalue ref="/data/message" 0205 value="concat('Found URL ', /data/movie-sd)"/> 0206 <setvalue ref="/data/video-uri" value="/data/movie-sd"/> 0207 </seq> 0208 <setvalue ref="/data/message" value="'Video not available'"/> 0209 </switch> 0210 <switch begin="mystate.stateChange(/data/json/uri)"> 0211 <seq expr="starts-with(/data/json/uri, 'http')"> 0212 <setvalue ref="/data/message" 0213 value="concat('Get ', /data/json/uri)"/> 0214 <send action="{/data/json/uri}" 0215 method="get" replace="instance" target="/data/json/value/*[1]"/> 0216 </seq> 0217 <setvalue ref="/data/message" 0218 value="concat('Could not get JSON ', /data/json/uri)"/> 0219 </switch> 0220 0221 <seq begin="mystate.stateChange(/data/json/value/*[1])"> 0222 <setvalue ref="/data/json/tmp" 0223 value="substring-after(/data/json/value, '"programImage"')"/> 0224 <setvalue ref="/data/image" 0225 value="substring-before(substring-after(/data/json/tmp, '"'), '"')"/> 0226 <setvalue ref="/data/json/value" 0227 value="substring-after(/data/json/value, 'RTMP_SQ_1')"/> 0228 <setvalue ref="/data/json/tmp" 0229 value="substring-after(/data/json/value, '"url"')"/> 0230 <setvalue ref="/data/json/url" 0231 value="substring-before(substring-after(/data/json/tmp, '"'), '"')"/> 0232 <setvalue ref="/data/json/tmp" 0233 value="substring-after(/data/json/value, '"streamer"')"/> 0234 <setvalue ref="/data/json/streamer" 0235 value="substring-before(substring-after(/data/json/tmp, '"'), '"')"/> 0236 <switch> 0237 <seq expr="starts-with(/data/json/streamer, 'rtmp://')"> 0238 <setvalue ref="/data/message" 0239 value="concat('Found URL ', /data/json/streamer, 'mp4:', /data/json/url)"/> 0240 <send action="{concat('http://player.arte.tv/v2/index.php?json_url=', /data/json/uri, '&config=arte_tvguide')}" 0241 method="get" replace="instance" target="/data/guide/html"/> 0242 </seq> 0243 <seq expr="string-length(/data/json/streamer) > 0"> 0244 <setvalue ref="/data/message" 0245 value="concat('Found URL ', /data/json/streamer)"/> 0246 <setvalue ref="/data/video-uri" value="/data/json/streamer"/> 0247 </seq> 0248 <setvalue ref="/data/message" value="'Video not available'"/> 0249 </switch> 0250 </seq> 0251 <seq begin="mystate.stateChange(/data/guide/html)"> 0252 <setvalue ref="/data/swf-player" 0253 value="/data/guide/html/head/meta[@property="og:video"]/@content"/> 0254 <switch> 0255 <setvalue ref="/data/swf-player" 0256 expr="string-length(/data/swf-player) > 1" 0257 value="concat(substring-before(/data/swf-player, 'swf'), 'swf')"/> 0258 <setvalue ref="/data/swf-player" 0259 value="http://www.arte.tv/playerv2/jwplayer5/mediaplayer.5.7.1894.swf"/> 0260 </switch> 0261 <setvalue ref="/data/video-uri" 0262 value="concat(/data/json/streamer, 'mp4:', /data/json/url, ' swfVfy=1 swfUrl=', /data/swf-player)"/> 0263 </seq> 0264 0265 <text region="title" 0266 src="data:,{escape-uri(/data/feed/rss/channel/item[number(/data/feed/index)]/title)}" 0267 paramGroup="centered-text"/> 0268 <text region="description" 0269 src="data:,{escape-uri(/data/feed/rss/channel/item[number(/data/feed/index)]/description)}"> 0270 <param name="fontColor" value="white"/> 0271 <param name="fontSize" value="-1"/> 0272 </text> 0273 <par begin="mystate.stateChange(/data/video-uri)" dur="indefinite"> 0274 <text id="playbutton" end="activateEvent" 0275 region="play" src="data:,Play" fontColor="green"/> 0276 <par begin="playbutton.activateEvent"> 0277 <video id="movie" region="video" src="{/data/video-uri}"/> 0278 <set end="movie.end" 0279 target="glass" attribute="z-index" to="2"/> 0280 </par> 0281 </par> 0282 <img begin="mystate.stateChange(/data/image)" 0283 expr="string-length(/data/image) > 0" 0284 src="{/data/image}" 0285 region="image"/> 0286 <text region="index" src="data:,{escape-uri(/data/feed/index)}" 0287 paramGroup="centered-text"/> 0288 <par expr="/data/feed/index > 1"> 0289 <text region="previous" src="data:,%3C%3C" paramGroup="centered-text"/> 0290 <setvalue begin="previous.activateEvent" 0291 ref="/data/feed/index" value="/data/feed/index - 1"/> 0292 </par> 0293 <par expr="/data/feed/index < /data/feed/count"> 0294 <text region="next" src="data:,%3E%3E" 0295 paramGroup="centered-text"/> 0296 <set targetElement="next" attributeName="background-color" 0297 to="SlateGray" begin="de.activateEvent" dur="0.1"/> 0298 <setvalue begin="next.activateEvent" 0299 ref="/data/feed/index" value="/data/feed/index + 1"/> 0300 </par> 0301 </par> 0302 </seq> 0303 0304 <text region="count" begin="mystate.stateChange(/data/feed/count)" 0305 src="data:,{escape-uri(/data/feed/count)}%20items%20found" 0306 paramGroup="centered-text"/> 0307 </par> 0308 </seq> 0309 </par> 0310 </body> 0311 </smil> 0312