]> git.sesse.net Git - vlc/blobdiff - projects/mozilla/test.html
libvlc_media_new_path: create a media from a file path
[vlc] / projects / mozilla / test.html
index 1c2829c1fd35af197c5384f8d7e046860cbed8db..2c614202705481792078ae25028c3d0686ddff6a 100644 (file)
@@ -115,6 +115,7 @@ Insert VideoLAN.VLCPlugin.2
        width="640"\r
        height="480"\r
        toolbar="true"\r
+       text="Waiting for video"\r
        name="vlc">\r
 </EMBED>\r
 </OBJECT>\r
@@ -153,7 +154,7 @@ Insert Slider widget
 <TR><TD>Playlist:\r
 <INPUT type=button value="Prev" onClick='getVLC("vlc").playlist.prev();'>\r
 <INPUT type=button value="Next" onClick='getVLC("vlc").playlist.next();'>\r
-<INPUT type=button value="Clear All" onClick='getVLC("vlc").playlist.clear(); doItemCount();'>\r
+<INPUT type=button value="Clear All" onClick='doPlaylistClearAll();'>\r
     Aspect Ratio:\r
     <SELECT readonly onChange='doAspectRatio(this.value)'>\r
       <OPTION value="default">Default</OPTION>\r
@@ -168,17 +169,6 @@ Insert Slider widget
 <INPUT size=4 value="" id="removeid"><INPUT type=submit value="Delete" onClick="doRemoveItem(document.getElementById('removeid').value);">\r
 </TD>\r
 </TR>\r
-<TR><TD>Messages:\r
-<INPUT type=button value="Messages" onClick='doMessages();'>\r
-Verbosity:\r
-<INPUT size=2 value="1" id="verbosity" onClick="doVerbosity(document.getElementById('verbosity').value);">\r
-<INPUT type=button value=" + " onClick='doVerbosity(1);'>\r
-<INPUT type=button value=" - " onClick='doVerbosity(-1);'>\r
-</TD>\r
-<TD>\r
-<DIV id="message" style="text-align:center">no message</DIV>\r
-</TD>\r
-</TR>\r
 <TR><TD>Audio Channel:\r
   <SELECT readonly onClick='doAudioChannel(this.value);'>\r
     <OPTION value=1>Stereo</OPTION>\r
@@ -196,6 +186,8 @@ Verbosity:
 <INPUT type=button value=" + " onClick='doAudioTrack(1);'>\r
 <SPAN id="trackTextField" style="text-align:center">--</SPAN>\r
 <INPUT type=button value=" - " onClick='doAudioTrack(-1);'>\r
+<INPUT type=button value="current track" onClick='alert(getVLC("vlc").audio.description(vlc.audio.track));'>\r
+<INPUT type=button value="number of track" onClick='alert(getVLC("vlc").audio.count);'>\r
 </TD>\r
 <TD>\r
 <INPUT type=button value="set slider" onClick='doSetSlider();'>\r
@@ -207,9 +199,52 @@ Verbosity:
     <INPUT type=button value=" + " onClick='doSubtitle(1);'>\r
     <SPAN id="spuTextField" style="text-align:center">--</SPAN>\r
     <INPUT type=button value=" - " onClick='doSubtitle(-1);'>\r
+    <INPUT type=button value="current subtitle" onClick='alert(getVLC("vlc").subtitle.description(vlc.subtitle.track));'>\r
+    <INPUT type=button value="number of subtitle" onClick='alert(getVLC("vlc").subtitle.count);'>\r
 </TD>\r
 </TR>\r
 <TR>\r
