]> git.sesse.net Git - vlc/blobdiff - share/http/requests/status.xml
nl_langinfo is not thread-safe, avoid it
[vlc] / share / http / requests / status.xml
index 202fac7e225db721f084a8fe3603fe9d87ab1aeb..bbc5ea52e407f1fa105c651a27bab381d36e3125 100644 (file)
 
   <!-- input commands -->
   <vlc id="if" param1="command value 'in_play' strcmp 0 =" />
-    <vlc id="rpn" param1="input value dup playlist_add vlc_play" />
+    <vlc id="rpn" param1="input value dup stripslashes playlist_add vlc_play" />
   <vlc id="end" />
   <vlc id="if" param1="command value 'in_enqueue' strcmp 0 =" />
-    <vlc id="rpn" param1="input value dup playlist_add" />
+    <vlc id="rpn" param1="input value dup stripslashes playlist_add" />
   <vlc id="end" />
 
   <!-- playlist commands -->
     <vlc id="rpn" param1="id value vlc_play" />
   <vlc id="end" />
   <vlc id="if" param1="command value 'pl_pause' strcmp 0 =" />
-    <vlc id="rpn" param1="vlc_pause" />
+    <vlc id="if" param1="stream_state value 'stop' strcmp 0 = id value 0 = ! &" />
+      <vlc id="rpn" param1="id value vlc_play"/>
+    <vlc id="else" />
+      <vlc id="rpn" param1="vlc_pause" />
+    <vlc id="end" />
   <vlc id="end" />
   <vlc id="if" param1="command value 'pl_stop' strcmp 0 =" />
     <vlc id="rpn" param1="vlc_stop" />
     <vlc id="rpn" param1="playlist_empty" />
   <vlc id="end" />
   <vlc id="if" param1="command value 'pl_sort' strcmp 0 =" />
-    <vlc id="rpn" param1="" /> <!-- FIXME -->
+    <vlc id="rpn" param1="val value id value playlist_sort" />
   <vlc id="end" />
   <vlc id="if" param1="command value 'pl_random' strcmp 0 =" />
-    <vlc id="rpn" param1="'random' 'VLC_OBJECT_PLAYLIST' vlc_var_get ! 'random' 'VLC_OBJECT_PLAYLIST' vlc_var_set" />
+    <vlc id="rpn" param1="'random' 'VLC_OBJECT_PLAYLIST' vlc_var_get 1 + 2 % 'random' 'VLC_OBJECT_PLAYLIST' vlc_var_set" />
   <vlc id="end" />
   <vlc id="if" param1="command value 'pl_loop' strcmp 0 =" />
-    <vlc id="rpn" param1="'loop' 'VLC_OBJECT_PLAYLIST' vlc_var_get ! 'loop' 'VLC_OBJECT_PLAYLIST' vlc_var_set" />
+    <vlc id="rpn" param1="'loop' 'VLC_OBJECT_PLAYLIST' vlc_var_get 1 + 2 %  'loop' 'VLC_OBJECT_PLAYLIST' vlc_var_set" />
   <vlc id="end" />
   <vlc id="if" param1="command value 'pl_repeat' strcmp 0 =" />
     <vlc id="rpn" param1="'repeat' 'VLC_OBJECT_PLAYLIST' vlc_var_get 1 + 2 % 'repeat' 'VLC_OBJECT_PLAYLIST' vlc_var_set" />
   <vlc id="end" />
+  <vlc id="if" param1="command value 'pl_sd' strcmp 0 =" />
+    <vlc id="if" param1="val value services_discovery_is_loaded" />
+      <vlc id="rpn" param1="val value services_discovery_remove" />
+    <vlc id="else" />
+      <vlc id="rpn" param1="val value services_discovery_add" />
+    <vlc id="end" />
+  <vlc id="end" />
 
   <!-- misc commands -->
   <vlc id="if" param1="command value 'fullscreen' strcmp 0 =" />
-    <vlc id="if" param1="'VLC_OBJECT_VOUT' vlc_obj_exists" />
+    <vlc id="if" param1="'VLC_OBJECT_VOUT' vlc_object_exists" />
       <vlc id="rpn" param1="'fullscreen' 'VLC_OBJECT_VOUT' vlc_var_get ! 'fullscreen' 'VLC_OBJECT_VOUT' vlc_var_set" />
     <vlc id="end" />
   <vlc id="end" />
+  <vlc id="if" param1="command value 'snapshot' strcmp 0 =" />
+    <vlc id="rpn" param1="snapshot" />
+  <vlc id="end" />
   <vlc id="if" param1="command value 'volume' strcmp 0 =" />
     <vlc id="rpn" param1="val value vlc_volume_set" />
   <vlc id="end"/>
   <vlc id="if" param1="command value 'seek' strcmp 0 =" />
     <vlc id="rpn" param1="val value vlc_seek" />
   <vlc id="end"/>
