]> granicus.if.org Git - handbrake/commitdiff
WinGui:
authorsr55 <sr55.hb@outlook.com>
Sun, 4 Jan 2009 22:01:06 +0000 (22:01 +0000)
committersr55 <sr55.hb@outlook.com>
Sun, 4 Jan 2009 22:01:06 +0000 (22:01 +0000)
- Updated Experimental Preview window to use QuickTime. Plays back video, Encodes samples just fine.

git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2058 b64f7644-9d1e-0410-96f1-a4d463321fa5

win/C#/Experimental/frmPreviewAX.Designer.cs
win/C#/Experimental/frmPreviewAX.cs
win/C#/Experimental/frmPreviewAX.resx

index 534abaaebe0fb605025ac3df7d11c9f4e8b544e1..775e5ebebc4d22b3198594466a6147bb84c08403 100644 (file)
         {\r
             System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(frmPreviewAX));\r
             this.toolBar = new System.Windows.Forms.ToolStrip();\r
+            this.lbl_preview = new System.Windows.Forms.ToolStripLabel();\r
+            this.cb_preview = new System.Windows.Forms.ToolStripComboBox();\r
+            this.toolStripLabel2 = new System.Windows.Forms.ToolStripLabel();\r
+            this.cb_duration = new System.Windows.Forms.ToolStripComboBox();\r
             this.btn_encode = new System.Windows.Forms.ToolStripButton();\r
             this.toolStripSeparator1 = new System.Windows.Forms.ToolStripSeparator();\r
             this.btn_play = new System.Windows.Forms.ToolStripButton();\r
-            this.btn_stop = new System.Windows.Forms.ToolStripButton();\r
-            this.btn_step_fwd = new System.Windows.Forms.ToolStripButton();\r
-            this.btn_step_back = new System.Windows.Forms.ToolStripButton();\r
-            this.toolStripSeparator2 = new System.Windows.Forms.ToolStripSeparator();\r
-            this.btn_reset = new System.Windows.Forms.ToolStripButton();\r
             this.statusStrip = new System.Windows.Forms.StatusStrip();\r
-            this.txt_position = new System.Windows.Forms.ToolStripStatusLabel();\r
-            this.vlc_player = new AxAXVLC.AxVLCPlugin2();\r
+            this.QTControl = new AxQTOControlLib.AxQTControl();\r
             this.toolBar.SuspendLayout();\r
-            this.statusStrip.SuspendLayout();\r
-            ((System.ComponentModel.ISupportInitialize)(this.vlc_player)).BeginInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.QTControl)).BeginInit();\r
             this.SuspendLayout();\r
             // \r
             // toolBar\r
             // \r
             this.toolBar.GripStyle = System.Windows.Forms.ToolStripGripStyle.Hidden;\r
             this.toolBar.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {\r
+            this.lbl_preview,\r
+            this.cb_preview,\r
+            this.toolStripLabel2,\r
+            this.cb_duration,\r
             this.btn_encode,\r
             this.toolStripSeparator1,\r
-            this.btn_play,\r
-            this.btn_stop,\r
-            this.btn_step_fwd,\r
-            this.btn_step_back,\r
-            this.toolStripSeparator2,\r
-            this.btn_reset});\r
+            this.btn_play});\r
             this.toolBar.Location = new System.Drawing.Point(0, 0);\r
             this.toolBar.Name = "toolBar";\r
             this.toolBar.RenderMode = System.Windows.Forms.ToolStripRenderMode.System;\r
-            this.toolBar.Size = new System.Drawing.Size(750, 39);\r
+            this.toolBar.Size = new System.Drawing.Size(774, 39);\r
             this.toolBar.TabIndex = 37;\r
             this.toolBar.Text = "toolStrip1";\r
             // \r