+<TD>Deinterlacing:\r
+    <INPUT type=button value="BLEND" onClick='getVLC("vlc").video.deinterlace.enable("blend");'>\r
+    <INPUT type=button value="  X  " onClick='getVLC("vlc").video.deinterlace.enable("x");'>\r
+    <INPUT type=button value="Disable" onClick='getVLC("vlc").video.deinterlace.disable();'>\r
+</TD>\r
+</TR>\r
+<TR>\r
+<TD>Marquee video filter:\r
+    <INPUT type=button value="Enable" onClick='getVLC("vlc").video.marquee.enable();'>\r
+    <INPUT type=button value="Disable" onClick='getVLC("vlc").video.marquee.disable();'>\r
+    <INPUT size=4 value="" id="marqueeIntValue">\r
+    <SELECT readonly onClick="doMarqueeOption(this.value,document.getElementById('marqueeIntValue').value);">\r
+        <OPTION value=1>Color</OPTION>\r
+        <OPTION value=2>Opacity</OPTION>\r
+        <OPTION value=3>Position</OPTION>\r
+        <OPTION value=4>Refresh</OPTION>\r
+        <OPTION value=5>Size</OPTION>\r
+        <OPTION value=6>Text</OPTION>\r
+        <OPTION value=7>Timeout</OPTION>\r
+        <OPTION value=8>X</OPTION>\r
+        <OPTION value=9>Y</OPTION>\r
+    </SELECT>\r
+</TD>\r
+</TR>
+<TR>\r
+<TD>Logo video filter:\r
+    <INPUT type=button value="Enable" onClick='getVLC("vlc").video.logo.enable();'>\r
+    <INPUT type=button value="Disable" onClick='getVLC("vlc").video.logo.disable();'>\r
+    <INPUT size=4 value="" id="logoIntValue">\r
+    <SELECT readonly onClick="doLogoOption(this.value,document.getElementById('logoIntValue').value);">\r
+        <OPTION value=1>File</OPTION>\r
+        <OPTION value=2>Position</OPTION>\r
+        <OPTION value=3>Opacity</OPTION>\r
+        <OPTION value=4>Repeat</OPTION>\r
+        <OPTION value=5>Delay</OPTION>\r
+        <OPTION value=6>X</OPTION>\r
+        <OPTION value=7>Y</OPTION>
+    </SELECT>\r
+</TD>\r
+</TR>\r\r
+<TR>\r
 <TD>\r
     <INPUT type=button id="telx" value="Teletext off" onClick='doToggleTeletext();'>\r
     Teletext page:\r
@@ -253,16 +288,6 @@ function doReverse(rate)
         vlc.input.rate = -1.0 * vlc.input.rate;\r
 }\r
 \r
-function doVerbosity(value)\r
-{\r
-    var vlc = getVLC("vlc");\r
-    if( vlc )\r
-    {\r
-        vlc.log.verbosity = vlc.log.verbosity + value;\r
-        document.getElementById("verbosity").value = vlc.log.verbosity;\r
-    }\r
-}\r
-\r
 function doAudioChannel(value)\r
 {\r
     var vlc = getVLC("vlc");\r
@@ -292,8 +317,8 @@ function doSubtitle(value)
     var vlc = getVLC("vlc");\r
     if( vlc )\r
     {\r
-        vlc.video.subtitle = vlc.video.subtitle + value;\r
-        document.getElementById("spuTextField").innerHTML = vlc.video.subtitle;\r
+        vlc.subtitle.track = vlc.subtitle.track + value;\r
+        document.getElementById("spuTextField").innerHTML = vlc.subtitle.track;\r
     }\r
 }\r
 \r
@@ -329,7 +354,7 @@ function doItemCount()
     var vlc = getVLC("vlc");\r
     if( vlc )\r
     {\r
-        var count = vlc.playlist.itemCount;\r
+        var count = vlc.playlist.items.count;\r
         document.getElementById("itemCount").value = " Items " + count + " ";\r
     }\r
 }\r
@@ -338,30 +363,20 @@ function doRemoveItem(item)
 {\r
     var vlc = getVLC("vlc");\r
     if( vlc )\r
-        vlc.playlist.removeItem(item);\r
+        vlc.playlist.items.remove(item);\r
 }\r
 \r
