切换LibVlc

This commit is contained in:
rainerosion 2023-01-15 01:51:22 +08:00
parent 5b2a551b9a
commit 18ee9a96d5
17 changed files with 193 additions and 94 deletions

View File

@ -5,7 +5,7 @@ using System.Linq;
using System.Runtime.InteropServices; using System.Runtime.InteropServices;
using System.Text; using System.Text;
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
public class ArpUtil public class ArpUtil
{ {

View File

@ -1,4 +1,4 @@
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
partial class Form1 partial class Form1
{ {
@ -41,6 +41,7 @@
this.closeBtn = new System.Windows.Forms.PictureBox(); this.closeBtn = new System.Windows.Forms.PictureBox();
this.label1 = new System.Windows.Forms.Label(); this.label1 = new System.Windows.Forms.Label();
this.pictureBox1 = new System.Windows.Forms.PictureBox(); this.pictureBox1 = new System.Windows.Forms.PictureBox();
this.colorDialog1 = new System.Windows.Forms.ColorDialog();
this.panel1.SuspendLayout(); this.panel1.SuspendLayout();
this.panel2.SuspendLayout(); this.panel2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.pictureBox4)).BeginInit();
@ -165,6 +166,7 @@
this.pictureBox4.TabIndex = 4; this.pictureBox4.TabIndex = 4;
this.pictureBox4.TabStop = false; this.pictureBox4.TabStop = false;
this.pictureBox4.Click += new System.EventHandler(this.pictureBox4_Click); this.pictureBox4.Click += new System.EventHandler(this.pictureBox4_Click);
this.pictureBox4.MouseMove += new System.Windows.Forms.MouseEventHandler(this.pictureBox4_MouseMove);
// //
// pictureBox3 // pictureBox3
// //
@ -180,6 +182,8 @@
this.pictureBox3.TabIndex = 3; this.pictureBox3.TabIndex = 3;
this.pictureBox3.TabStop = false; this.pictureBox3.TabStop = false;
this.pictureBox3.Click += new System.EventHandler(this.pictureBox3_Click); this.pictureBox3.Click += new System.EventHandler(this.pictureBox3_Click);
this.pictureBox3.MouseLeave += new System.EventHandler(this.pictureBox3_MouseLeave);
this.pictureBox3.MouseMove += new System.Windows.Forms.MouseEventHandler(this.pictureBox3_MouseMove);
// //
// closeBtn // closeBtn
// //
@ -246,6 +250,8 @@
this.ResumeLayout(false); this.ResumeLayout(false);
} }
private System.Windows.Forms.ColorDialog colorDialog1;
private System.Windows.Forms.PictureBox pictureBox4; private System.Windows.Forms.PictureBox pictureBox4;
private System.Windows.Forms.PictureBox pictureBox3; private System.Windows.Forms.PictureBox pictureBox3;

View File

