WPF+LibVLC开发播放器-LibVLC播放控制

接上一篇:
LibVLC在C#中的使用

实现LibVLC播放器播放控制

界面

界面上添加一个Button按钮用于控制播放

xml 复制代码
     <Button
         Grid.Row="1"
         Width="88"
         Height="24"
         Margin="10,0,0,0"
         HorizontalAlignment="Left"
         VerticalAlignment="Bottom"
         Click="Button_Click"
         Content="播放" />

前面已有初始化加载播放和视频文件加载的代码

csharp 复制代码
 private LibVLC _libVLC;

 private MediaPlayer _player;

 public MainWindow()
 {
     InitializeComponent();
     Core.Initialize();
     _libVLC = new LibVLC();
     _player = new MediaPlayer(_libVLC);
     videoView.MediaPlayer = _player;

 }
 
   private void Window_Loaded(object sender, RoutedEventArgs e)
  {
      FileStream fileStream = new FileStream("F:\\Test\\test.mp4", FileMode.Open);
      Media media = new Media(_libVLC, new StreamMediaInput(fileStream));
      _player.Media = media;
      _player.Play();
  }

播放控制方法

主要是对_player也就是videoView.MediaPlayer播放器里的MediaPlayer进行控制

1.播放

csharp 复制代码
 _player.Play();

2.停止

停止播放,是视频完全停止,进度回到一开始

停止之后再播放就从头开始播放

csharp 复制代码
 _player.Stop();

3.暂停

Pause和SetPause都能实现暂停

csharp 复制代码
 _player.Pause();
 _player.SetPause(true);

4.播放状态

通过IsPlaying 属性获取当前播放状态

csharp 复制代码
 if (_player.IsPlaying)
 {
   
 }

实现按钮播放控制

在button事件中实现播放控制,根据当前状态来暂停和播放

csharp 复制代码
        private void Button_Click(object sender, RoutedEventArgs e)
        {
            if (_player.IsPlaying)
            {
                _player.Pause();
            }
            else
            {
                _player.Play();
            }
        }

教程:

WPF+LibVLC开发播放器-LibVLC播放控制

相关推荐
Scout-leaf7 天前
WPF新手村教程(三)—— 路由事件
c#·wpf
柒.梧.9 天前
基于SpringBoot+JWT 实现Token登录认证与登录人信息查询
wpf
十月南城13 天前
Flink实时计算心智模型——流、窗口、水位线、状态与Checkpoint的协作
大数据·flink·wpf
听麟15 天前
HarmonyOS 6.0+ 跨端会议助手APP开发实战:多设备接续与智能纪要全流程落地
分布式·深度学习·华为·区块链·wpf·harmonyos
@hdd15 天前
Kubernetes 可观测性:Prometheus 监控、日志采集与告警
云原生·kubernetes·wpf·prometheus
zls36536515 天前
C# WPF canvas中绘制缺陷分布map
开发语言·c#·wpf
专注VB编程开发20年15 天前
c#Redis扣款锁的设计,多用户,多台电脑操作
wpf
闲人编程16 天前
定时任务与周期性调度
分布式·python·wpf·调度·cron·定时人物·周期性
zls36536516 天前
C# WPF canvas中绘制缺陷分布map并实现缩放
开发语言·c#·wpf
数据知道18 天前
PostgreSQL:Citus 分布式拓展,水平分片,支持海量数据与高并发
分布式·postgresql·wpf