-function doMessages()\r
+function doPlaylistClearAll()\r
 {\r
     var vlc = getVLC("vlc");\r
-\r
     if( vlc )\r
     {\r
-        if( vlc.log.messages.count > 0 )\r
+        vlc.playlist.items.clear();\r
+        while( vlc.playlist.items.count > 0)\r
         {\r
-            // there is one or more messages in the log\r
-            var iter = vlc.log.messages.iterator();\r
-            while( iter.hasNext )\r
-            {\r
-                var msg = iter.next();\r
-                if( msg.severity <= 1 )\r
-                {\r
-                    document.getElementById("message").innerHTML = msg.message;\r
-                }\r
-            }\r
-            // clear the log once finished to avoid clogging\r
-            vlc.log.messages.clear();\r
+            // wait till playlist empties.\r
         }\r
+        doItemCount();\r
     }\r
 }\r
 \r
@@ -377,6 +392,9 @@ function updateVolume(deltaVol)
 \r
 function formatTime(timeVal)\r
 {\r
+    if( typeof timeVal != 'number' )\r
+        return "-:--:--";\r
+\r
     var timeHour = Math.round(timeVal / 1000);\r
     var timeSec = timeHour % 60;\r
     if( timeSec < 10 )\r
@@ -450,23 +468,6 @@ function monitor()
     if( vlc )\r
     {\r
         newState = vlc.input.state;\r
-\r
-        if( vlc.log.messages.count > 0 )\r
-        {\r
-            // there is one or more messages in the log\r
-            var iter = vlc.log.messages.iterator();\r
-            while( iter.hasNext )\r
-            {\r
-                var msg = iter.next();\r
-                if( msg.severity == 1 )\r
-                {\r
-                    alert( msg.message );\r
-                }\r
-                document.getElementById("message").innerHTML = msg.message;\r
-            }\r
-            // clear the log once finished to avoid clogging\r
-            vlc.log.messages.clear();\r
-        }\r
     }\r
 \r
     if( prevState != newState )\r
@@ -532,23 +533,19 @@ function doGo(targetURL)
 \r
     if( vlc )\r
     {\r
-        vlc.playlist.clear();\r
-        while( vlc.playlist.itemCount > 0 )\r
+        vlc.playlist.items.clear();\r
+        while( vlc.playlist.items.count > 0 )\r
         {\r
             // clear() may return before the playlist has actually been cleared\r
             // just wait for it to finish its job\r
         }\r
-        //vlc.playlist.add(targetURL);\r
-        //vlc.playlist.play();\r
-\r
-        var itemId = vlc.playlist.add(targetURL);\r
+        var options = [":rtsp-tcp"];\r
+        var itemId = vlc.playlist.add(targetURL,"",options);\r
+        options = [];\r
         if( itemId != -1 )\r
         {\r
-            // clear the message log and enable error logging\r
-            vlc.log.verbosity = 1;\r
-            vlc.log.messages.clear();\r
             // play MRL\r
-            vlc.playlist.play();\r
+            vlc.playlist.playItem(itemId);\r
             if( monitorTimerId == 0 )\r
             {\r
                 monitor();\r
@@ -556,8 +553,6 @@ function doGo(targetURL)
         }\r
         else\r
         {\r
-            // disable log\r
-            vlc.log.verbosity = -1;\r
             alert("cannot play at the moment !");\r
         }\r
         doItemCount();\r
@@ -567,10 +562,11 @@ function doGo(targetURL)
 function doAdd(targetURL)\r
 {\r
     var vlc = getVLC("vlc");\r
-    var options = new Array(":vout-filter=deinterlace", ":deinterlace-mode=linear");\r
+    var options = [":vout-filter=deinterlace", ":deinterlace-mode=linear"];\r
     if( vlc )\r
     {\r
         vlc.playlist.add(targetURL, "", options);\r
+        options = [];\r
         doItemCount();\r
     }\r
 }\r
@@ -585,18 +581,13 @@ function doPlayOrPause()
             vlc.playlist.togglePause();\r
             monitor();\r
         }\r
-        else if( vlc.playlist.itemCount > 0 )\r
+        else if( vlc.playlist.items.count > 0 )\r
         {\r
-            // clear the message log and enable error logging\r
-            vlc.log.verbosity = 1;\r
-            vlc.log.messages.clear();\r
             vlc.playlist.play();\r
             monitor();\r
         }\r
         else\r
         {\r
-            // disable log\r
-            vlc.log.verbosity = -1;\r
             alert('nothing to play !');\r
         }\r
     }\r
@@ -655,9 +646,10 @@ function onPlay()
 function onEnd()\r
 {\r
     document.getElementById("state").innerHTML = "End...";\r
+    doStop();\r
 }\r
 \r
-var liveFeedText = new Array("Live", "((Live))", "(( Live ))", "((  Live  ))");\r
+var liveFeedText = ["Live", "((Live))", "(( Live ))", "((  Live  ))"];\r
 var liveFeedRoll = 0;\r
 \r
 function onPlaying()\r
@@ -712,10 +704,7 @@ function onPause()
 \r
 function onStop()\r
 {\r
-    // disable logging\r
     var vlc = getVLC("vlc");\r
-    if( vlc )\r
-        vlc.log.verbosity = -1;\r
 \r
     if( inputTracker )\r
     {\r
@@ -736,25 +725,6 @@ function onError()
     var vlc = getVLC("vlc");\r
 \r
     document.getElementById("state").innerHTML = "Error...";\r
-    if( vlc )\r
-    {\r
-        if( vlc.log.messages.count > 0 )\r
-        {\r
-            // there is one or more messages in the log\r
-            var iter = vlc.log.messages.iterator();\r
-            while( iter.hasNext )\r
-            {\r
-                var msg = iter.next();\r
-                if( msg.severity <= 1 )\r
-                {\r
-                    alert( msg.message );\r
-                }\r
-                document.getElementById("message").innerHTML = msg.message;\r
-            }\r
-            // clear the log once finished to avoid clogging\r
-            vlc.log.messages.clear();\r
-        }\r
-    }\r
 }\r
 \r
 function onInputTrackerScrollStart()\r
@@ -784,6 +754,56 @@ function onInputTrackerChange(inputTracker, value, pos)
     }\r
 }\r
 \r