@ -9,7 +9,7 @@ using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms; using System.Windows.Forms;
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
public partial class Form1 : Form public partial class Form1 : Form
{ {
@ -32,7 +32,8 @@ namespace PlumByteUI_Learn
private void button4_Click(object sender, EventArgs e) private void button4_Click(object sender, EventArgs e)
{ {
DialogResult dialogResult = MessageBox.Show(@"确定要退出吗?", @"确定退出?", MessageBoxButtons.OKCancel,MessageBoxIcon.Question); DialogResult dialogResult =
MessageBox.Show(@"确定要退出吗?", @"确定退出?", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
if (dialogResult.Equals(DialogResult.OK)) if (dialogResult.Equals(DialogResult.OK))
{ {
System.Environment.Exit(0); System.Environment.Exit(0);
@ -48,6 +49,7 @@ namespace PlumByteUI_Learn
{ {
container.Dispose(); container.Dispose();
} }
this.panelContainer.Controls.Clear(); this.panelContainer.Controls.Clear();
this.panelContainer.Controls.Add(playerView); this.panelContainer.Controls.Add(playerView);
} }
@ -59,7 +61,8 @@ namespace PlumByteUI_Learn
private void pictureBox2_Click(object sender, EventArgs e) private void pictureBox2_Click(object sender, EventArgs e)
{ {
DialogResult dialogResult = MessageBox.Show(@"确定要退出吗?", @"确定退出?", MessageBoxButtons.OKCancel,MessageBoxIcon.Question); DialogResult dialogResult =
MessageBox.Show(@"确定要退出吗?", @"确定退出?", MessageBoxButtons.OKCancel, MessageBoxIcon.Question);
if (dialogResult.Equals(DialogResult.OK)) if (dialogResult.Equals(DialogResult.OK))
{ {
System.Environment.Exit(0); System.Environment.Exit(0);
@ -69,7 +72,6 @@ namespace PlumByteUI_Learn
private void pictureBox2_MouseHover(object sender, EventArgs e) private void pictureBox2_MouseHover(object sender, EventArgs e)
{ {
} }
private void closeBtn_MouseHover(object sender, EventArgs e) private void closeBtn_MouseHover(object sender, EventArgs e)
@ -81,14 +83,17 @@ namespace PlumByteUI_Learn
{ {
closeBtn.BackColor = Color.FromArgb(0, 110, 255); closeBtn.BackColor = Color.FromArgb(0, 110, 255);
} }
[DllImport("user32.dll")] [DllImport("user32.dll")]
public static extern bool ReleaseCapture(); public static extern bool ReleaseCapture();
[DllImport("user32.dll")] [DllImport("user32.dll")]
private static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam); private static extern bool SendMessage(IntPtr hwnd, int wMsg, int wParam, int lParam);
private const int WM_SYSCOMMAND = 0x0112; private const int WM_SYSCOMMAND = 0x0112;
private const int SC_MOVE = 0xF010; private const int SC_MOVE = 0xF010;
private const int HTCAPTION = 0x0002; private const int HTCAPTION = 0x0002;
private void TopPanel_MouseDown(object sender, MouseEventArgs e) private void TopPanel_MouseDown(object sender, MouseEventArgs e)
{ {
ReleaseCapture(); ReleaseCapture();
@ -97,7 +102,9 @@ namespace PlumByteUI_Learn
private void pictureBox3_Click(object sender, EventArgs e) private void pictureBox3_Click(object sender, EventArgs e)
{ {
this.WindowState = this.WindowState == FormWindowState.Maximized ? FormWindowState.Normal : FormWindowState.Maximized; this.WindowState = this.WindowState == FormWindowState.Maximized
? FormWindowState.Normal
: FormWindowState.Maximized;
this.panelContainer.Refresh(); this.panelContainer.Refresh();
} }
@ -110,5 +117,27 @@ namespace PlumByteUI_Learn
{ {
closeBtn.BackColor = Color.Crimson; closeBtn.BackColor = Color.Crimson;
} }
private void pictureBox3_MouseMove(object sender, MouseEventArgs e)
{
pictureBox3.BackColor = Color.FromArgb(0, 98, 229);
}
private void pictureBox4_MouseMove(object sender, MouseEventArgs e)
{
pictureBox4.BackColor = Color.FromArgb(0, 98, 229);
}
private void pictureBox3_MouseLeave(object sender, EventArgs e)
{
pictureBox3.BackColor = Color.FromArgb(0, 110, 255);
}
private void pictureBox4_MouseLeave(object sender, EventArgs e)
{
pictureBox4.BackColor = Color.FromArgb(0, 110, 255);;
}
} }
} }

View File

@ -292,4 +292,7 @@
/wGqMOZppubid2iNIooNoDKTEnJhrttDSBAEQRAEQRAEQRD8ZE6n33Fuhf9TKD6wAAAAAElFTkSuQmCC /wGqMOZppubid2iNIooNoDKTEnJhrttDSBAEQRAEQRAEQRD8ZE6n33Fuhf9TKD6wAAAAAElFTkSuQmCC
</value> </value>
</data> </data>
<metadata name="colorDialog1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root> </root>

View File

@ -5,7 +5,7 @@ using System.Runtime.InteropServices;
using System.ComponentModel; using System.ComponentModel;
using System.Net; using System.Net;
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
public class GetIPNetTable public class GetIPNetTable
{ {

View File

@ -1,6 +1,6 @@
using System.ComponentModel; using System.ComponentModel;
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
partial class MultiPlayerView partial class MultiPlayerView
{ {

View File

@ -1,6 +1,6 @@
using System.Windows.Forms; using System.Windows.Forms;
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
public partial class MultiPlayerView : UserControl public partial class MultiPlayerView : UserControl
{ {

View File

@ -1,6 +1,6 @@
using System.ComponentModel; using System.ComponentModel;
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
partial class PlayerView partial class PlayerView
{ {
@ -33,6 +33,9 @@ namespace PlumByteUI_Learn
{ {
System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PlayerView)); System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(PlayerView));
this.panel1 = new System.Windows.Forms.Panel(); this.panel1 = new System.Windows.Forms.Panel();
this.button9 = new System.Windows.Forms.Button();
this.button8 = new System.Windows.Forms.Button();
this.button7 = new System.Windows.Forms.Button();
this.button6 = new System.Windows.Forms.Button(); this.button6 = new System.Windows.Forms.Button();
this.button5 = new System.Windows.Forms.Button(); this.button5 = new System.Windows.Forms.Button();
this.button4 = new System.Windows.Forms.Button(); this.button4 = new System.Windows.Forms.Button();
@ -40,12 +43,11 @@ namespace PlumByteUI_Learn
this.button2 = new System.Windows.Forms.Button(); this.button2 = new System.Windows.Forms.Button();
this.button1 = new System.Windows.Forms.Button(); this.button1 = new System.Windows.Forms.Button();
this.panel2 = new System.Windows.Forms.Panel(); this.panel2 = new System.Windows.Forms.Panel();
this.videoView = new LibVLCSharp.WinForms.VideoView();
this.vlcControl = new Vlc.DotNet.Forms.VlcControl(); this.vlcControl = new Vlc.DotNet.Forms.VlcControl();
this.button7 = new System.Windows.Forms.Button();
this.button8 = new System.Windows.Forms.Button();
this.button9 = new System.Windows.Forms.Button();
this.panel1.SuspendLayout(); this.panel1.SuspendLayout();
this.panel2.SuspendLayout(); this.panel2.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.videoView)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.vlcControl)).BeginInit(); ((System.ComponentModel.ISupportInitialize)(this.vlcControl)).BeginInit();
this.SuspendLayout(); this.SuspendLayout();
// //
@ -67,20 +69,75 @@ namespace PlumByteUI_Learn
this.panel1.Size = new System.Drawing.Size(1000, 60); this.panel1.Size = new System.Drawing.Size(1000, 60);
this.panel1.TabIndex = 1; this.panel1.TabIndex = 1;
// //
// button9
//
this.button9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button9.Dock = System.Windows.Forms.DockStyle.Left;
this.button9.FlatAppearance.BorderSize = 0;
this.button9.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button9.Font = new System.Drawing.Font("宋体", 7.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button9.ForeColor = System.Drawing.Color.White;
this.button9.Image = ((System.Drawing.Image)(resources.GetObject("button9.Image")));
this.button9.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.button9.Location = new System.Drawing.Point(117, 0);
this.button9.Name = "button9";
this.button9.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.button9.Size = new System.Drawing.Size(39, 60);
this.button9.TabIndex = 8;
this.button9.Text = "4号";
this.button9.UseVisualStyleBackColor = false;
//
// button8
//
this.button8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button8.Dock = System.Windows.Forms.DockStyle.Left;
this.button8.FlatAppearance.BorderSize = 0;
this.button8.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button8.Font = new System.Drawing.Font("宋体", 7.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button8.ForeColor = System.Drawing.Color.White;
this.button8.Image = ((System.Drawing.Image)(resources.GetObject("button8.Image")));
this.button8.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.button8.Location = new System.Drawing.Point(78, 0);
this.button8.Name = "button8";
this.button8.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.button8.Size = new System.Drawing.Size(39, 60);
this.button8.TabIndex = 7;
this.button8.Text = "3号";
this.button8.UseVisualStyleBackColor = false;
//
// button7
//
this.button7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button7.Dock = System.Windows.Forms.DockStyle.Left;
this.button7.FlatAppearance.BorderSize = 0;
this.button7.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button7.Font = new System.Drawing.Font("宋体", 7.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button7.ForeColor = System.Drawing.Color.White;
this.button7.Image = ((System.Drawing.Image)(resources.GetObject("button7.Image")));
this.button7.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.button7.Location = new System.Drawing.Point(39, 0);
this.button7.Name = "button7";
this.button7.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.button7.Size = new System.Drawing.Size(39, 60);
this.button7.TabIndex = 6;
this.button7.Text = "2号";
this.button7.UseVisualStyleBackColor = false;
this.button7.Click += new System.EventHandler(this.button7_Click);
//
// button6 // button6
// //
this.button6.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right)));
this.button6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75))))); this.button6.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button6.Dock = System.Windows.Forms.DockStyle.Left;
this.button6.FlatAppearance.BorderSize = 0; this.button6.FlatAppearance.BorderSize = 0;
this.button6.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.button6.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button6.Font = new System.Drawing.Font("宋体", 7.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.button6.Font = new System.Drawing.Font("宋体", 7.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button6.ForeColor = System.Drawing.Color.White; this.button6.ForeColor = System.Drawing.Color.White;
this.button6.Image = ((System.Drawing.Image)(resources.GetObject("button6.Image"))); this.button6.Image = ((System.Drawing.Image)(resources.GetObject("button6.Image")));
this.button6.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft; this.button6.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.button6.Location = new System.Drawing.Point(12, 14); this.button6.Location = new System.Drawing.Point(0, 0);
this.button6.Name = "button6"; this.button6.Name = "button6";
this.button6.RightToLeft = System.Windows.Forms.RightToLeft.No; this.button6.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.button6.Size = new System.Drawing.Size(39, 40); this.button6.Size = new System.Drawing.Size(39, 60);
this.button6.TabIndex = 5; this.button6.TabIndex = 5;
this.button6.Text = "1号"; this.button6.Text = "1号";
this.button6.UseVisualStyleBackColor = false; this.button6.UseVisualStyleBackColor = false;
@ -88,17 +145,17 @@ namespace PlumByteUI_Learn
// //
// button5 // button5
// //
this.button5.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right)));
this.button5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75))))); this.button5.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button5.Dock = System.Windows.Forms.DockStyle.Right;
this.button5.FlatAppearance.BorderSize = 0; this.button5.FlatAppearance.BorderSize = 0;
this.button5.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.button5.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button5.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.button5.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button5.ForeColor = System.Drawing.Color.White; this.button5.ForeColor = System.Drawing.Color.White;
this.button5.Image = ((System.Drawing.Image)(resources.GetObject("button5.Image"))); this.button5.Image = ((System.Drawing.Image)(resources.GetObject("button5.Image")));
this.button5.ImageAlign = System.Drawing.ContentAlignment.TopCenter; this.button5.ImageAlign = System.Drawing.ContentAlignment.TopCenter;
this.button5.Location = new System.Drawing.Point(773, 3); this.button5.Location = new System.Drawing.Point(888, 0);
this.button5.Name = "button5"; this.button5.Name = "button5";
this.button5.Size = new System.Drawing.Size(50, 57); this.button5.Size = new System.Drawing.Size(50, 60);
this.button5.TabIndex = 4; this.button5.TabIndex = 4;
this.button5.Text = "单画面"; this.button5.Text = "单画面";
this.button5.TextAlign = System.Drawing.ContentAlignment.BottomCenter; this.button5.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
@ -107,17 +164,17 @@ namespace PlumByteUI_Learn
// //
// button4 // button4
// //
this.button4.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right)));
this.button4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75))))); this.button4.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button4.Dock = System.Windows.Forms.DockStyle.Right;
this.button4.FlatAppearance.BorderSize = 0; this.button4.FlatAppearance.BorderSize = 0;
this.button4.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.button4.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button4.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134))); this.button4.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button4.ForeColor = System.Drawing.Color.White; this.button4.ForeColor = System.Drawing.Color.White;
this.button4.Image = ((System.Drawing.Image)(resources.GetObject("button4.Image"))); this.button4.Image = ((System.Drawing.Image)(resources.GetObject("button4.Image")));
this.button4.ImageAlign = System.Drawing.ContentAlignment.TopCenter; this.button4.ImageAlign = System.Drawing.ContentAlignment.TopCenter;
this.button4.Location = new System.Drawing.Point(823, 3); this.button4.Location = new System.Drawing.Point(938, 0);
this.button4.Name = "button4"; this.button4.Name = "button4";
this.button4.Size = new System.Drawing.Size(62, 57); this.button4.Size = new System.Drawing.Size(62, 60);
this.button4.TabIndex = 3; this.button4.TabIndex = 3;
this.button4.Text = "复合画面"; this.button4.Text = "复合画面";
this.button4.TextAlign = System.Drawing.ContentAlignment.BottomCenter; this.button4.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
@ -126,7 +183,7 @@ namespace PlumByteUI_Learn
// //
// button3 // button3
// //
this.button3.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.button3.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
this.button3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75))))); this.button3.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button3.FlatAppearance.BorderSize = 0; this.button3.FlatAppearance.BorderSize = 0;
this.button3.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.button3.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
@ -144,7 +201,7 @@ namespace PlumByteUI_Learn
// //
// button2 // button2
// //
this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.button2.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
this.button2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75))))); this.button2.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button2.FlatAppearance.BorderSize = 0; this.button2.FlatAppearance.BorderSize = 0;
this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.button2.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
@ -162,7 +219,7 @@ namespace PlumByteUI_Learn
// //
// button1 // button1
// //
this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.button1.Anchor = ((System.Windows.Forms.AnchorStyles)((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom)));
this.button1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75))))); this.button1.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button1.FlatAppearance.BorderSize = 0; this.button1.FlatAppearance.BorderSize = 0;
this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat; this.button1.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
@ -183,19 +240,31 @@ namespace PlumByteUI_Learn
// panel2 // panel2
// //
this.panel2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right))); this.panel2.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right)));
this.panel2.Controls.Add(this.videoView);
this.panel2.Controls.Add(this.vlcControl); this.panel2.Controls.Add(this.vlcControl);
this.panel2.Location = new System.Drawing.Point(0, 0); this.panel2.Location = new System.Drawing.Point(0, 0);
this.panel2.Name = "panel2"; this.panel2.Name = "panel2";
this.panel2.Size = new System.Drawing.Size(1000, 610); this.panel2.Size = new System.Drawing.Size(1000, 610);
this.panel2.TabIndex = 2; this.panel2.TabIndex = 2;
// //
// videoView
//
this.videoView.BackColor = System.Drawing.Color.Black;
this.videoView.Dock = System.Windows.Forms.DockStyle.Left;
this.videoView.Location = new System.Drawing.Point(0, 0);
this.videoView.MediaPlayer = null;
this.videoView.Name = "videoView";
this.videoView.Size = new System.Drawing.Size(500, 610);
this.videoView.TabIndex = 1;
this.videoView.Text = "videoView1";
//
// vlcControl // vlcControl
// //
this.vlcControl.BackColor = System.Drawing.Color.WhiteSmoke; this.vlcControl.BackColor = System.Drawing.Color.WhiteSmoke;
this.vlcControl.Dock = System.Windows.Forms.DockStyle.Fill; this.vlcControl.Dock = System.Windows.Forms.DockStyle.Right;
this.vlcControl.Location = new System.Drawing.Point(0, 0); this.vlcControl.Location = new System.Drawing.Point(500, 0);
this.vlcControl.Name = "vlcControl"; this.vlcControl.Name = "vlcControl";
this.vlcControl.Size = new System.Drawing.Size(1000, 610); this.vlcControl.Size = new System.Drawing.Size(500, 610);
this.vlcControl.Spu = -1; this.vlcControl.Spu = -1;
this.vlcControl.TabIndex = 0; this.vlcControl.TabIndex = 0;
this.vlcControl.Text = "vlcControl1"; this.vlcControl.Text = "vlcControl1";
@ -203,60 +272,6 @@ namespace PlumByteUI_Learn
this.vlcControl.VlcMediaplayerOptions = null; this.vlcControl.VlcMediaplayerOptions = null;
this.vlcControl.VlcLibDirectoryNeeded += new System.EventHandler<Vlc.DotNet.Forms.VlcLibDirectoryNeededEventArgs>(this.vlcControl_VlcLibDirectoryNeeded); this.vlcControl.VlcLibDirectoryNeeded += new System.EventHandler<Vlc.DotNet.Forms.VlcLibDirectoryNeededEventArgs>(this.vlcControl_VlcLibDirectoryNeeded);
// //
// button7
//
this.button7.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right)));
this.button7.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button7.FlatAppearance.BorderSize = 0;
this.button7.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button7.Font = new System.Drawing.Font("宋体", 7.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button7.ForeColor = System.Drawing.Color.White;
this.button7.Image = ((System.Drawing.Image)(resources.GetObject("button7.Image")));
this.button7.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.button7.Location = new System.Drawing.Point(57, 14);
this.button7.Name = "button7";
this.button7.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.button7.Size = new System.Drawing.Size(39, 40);
this.button7.TabIndex = 6;
this.button7.Text = "2号";
this.button7.UseVisualStyleBackColor = false;
//
// button8
//
this.button8.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right)));
this.button8.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button8.FlatAppearance.BorderSize = 0;
this.button8.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button8.Font = new System.Drawing.Font("宋体", 7.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button8.ForeColor = System.Drawing.Color.White;
this.button8.Image = ((System.Drawing.Image)(resources.GetObject("button8.Image")));
this.button8.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.button8.Location = new System.Drawing.Point(102, 14);
this.button8.Name = "button8";
this.button8.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.button8.Size = new System.Drawing.Size(39, 40);
this.button8.TabIndex = 7;
this.button8.Text = "3号";
this.button8.UseVisualStyleBackColor = false;
//
// button9
//
this.button9.Anchor = ((System.Windows.Forms.AnchorStyles)((((System.Windows.Forms.AnchorStyles.Top | System.Windows.Forms.AnchorStyles.Bottom) | System.Windows.Forms.AnchorStyles.Left) | System.Windows.Forms.AnchorStyles.Right)));
this.button9.BackColor = System.Drawing.Color.FromArgb(((int)(((byte)(46)))), ((int)(((byte)(57)))), ((int)(((byte)(75)))));
this.button9.FlatAppearance.BorderSize = 0;
this.button9.FlatStyle = System.Windows.Forms.FlatStyle.Flat;
this.button9.Font = new System.Drawing.Font("宋体", 7.5F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.button9.ForeColor = System.Drawing.Color.White;
this.button9.Image = ((System.Drawing.Image)(resources.GetObject("button9.Image")));
this.button9.ImageAlign = System.Drawing.ContentAlignment.MiddleLeft;
this.button9.Location = new System.Drawing.Point(147, 14);
this.button9.Name = "button9";
this.button9.RightToLeft = System.Windows.Forms.RightToLeft.No;
this.button9.Size = new System.Drawing.Size(39, 40);
this.button9.TabIndex = 8;
this.button9.Text = "4号";
this.button9.UseVisualStyleBackColor = false;
//
// PlayerView // PlayerView
// //
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit; this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Inherit;
@ -267,10 +282,13 @@ namespace PlumByteUI_Learn
this.Load += new System.EventHandler(this.PlayerView_Load); this.Load += new System.EventHandler(this.PlayerView_Load);
this.panel1.ResumeLayout(false); this.panel1.ResumeLayout(false);
this.panel2.ResumeLayout(false); this.panel2.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.videoView)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.vlcControl)).EndInit(); ((System.ComponentModel.ISupportInitialize)(this.vlcControl)).EndInit();
this.ResumeLayout(false); this.ResumeLayout(false);
} }
private LibVLCSharp.WinForms.VideoView videoView;
private System.Windows.Forms.Button button7; private System.Windows.Forms.Button button7;
private System.Windows.Forms.Button button8; private System.Windows.Forms.Button button8;
private System.Windows.Forms.Button button9; private System.Windows.Forms.Button button9;

