<!-- 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>