+            // lbl_preview\r
+            // \r
+            this.lbl_preview.BackColor = System.Drawing.Color.Transparent;\r
+            this.lbl_preview.Name = "lbl_preview";\r
+            this.lbl_preview.Size = new System.Drawing.Size(89, 36);\r
+            this.lbl_preview.Text = "Start at Preview:";\r
+            // \r
+            // cb_preview\r
+            // \r
+            this.cb_preview.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;\r
+            this.cb_preview.DropDownWidth = 75;\r
+            this.cb_preview.FlatStyle = System.Windows.Forms.FlatStyle.Standard;\r
+            this.cb_preview.Items.AddRange(new object[] {\r
+            "1",\r
+            "2",\r
+            "3",\r
+            "4",\r
+            "5",\r
+            "6",\r
+            "7",\r
+            "8",\r
+            "9",\r
+            "10"});\r
+            this.cb_preview.Name = "cb_preview";\r
+            this.cb_preview.Size = new System.Drawing.Size(75, 39);\r
+            // \r
+            // toolStripLabel2\r
+            // \r
+            this.toolStripLabel2.BackColor = System.Drawing.Color.Transparent;\r
+            this.toolStripLabel2.Name = "toolStripLabel2";\r
+            this.toolStripLabel2.Size = new System.Drawing.Size(98, 36);\r
+            this.toolStripLabel2.Text = "Duration (seconds)";\r
+            // \r
+            // cb_duration\r
+            // \r
+            this.cb_duration.DropDownStyle = System.Windows.Forms.ComboBoxStyle.DropDownList;\r
+            this.cb_duration.DropDownWidth = 75;\r
+            this.cb_duration.FlatStyle = System.Windows.Forms.FlatStyle.Standard;\r
+            this.cb_duration.Items.AddRange(new object[] {\r
+            "5",\r
+            "10",\r
+            "15",\r
+            "20",\r
+            "25",\r
+            "30",\r
+            "35",\r
+            "40",\r
+            "45",\r
+            "50",\r
+            "55",\r
+            "60"});\r
+            this.cb_duration.Margin = new System.Windows.Forms.Padding(0);\r
+            this.cb_duration.Name = "cb_duration";\r
+            this.cb_duration.Size = new System.Drawing.Size(75, 39);\r
+            // \r
             // btn_encode\r
             // \r
             this.btn_encode.Image = global::Handbrake.Properties.Resources.Play;\r
             this.btn_encode.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
             this.btn_encode.ImageTransparentColor = System.Drawing.Color.Magenta;\r
             this.btn_encode.Name = "btn_encode";\r
-            this.btn_encode.Size = new System.Drawing.Size(127, 36);\r
+            this.btn_encode.Size = new System.Drawing.Size(115, 36);\r
             this.btn_encode.Text = "Encode Sample";\r
             this.btn_encode.Click += new System.EventHandler(this.btn_encode_Click);\r
             // \r
             this.btn_play.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
             this.btn_play.ImageTransparentColor = System.Drawing.Color.Magenta;\r
             this.btn_play.Name = "btn_play";\r
-            this.btn_play.Size = new System.Drawing.Size(64, 36);\r
+            this.btn_play.Size = new System.Drawing.Size(63, 36);\r
             this.btn_play.Text = "Play";\r
             this.btn_play.Click += new System.EventHandler(this.btn_play_Click);\r
             // \r
-            // btn_stop\r
-            // \r
-            this.btn_stop.Image = global::Handbrake.Properties.Resources.stop;\r
-            this.btn_stop.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
-            this.btn_stop.ImageTransparentColor = System.Drawing.Color.MediumAquamarine;\r
-            this.btn_stop.Name = "btn_stop";\r
-            this.btn_stop.Size = new System.Drawing.Size(69, 36);\r
-            this.btn_stop.Text = "Stop";\r
-            this.btn_stop.Click += new System.EventHandler(this.btn_stop_Click);\r
-            // \r
-            // btn_step_fwd\r
-            // \r
-            this.btn_step_fwd.Image = ((System.Drawing.Image)(resources.GetObject("btn_step_fwd.Image")));\r
-            this.btn_step_fwd.ImageTransparentColor = System.Drawing.Color.Magenta;\r
-            this.btn_step_fwd.Name = "btn_step_fwd";\r
-            this.btn_step_fwd.Size = new System.Drawing.Size(64, 36);\r
-            this.btn_step_fwd.Text = "Slower";\r
-            // \r
-            // btn_step_back\r
-            // \r
-            this.btn_step_back.Image = ((System.Drawing.Image)(resources.GetObject("btn_step_back.Image")));\r
-            this.btn_step_back.ImageTransparentColor = System.Drawing.Color.Magenta;\r
-            this.btn_step_back.Name = "btn_step_back";\r
-            this.btn_step_back.Size = new System.Drawing.Size(60, 36);\r
-            this.btn_step_back.Text = "Faster";\r
-            // \r
-            // toolStripSeparator2\r
-            // \r
-            this.toolStripSeparator2.Name = "toolStripSeparator2";\r
-            this.toolStripSeparator2.Size = new System.Drawing.Size(6, 39);\r
-            // \r
-            // btn_reset\r
-            // \r
-            this.btn_reset.Image = global::Handbrake.Properties.Resources.window;\r
-            this.btn_reset.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;\r
-            this.btn_reset.ImageTransparentColor = System.Drawing.Color.Magenta;\r
-            this.btn_reset.Name = "btn_reset";\r
-            this.btn_reset.Size = new System.Drawing.Size(148, 36);\r
-            this.btn_reset.Text = "Reset Window Size";\r
-            this.btn_reset.Click += new System.EventHandler(this.btn_reset_Click);\r
-            // \r
             // statusStrip\r
             // \r