View File

@ -2,9 +2,10 @@
using System.IO; using System.IO;
using System.Reflection; using System.Reflection;
using System.Windows.Forms; using System.Windows.Forms;
using LibVLCSharp.Shared;
using Vlc.DotNet.Forms; using Vlc.DotNet.Forms;
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
public partial class PlayerView : UserControl public partial class PlayerView : UserControl
{ {
@ -106,13 +107,26 @@ namespace PlumByteUI_Learn
{ {
string[] options = { ":network-caching=10", ":rtsp-tcp"};// { ":network-caching=100", ":rtsp -tcp", ":no-audio" }; // --avcodec-hw={any,d3d11va,dxva2,none} string[] options = { ":network-caching=10", ":rtsp-tcp"};// { ":network-caching=100", ":rtsp -tcp", ":no-audio" }; // --avcodec-hw={any,d3d11va,dxva2,none}
var videoUri = new Uri(@"rtsp://127.0.0.1:8554/rains"); var videoUri = new Uri(@"rtsp://127.0.0.1:8554/rains");
vlcControl.Audio.IsMute = false;
vlcControl.Play(videoUri, options); vlcControl.Play(videoUri, options);
Console.WriteLine("播放rtsp视频"); Console.WriteLine("播放rtsp视频");
} }
private void vlcControl_Click_1(object sender, EventArgs e) private void vlcControl_Click_1(object sender, EventArgs e)
{ {
throw new System.NotImplementedException(); throw new System.NotImplementedException();
} }
private void button7_Click(object sender, EventArgs e)
{
string[] options = { ":network-caching=10", ":rtsp-tcp"};// { ":network-caching=100", ":rtsp -tcp", ":no-audio" }; // --avcodec-hw={any,d3d11va,dxva2,none}
var videoUri = new Uri(@"rtsp://127.0.0.1:8554/rains2");
var libVlc = new LibVLC(enableDebugLogs: true);
var media = new Media(libVlc,videoUri,options);
var mediaPlayer = new MediaPlayer(media);
videoView.MediaPlayer = mediaPlayer;
videoView.MediaPlayer.Play();
}
} }
} }

