vlc 播放器
1 调用VLC的dll,简单的实现一下功能
1 视频播放
2 视频暂停
3 视频关闭
4 视频快进
5 视频截图
2 效果图
代码片段和文件信息
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-11-25 19:15 VlcPlayer
文件 9030 2015-11-25 19:06 VlcPlayerDialog.Designer.cs
文件 3499 2015-11-25 19:06 VlcPlayerDialog.cs
文件 6184 2015-11-25 19:06 VlcPlayerDialog.resx
文件 480 2015-10-28 13:38 VlcPlayerProgram.cs
目录 0 2015-11-25 19:14 VlcPlayerProperties
文件 1426 2011-06-29 14:55 VlcPlayerPropertiesAssemblyInfo.cs
文件 2842 2011-06-29 14:55 VlcPlayerPropertiesResources.Designer.cs
文件 5612 2011-06-29 14:55 VlcPlayerPropertiesResources.resx
文件 1092 2011-06-29 14:55 VlcPlayerPropertiesSettings.Designer.cs
文件 249 2011-06-29 14:55 VlcPlayerPropertiesSettings.settings
文件 12875 2015-10-29 15:58 VlcPlayerVlcPlayer.cs
文件 3466 2015-10-28 13:42 VlcPlayerVlcPlayer.csproj
文件 102400 2011-04-12 08:45 VlcPlayerlibvlc.dll
文件 2279936 2011-04-12 08:45 VlcPlayerlibvlccore.dll
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace vlc.net
{
public partial class Dialog : Form
{
private VlcPlayer vlc_player_;
private bool is_playinig_;
public Dialog()
{
InitializeComponent();
string pluginPath = System.Environment.CurrentDirectory + “\vlc\plugins\“;
vlc_player_ = new VlcPlayer(pluginPath);
IntPtr render_wnd = this.panel1.Handle;
vlc_player_.SetRenderWindow((int)render_wnd);
tbVideoTime.Text = “00:00:00/00:00:00“;
is_playinig_ = false;
}
private void btnStart_Click(object sender EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
vlc_player_.PlayFile(ofd.FileName);
trackBar1.SetRange(0 (int)vlc_player_.Duration());
trackBar1.Value = 0;
timer1.Start();
is_playinig_ = true;
}
}
private void btnReset_Click(object sender EventArgs e)
{
if (is_playinig_)
{
vlc_player_.Stop();
trackBar1.Value = 0;
timer1.Stop();
is_playinig_ = false;
}
}
private void timer1_Tick(object sender EventArgs e)
{
if (is_playinig_)
{
if (trackBar1.Value == trackBar1.Maximum)
{
vlc_player_.Stop();
timer1.Stop();
}
else
{
trackBar1.Value = trackBar1.Value + 1;
tbVideoTime.Text = string.Format(“{0}/{1}“
GetTimeString(trackBar1.Value)
GetTimeString(trackBar1.Maximum));
}
}
}
private string GetTimeString(int val)
{
int hour = val / 3600;
val %= 3600;
int minute = val / 60;
int second = val % 60;
return string.Format(“{0:00}:{1:00}:{2:00}“ hour minute second);
}
private void trackBar1_Scroll(object sender EventArgs e)
{
if (is_playinig_)
{
vlc_player_.SetPlayTime(trackBar1.Value);
trackBar1.Value = (int)vlc_player_.GetPlayTime();
}
}
private void btnPlay_Click(object sender EventArgs e)
{
}
private void btnPause_Click(object sender EventArgs e)
{
vlc_player_.
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2015-11-25 19:15 VlcPla
文件 9030 2015-11-25 19:06 VlcPla
文件 3499 2015-11-25 19:06 VlcPla
文件 6184 2015-11-25 19:06 VlcPla
文件 480 2015-10-28 13:38 VlcPla
目录 0 2015-11-25 19:14 VlcPla
文件 1426 2011-06-29 14:55 VlcPla
文件 2842 2011-06-29 14:55 VlcPla
文件 5612 2011-06-29 14:55 VlcPla
文件 1092 2011-06-29 14:55 VlcPla
文件 249 2011-06-29 14:55 VlcPla
文件 12875 2015-10-29 15:58 VlcPla
文件 3466 2015-10-28 13:42 VlcPla
文件 102400 2011-04-12 08:45 VlcPla
文件 2279936 2011-04-12 08:45 VlcPla
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件举报,一经查实,本站将立刻删除。
评论列表(条)