-            this.statusStrip.Items.AddRange(new System.Windows.Forms.ToolStripItem[] {\r
-            this.txt_position});\r
-            this.statusStrip.Location = new System.Drawing.Point(0, 438);\r
+            this.statusStrip.Location = new System.Drawing.Point(0, 486);\r
             this.statusStrip.Name = "statusStrip";\r
-            this.statusStrip.Size = new System.Drawing.Size(750, 23);\r
+            this.statusStrip.Size = new System.Drawing.Size(774, 22);\r
             this.statusStrip.TabIndex = 38;\r
             this.statusStrip.Text = "statusStrip1";\r
             // \r
-            // txt_position\r
-            // \r
-            this.txt_position.Font = new System.Drawing.Font("Tahoma", 11.25F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(0)));\r
-            this.txt_position.Name = "txt_position";\r
-            this.txt_position.Size = new System.Drawing.Size(704, 18);\r
-            this.txt_position.Spring = true;\r
-            this.txt_position.Text = "DANGER! MAY CAUSE BLUESCREEN OF DEATH!!, SEE CODE FOR COMMENTS";\r
-            // \r
-            // vlc_player\r
+            // QTControl\r
             // \r
-            this.vlc_player.Dock = System.Windows.Forms.DockStyle.Fill;\r
-            this.vlc_player.Enabled = true;\r
-            this.vlc_player.Location = new System.Drawing.Point(0, 39);\r
-            this.vlc_player.Name = "vlc_player";\r
-            this.vlc_player.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("vlc_player.OcxState")));\r
-            this.vlc_player.Size = new System.Drawing.Size(750, 399);\r
-            this.vlc_player.TabIndex = 39;\r
+            this.QTControl.Enabled = true;\r
+            this.QTControl.Location = new System.Drawing.Point(0, 42);\r
+            this.QTControl.Name = "QTControl";\r
+            this.QTControl.OcxState = ((System.Windows.Forms.AxHost.State)(resources.GetObject("QTControl.OcxState")));\r
+            this.QTControl.Size = new System.Drawing.Size(1920, 1080);\r
+            this.QTControl.TabIndex = 39;\r
+            this.QTControl.Visible = false;\r
             // \r
             // frmPreviewAX\r
             // \r
             this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 13F);\r
             this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;\r
-            this.ClientSize = new System.Drawing.Size(750, 461);\r
-            this.Controls.Add(this.vlc_player);\r
+            this.BackColor = System.Drawing.Color.Black;\r
+            this.ClientSize = new System.Drawing.Size(774, 508);\r
+            this.Controls.Add(this.QTControl);\r
             this.Controls.Add(this.statusStrip);\r
             this.Controls.Add(this.toolBar);\r
             this.Icon = ((System.Drawing.Icon)(resources.GetObject("$this.Icon")));\r
             this.TopMost = true;\r
             this.toolBar.ResumeLayout(false);\r
             this.toolBar.PerformLayout();\r
-            this.statusStrip.ResumeLayout(false);\r
-            this.statusStrip.PerformLayout();\r
-            ((System.ComponentModel.ISupportInitialize)(this.vlc_player)).EndInit();\r
+            ((System.ComponentModel.ISupportInitialize)(this.QTControl)).EndInit();\r
             this.ResumeLayout(false);\r
             this.PerformLayout();\r
 \r
         private System.Windows.Forms.ToolStripButton btn_encode;\r
         private System.Windows.Forms.ToolStripSeparator toolStripSeparator1;\r
         private System.Windows.Forms.ToolStripButton btn_play;\r