View File

@ -5,7 +5,7 @@ using System.Runtime.InteropServices;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms; using System.Windows.Forms;
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
static class Program static class Program
{ {

View File

@ -8,7 +8,7 @@
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace PlumByteUI_Learn.Properties namespace Tech_Demo.Properties
{ {
@ -44,7 +44,7 @@ namespace PlumByteUI_Learn.Properties
{ {
if ((resourceMan == null)) if ((resourceMan == null))
{ {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("PlumByteUI_Learn.Properties.Resources", typeof(Resources).Assembly); global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Tech_Demo.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp; resourceMan = temp;
} }
return resourceMan; return resourceMan;

View File

@ -8,7 +8,7 @@
// </auto-generated> // </auto-generated>
//------------------------------------------------------------------------------ //------------------------------------------------------------------------------
namespace PlumByteUI_Learn.Properties namespace Tech_Demo.Properties
{ {

View File

@ -6,7 +6,7 @@
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform> <Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
<ProjectGuid>{ACFE594E-F51C-4B73-9661-0144FF9E33A3}</ProjectGuid> <ProjectGuid>{ACFE594E-F51C-4B73-9661-0144FF9E33A3}</ProjectGuid>
<OutputType>WinExe</OutputType> <OutputType>WinExe</OutputType>
<RootNamespace>PlumByteUI_Learn</RootNamespace> <RootNamespace>Tech_Demo</RootNamespace>
<AssemblyName>Tech</AssemblyName> <AssemblyName>Tech</AssemblyName>
<TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion> <TargetFrameworkVersion>v4.7.2</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment> <FileAlignment>512</FileAlignment>
@ -33,8 +33,31 @@
<WarningLevel>4</WarningLevel> <WarningLevel>4</WarningLevel>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="LibVLCSharp, Version=3.6.7.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\LibVLCSharp.3.6.7\lib\net471\LibVLCSharp.dll</HintPath>
</Reference>
<Reference Include="LibVLCSharp.WinForms">
<HintPath>bin\Debug\LibVLCSharp.WinForms.dll</HintPath>
</Reference>
<Reference Include="LibVLCSharp.WinForms, Version=3.6.7.0, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\packages\LibVLCSharp.WinForms.3.6.7\lib\net40\LibVLCSharp.WinForms.dll</HintPath>
</Reference>
<Reference Include="mscorlib" />
<Reference Include="System" /> <Reference Include="System" />
<Reference Include="System.Buffers, Version=4.0.3.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Buffers.4.5.1\lib\net461\System.Buffers.dll</HintPath>
</Reference>
<Reference Include="System.Core" /> <Reference Include="System.Core" />
<Reference Include="System.Memory, Version=4.0.1.1, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51, processorArchitecture=MSIL">
<HintPath>..\packages\System.Memory.4.5.4\lib\net461\System.Memory.dll</HintPath>
</Reference>
<Reference Include="System.Numerics" />
<Reference Include="System.Numerics.Vectors, Version=4.1.4.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Numerics.Vectors.4.5.0\lib\net46\System.Numerics.Vectors.dll</HintPath>
</Reference>
<Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
<HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.3\lib\net461\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
</Reference>
<Reference Include="System.Xml.Linq" /> <Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" /> <Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" /> <Reference Include="Microsoft.CSharp" />

View File

@ -1,2 +1,2 @@
<wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation"> <wpf:ResourceDictionary xml:space="preserve" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:s="clr-namespace:System;assembly=mscorlib" xmlns:ss="urn:shemas-jetbrains-com:settings-storage-xaml" xmlns:wpf="http://schemas.microsoft.com/winfx/2006/xaml/presentation">
<s:String x:Key="/Default/DesignerComponentManagerNuGet/DesignerToolboxNuGetState/@EntryValue">D:\develop\RiderProjects\UI-Design-in-C\PlumByteUI-Learn\packages\Vlc.DotNet.Forms.3.1.0\lib\net45\Vlc.DotNet.Forms.dll|</s:String></wpf:ResourceDictionary> <s:String x:Key="/Default/DesignerComponentManagerNuGet/DesignerToolboxNuGetState/@EntryValue">D:\develop\RiderProjects\UI-Design-in-C\PlumByteUI-Learn\packages\Vlc.DotNet.Forms.3.1.0\lib\net45\Vlc.DotNet.Forms.dll|Vlc.DotNet.Forms.VlcControl*D:\develop\RiderProjects\UI-Design-in-C\PlumByteUI-Learn\packages\LibVLCSharp.WinForms.3.6.7\lib\net40\LibVLCSharp.WinForms.dll|LibVLCSharp.WinForms.VideoView</s:String></wpf:ResourceDictionary>

View File

@ -1,4 +1,4 @@
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
partial class UCOverview partial class UCOverview
{ {

View File

@ -9,7 +9,7 @@ using System.Text;
using System.Threading.Tasks; using System.Threading.Tasks;
using System.Windows.Forms; using System.Windows.Forms;
namespace PlumByteUI_Learn namespace Tech_Demo
{ {
public partial class UCOverview : UserControl public partial class UCOverview : UserControl
{ {

View File

@ -1,5 +1,11 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?>
<packages> <packages>
<package id="LibVLCSharp" version="3.6.7" targetFramework="net472" />
<package id="LibVLCSharp.WinForms" version="3.6.7" targetFramework="net472" />
<package id="System.Buffers" version="4.5.1" targetFramework="net472" />
<package id="System.Memory" version="4.5.4" targetFramework="net472" />
<package id="System.Numerics.Vectors" version="4.5.0" targetFramework="net472" />
<package id="System.Runtime.CompilerServices.Unsafe" version="4.5.3" targetFramework="net472" />
<package id="VideoLAN.LibVLC.Windows" version="3.0.18" targetFramework="net472" /> <package id="VideoLAN.LibVLC.Windows" version="3.0.18" targetFramework="net472" />
<package id="Vlc.DotNet.Core" version="3.1.0" targetFramework="net472" /> <package id="Vlc.DotNet.Core" version="3.1.0" targetFramework="net472" />
<package id="Vlc.DotNet.Core.Interops" version="3.1.0" targetFramework="net472" /> <package id="Vlc.DotNet.Core.Interops" version="3.1.0" targetFramework="net472" />