+  <vlc id="if" param1="command value 'key' strcmp 0 =" />
+    <vlc id="rpn" param1="'key-' val value strcat 'VLC_OBJECT_LIBVLC' vlc_var_get key-pressed 'VLC_OBJECT_LIBVLC' vlc_var_set" />
+  <vlc id="end"/>
 
 <vlc id="end" />
 <root>
   <state><vlc id="value" param1="stream_state" /></state>
   <position><vlc id="value" param1="stream_position" /></position>
   <fullscreen><vlc id="if" param1="'VLC_OBJECT_VOUT' vlc_obj_exists" /><vlc id="value" param1="'fullscreen' 'VLC_OBJECT_VOUT' vlc_var_get" /><vlc id="end" /></fullscreen>
-  <loop><vlc id="value" param1="'loop' 'VLC_OBJECT_PLAYLIST' vlc_var_get"/></loop>
+  <random><vlc id="value" param1="'random' 'VLC_OBJECT_PLAYLIST' vlc_var_get" /></random>
+  <loop><vlc id="value" param1="'loop' 'VLC_OBJECT_PLAYLIST' vlc_var_get" /></loop>
   <repeat><vlc id="value" param1="'repeat' 'VLC_OBJECT_PLAYLIST' vlc_var_get" /></repeat>
+  <information>
+    <vlc id="foreach" param1="inf" param2="information" />
+      <category name="<vlc id="value" param1="inf.name value xml_encode" />">
+        <vlc id="foreach" param1="subinf" param2="inf.info" />
+          <info name="<vlc id="value" param1="subinf.name value xml_encode" />"><vlc id="value" param1="subinf.value value xml_encode" /></info>
+        <vlc id="end" />
+      </category>
+    <vlc id="end" />
+          <meta-information>
+                   <title><![CDATA[<vlc id="value" param1="'TITLE' vlc_get_meta xml_encode" />]]></title>
+                   <artist><![CDATA[<vlc id="value" param1="'ARTIST' vlc_get_meta xml_encode" />]]></artist>
+                   <genre><![CDATA[<vlc id="value" param1="'GENRE' vlc_get_meta xml_encode" />]]></genre>
+                   <copyright><![CDATA[<vlc id="value" param1="'COPYRIGHT' vlc_get_meta xml_encode" />]]></copyright>
+                   <album><![CDATA[<vlc id="value" param1="'ALBUM' vlc_get_meta xml_encode" />]]></album>
+                   <track><![CDATA[<vlc id="value" param1="'TRACK_NUMBER' vlc_get_meta xml_encode" />]]></track>
+                   <description><![CDATA[<vlc id="value" param1="'DESCRIPTION' vlc_get_meta xml_encode" />]]></description>
+                   <rating><![CDATA[<vlc id="value" param1="'RATING' vlc_get_meta xml_encode" />]]></rating>
+                   <date><![CDATA[<vlc id="value" param1="'DATE' vlc_get_meta xml_encode" />]]></date>
+                   <url><![CDATA[<vlc id="value" param1="'URL' vlc_get_meta xml_encode" />]]></url>
+                   <language><![CDATA[<vlc id="value" param1="'LANGUAGE' vlc_get_meta xml_encode" />]]></language>
+                   <now_playing><![CDATA[<vlc id="value" param1="'NOW_PLAYING' vlc_get_meta xml_encode" />]]></now_playing>
+                   <publisher><![CDATA[<vlc id="value" param1="'PUBLISHER' vlc_get_meta xml_encode" />]]></publisher>
+                   <encoded_by><![CDATA[<vlc id="value" param1="'ENCODED_BY' vlc_get_meta xml_encode" />]]></encoded_by>
+                   <art_url><![CDATA[<vlc id="value" param1="'ART_URL' vlc_get_meta xml_encode" />]]></art_url>
+                   <track_id><![CDATA[<vlc id="value" param1="'TRACK_ID' vlc_get_meta xml_encode" />]]></track_id>
+                   </meta-information>
+          </information>
+  <stats>
+    <readbytes><vlc id="value" param1="read_bytes" /></readbytes>
+    <inputbitrate><vlc id="value" param1="input_bitrate" /></inputbitrate>
+    <demuxreadbytes><vlc id="value" param1="demux_read_bytes" /></demuxreadbytes>
+    <demuxbitrate><vlc id="value" param1="demux_bitrate" /></demuxbitrate>
+    <decodedvideo><vlc id="value" param1="decoded_video" /></decodedvideo>
+    <displayedpictures><vlc id="value" param1="displayed_pictures" /></displayedpictures>
+    <lostpictures><vlc id="value" param1="lost_pictures" /></lostpictures>
+    <decodedaudio><vlc id="value" param1="decoded_audio" /></decodedaudio>
+    <playedabuffers><vlc id="value" param1="played_abuffers" /></playedabuffers>
+    <lostabuffers><vlc id="value" param1="lost_abuffers" /></lostabuffers>
+    <sentpackets><vlc id="value" param1="sent_packets" /></sentpackets>
+    <sentbytes><vlc id="value" param1="sent_bytes" /></sentbytes>
+    <sendbitrate><vlc id="value" param1="send_bitrate" /></sendbitrate>
+  </stats>
 </root>