-        private System.Windows.Forms.ToolStripButton btn_step_fwd;\r
-        private System.Windows.Forms.ToolStripButton btn_step_back;\r
-        private System.Windows.Forms.ToolStripButton btn_stop;\r
-        private System.Windows.Forms.ToolStripSeparator toolStripSeparator2;\r
         private System.Windows.Forms.StatusStrip statusStrip;\r
-        private System.Windows.Forms.ToolStripStatusLabel txt_position;\r
-        private System.Windows.Forms.ToolStripButton btn_reset;\r
-        private AxAXVLC.AxVLCPlugin2 vlc_player;\r
+        private AxQTOControlLib.AxQTControl QTControl;\r
+        private System.Windows.Forms.ToolStripComboBox cb_preview;\r
+        private System.Windows.Forms.ToolStripLabel lbl_preview;\r
+        private System.Windows.Forms.ToolStripLabel toolStripLabel2;\r
+        private System.Windows.Forms.ToolStripComboBox cb_duration;\r
     }\r
 }
\ No newline at end of file
index bbcc8202eb31bbe65cef18335045c64f1d2ee78d..89ccceccd00151f3aeebf5429ee7554eed580c45 100644 (file)
@@ -7,18 +7,15 @@ using System.Text;
 using System.Windows.Forms;\r
 using System.Threading;\r
 using System.Diagnostics;\r
+using System.Runtime.InteropServices;\r
 \r
+using QTOControlLib;\r
+using QTOLibrary;\r
 \r
 namespace Handbrake\r
 {\r
     public partial class frmPreviewAX : Form\r
     {\r
-        // !!!!!!!!!!!! WARNING !!!!!!!!!!!!\r
-        // This code may cause a Blue Screen of Death if run.\r
-        // This usually happens after the VLC active X control has been playing video for a short period\r
-        // and the user tries to close the window. Calling vlc_player.dispose() also causes this I believe.\r
-        // Patches to fix this would be very welcome!\r
-        // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!\r
 \r
         Handbrake.QueryGenerator hb_common_func = new Handbrake.QueryGenerator();\r
         Functions.Encode process = new Functions.Encode();\r
@@ -26,100 +23,48 @@ namespace Handbrake
         String currently_playing = "";\r
         frmMain mainWindow;\r
         private Process hbProc;\r
-        Boolean playing = false;\r
-        int window_height;\r
-        int window_width;\r
 \r
-\r
-        public frmPreviewAX(frmMain mw, int w, int h)\r
+        public frmPreviewAX(frmMain mw)\r
         {\r
             InitializeComponent();\r
-\r
-            this.Width = w;\r
-            this.Height = h + statusStrip.Height + toolBar.Height;\r
             this.mainWindow = mw;\r
-\r
-            resizeWindowUntilCorrect(w, h);\r
-\r
-            vlc_player.Height = h;\r
-            vlc_player.Width = w;\r
+            cb_preview.SelectedIndex = 0;\r
+            cb_duration.SelectedIndex = 1;\r
         }\r
-        private void resizeWindowUntilCorrect(int w, int h)\r
-        {\r
-            // This needs fixed. It makes the window seriously slow to load.\r
-            while (vlc_player.Width != w || vlc_player.Height != h)\r
-            {\r
-                if (vlc_player.Width < w)\r
-                    this.Width++;\r
-\r
-                if (vlc_player.Width > w)\r
-                    this.Width--;\r
-\r
-                if (vlc_player.Height < h)\r
-                    this.Height++;\r
-\r
-                if (vlc_player.Height > h)\r
-                    this.Height--;\r
-            }\r
 \r
-            window_height = this.Height;\r
-            window_width = this.Width;\r
-        }\r
-        private void btn_reset_Click(object sender, EventArgs e)\r
-        {\r
-            this.WindowState = FormWindowState.Normal;\r
-            this.Width = window_width;\r
-            this.Height = window_height;\r
-        }\r
-\r
-        // Playback Controls\r
         private void btn_play_Click(object sender, EventArgs e)\r
         {\r
-            // Get the Destination of the sample video.\r
-            currently_playing = "";\r
             if (mainWindow.text_destination.Text != "")\r
                 currently_playing = mainWindow.text_destination.Text.Replace(".m", "_sample.m").Replace(".avi", "_sample.avi").Replace(".ogm", "_sample.ogm");\r
 \r
-            if (currently_playing != "" && playing != true)\r
-            {\r
-                vlc_player.playlist.clear();\r
-                vlc_player.playlist.add(currently_playing, null, null);\r
-                vlc_player.playlist.play();\r
-            }\r
+            OpenMovie(currently_playing);\r
+\r
+            this.Width = QTControl.Width + 5;\r
+            this.Height = QTControl.Height + 90;\r
+        }\r
 \r
-            if (playing == false)\r
+        private void OpenMovie(string url)\r
+        {\r
+            try\r
             {\r
-                btn_play.Text = "Pause";\r
-                btn_play.Image = Handbrake.Properties.Resources.Pause;\r
-                playing = true;\r
+                QTControl.URL = url;\r
+                QTControl.Show();\r
             }\r
-            else\r
+            catch (COMException ex)\r
             {\r
-                vlc_player.playlist.togglePause();\r
-                btn_play.Text = "Play";\r
-                btn_play.Image = Handbrake.Properties.Resources.Play;\r
-                playing = false;\r
+                QTUtils qtu = new QTUtils();\r
+                MessageBox.Show("Unable to open movie:\n\nError Code: " + ex.ErrorCode.ToString("X") + "\nQT Error code : " + qtu.QTErrorFromErrorCode(ex.ErrorCode).ToString());\r
             }\r
-        }\r
-        private void btn_stop_Click(object sender, EventArgs e)\r
-        {\r
-            if (vlc_player.playlist.isPlaying)\r
+            catch (Exception ex)\r
             {\r
-                vlc_player.playlist.stop();\r
-                vlc_player.playlist.clear();\r
-                //vlc_player.Dispose(); // Causes a BlueScreen of Death!!!\r
-                btn_play.Text = "Play";\r
-                playing = false;\r
+                MessageBox.Show("Unable to open movie:\n\n" + ex.ToString());\r
             }\r
         }\r
 \r
-\r
-        // Encoding a Sample\r
+        #region Encode Sample\r
         private void btn_encode_Click(object sender, EventArgs e)\r
         {\r
-            String query;\r
-            query = hb_common_func.GeneratePreviewQuery(mainWindow,"30");\r
-\r
+            String query = hb_common_func.GeneratePreviewQuery(mainWindow, cb_duration.Text, cb_preview.Text);\r
             ThreadPool.QueueUserWorkItem(procMonitor, query);\r
         }\r
         private void procMonitor(object state)\r
@@ -134,36 +79,7 @@ namespace Handbrake
                 hbProc = null;\r
             }\r
         }\r