+function doMarqueeOption(option, value)\r
+{\r
+    var vlc = getVLC("vlc");\r
+    val = parseInt(value);\r
+    if( vlc )\r
+    {\r
+        if (option == 1)\r
+            vlc.video.marquee.color = val;\r
+        if (option == 2)\r
+            vlc.video.marquee.opacity = val;\r
+        if (option == 3)\r
+            vlc.video.marquee.position = value;\r
+        if (option == 4)\r
+            vlc.video.marquee.refresh = val;\r
+        if (option == 5)\r
+            vlc.video.marquee.size = val;\r
+        if (option == 6)\r
+            vlc.video.marquee.text = value;\r
+        if (option == 7)\r
+            vlc.video.marquee.timeout = val;\r
+        if (option == 8)\r
+            vlc.video.marquee.x = val;\r
+        if (option == 9)\r
+            vlc.video.marquee.y = val;\r
+    }\r
+}\r
+
+function doLogoOption(option, value)\r
+{\r
+    var vlc = getVLC("vlc");\r
+    if( vlc )\r
+    {\r
+        if (option == 1)\r
+            vlc.video.logo.file(value);\r
+        if (option == 2)\r
+            vlc.video.logo.position = value;\r
+        val = parseInt(value);\r
+        if (option == 3)\r
+            vlc.video.logo.opacity = val;\r
+        if (option == 4)\r
+            vlc.video.logo.repeat = val;\r
+        if (option == 5)\r
+            vlc.video.logo.delay = val;\r
+        if (option == 6)\r
+            vlc.video.logo.x = val;\r
+        if (option == 7)\r
+            vlc.video.logo.y = val;\r
+    }\r
+}\r
+\r
 //-->\r
 </SCRIPT>\r
 </BODY>\r