-\r
-        protected override void OnClosing(CancelEventArgs e)\r
-        {\r
-\r
-           /* try\r
-            {\r
-                while (vlc_player.playlist.isPlaying)\r
-                {\r
-                    vlc_player.playlist.stop();\r
-                    Thread.Sleep(100);\r
-                }\r
-            }\r
-            catch (Exception exc)\r
-            {\r
-                MessageBox.Show(exc.ToString());\r
-            }\r
-\r
-\r
-            //vlc_player.Dispose();\r
-            while (vlc_player.IsDisposed == false)\r
-            {\r
-                Thread.Sleep(100);\r
-            }\r
-            vlc_player = null;\r
-           */\r
-\r
-            this.Dispose();\r
-            this.Hide();\r
-        }\r
-\r
+        #endregion\r
 \r
     }\r
-}\r
+}
\ No newline at end of file
index 6809a5a8e150a97fcffc8945c1504db4556155e8..670acba25db217d3123c87f728a3c58b2958a06d 100644 (file)
   <metadata name="toolBar.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
     <value>17, 17</value>\r
   </metadata>\r
-  <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />\r
-  <data name="btn_step_fwd.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">\r
-    <value>\r
-        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8\r
-        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL\r
-        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI\r
-        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ\r
-        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4\r
-        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9\r
-        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j\r
-        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR\r
-        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb\r
-        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE\r
-        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC\r
-</value>\r
-  </data>\r
-  <data name="btn_step_back.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">\r
-    <value>\r
-        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8\r
-        YQUAAAAgY0hSTQAAeiYAAICEAAD6AAAAgOgAAHUwAADqYAAAOpgAABdwnLpRPAAAAgxJREFUOE+lkvtL\r
-        U2EYx+0PEbtpFwnBKPGKiJImGP0gYhIYs1E5GF5gIxkpA00JRSmMEF0ohMh+GaRWYlqabMVcNdS2QpaI\r
-        VqiDIYhk397vA6fXhCjyhYdzeM/5fp7vczkAdeL2cwho7v/wWzT1zcN+Pwhr51uY2/y41PQaF+wzKKiZ\r
-        QvaN58g0jyLd5KEUcQbg+84P/Cm2tncQjW3j68YWIqubCC3FcOJc478BAuGoZM6zvoRnakXEruEIjhc4\r
-        /g5gZop9c+voGAyLbQIfeBZxLL9BA1jzXvuGbWamuKh+GmmVbswE19A59FEBbmoAG7YbsLtm2mZmiml9\r
-        cvabNDwpz6YB7LYBoMXCumkJr7LOmnnHzBQ/9X2Bo2cOibm1GsBREbAQiYmw/8lnuCeWkVzcgnZlnw1j\r
-        3HV/wuNXK6i/9x5Hc6wawDlTXHbLJ+LZUBQPRyKwdQdxutwl1h+NLXHh5Ht1ewBHsiwawCW57HyDAfWR\r
-        dvl0uhZQ1eqX8aVc7EKLqrum651ATLf9OJx5XQM4KmY0xPzZ0hFAiQJnXB0WwME0E3IsL5B17ZlADqWb\r
-        NYDrOepdlcysmTWWOrxqbceRWtaLk0VO1XW72D5Vckd2gMBfq8zdpmUG62NJvKM4+XyziDk24xmfWoGE\r
-        s1c0gHPmbrPTpHNJKOCo2G1mZs20zcwUJ5yp1AB5+8/zEwgF5GMVDxh4AAAAAElFTkSuQmCC\r
-</value>\r
-  </data>\r
   <metadata name="statusStrip.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">\r
     <value>116, 17</value>\r
   </metadata>\r
-  <data name="vlc_player.OcxState" mimetype="application/x-microsoft.net.object.binary.base64">\r
+  <data name="QTControl.OcxState" mimetype="application/x-microsoft.net.object.binary.base64">\r
     <value>\r
         AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj0yLjAuMC4w\r
         LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACFTeXN0\r
-        ZW0uV2luZG93cy5Gb3Jtcy5BeEhvc3QrU3RhdGUBAAAABERhdGEHAgIAAAAJAwAAAA8DAAAAQQEAAAIB\r
-        AAAAAQAAAAAAAAAAAAAAACwBAAAHAAAAKABDAG8AdQBuAHQAKQADAAsAAAAIAAAAQQB1AHQAbwBMAG8A\r
-        bwBwAAsAAAAIAAAAQQB1AHQAbwBQAGwAYQB5AAsA//8JAAAAQgBhAGMAawBDAG8AbABvAHIAAwAAAAAA\r
-        BwAAAEIAYQBzAGUAVQBSAEwACAAAAAAADAAAAEUAeAB0AGUAbgB0AEgAZQBpAGcAaAB0AAMAPSkAAAsA\r
-        AABFAHgAdABlAG4AdABXAGkAZAB0AGgAAwCETQAAAwAAAE0AUgBMAAgAAAAAAAkAAABTAHQAYQByAHQA\r
-        VABpAG0AZQADAAAAAAAHAAAAVABvAG8AbABiAGEAcgALAP//BwAAAFYAaQBzAGkAYgBsAGUACwD//wYA\r
-        AABWAG8AbAB1AG0AZQADADIAAAAL\r
+        ZW0uV2luZG93cy5Gb3Jtcy5BeEhvc3QrU3RhdGUBAAAABERhdGEHAgIAAAAJAwAAAA8DAAAAVQAAAAIB\r
+        AAAAAQAAAAAAAAAAAAAAAEAAAAAACAAAcMYAAJ9vAAATAA8AAIATAAAAAAADAAAAAAALAP//AwAAAAAA\r
+        CAACAAAAAAAIAAIAAAAAAAgAAgAAAAAACw==\r
 </value>\r
   </data>\r
+  <assembly alias="System.Drawing" name="System.Drawing, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />\r
   <data name="$this.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">\r
     <value>\r
         AAABAAYAMDAAAAEACACoDgAAZgAAACAgAAABAAgAqAgAAA4PAAAQEAAAAQAIAGgFAAC2FwAAMDAAAAEA\r