当前位置: 首页 > article >正文

Avalonia 播放 VLC 视频(Windows / Linux)

【演示效果】

一、开发步骤

1. 版本与引用类库

Avalonia 版本:11.0.11

Windows上只需要安装以下类库:

LibVLCSharp 3.8.5

LibVLCSharp.Avalonia 3.8.5

VideoLAN.LibVLC.Windows 3.0.20

 引用截图:

 2. 前端代码
<UserControl xmlns="https://github.com/avaloniaui"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
			 xmlns:oc="http://ordinary.controls"
			 xmlns:vlc="clr-namespace:LibVLCSharp.Avalonia;assembly=LibVLCSharp.Avalonia"
             mc:Ignorable="d" d:DesignWidth="800" d:DesignHeight="450"
             x:Class="Client.Views.UC_VideoController">
	<Grid RowDefinitions="*,65">
		<!--视频-->
		<vlc:VideoView Grid.Row="0" Name="vv" />
		<!--视频相关信息,提示用户视频是否存在等-->
		<TextBlock x:Name="txt_VideoMsg" Grid.Row="0" VerticalAlignment="Center" HorizontalAlignment="Center"
				   Foreground="{StaticResource primary}" FontWeight="Bold" FontSize="22" />
		<!--视频控制器-->
		<Grid Grid.Row="1">
			<Grid.RowDefinitions>
				<RowDefinition Height="20"/>
				<RowDefinition Height="45" />
			</Grid.RowDefinitions>
			<Border Grid.Row="0">
				<Slider Name="slider_progress" Opacity="0.5" VerticalAlignment="Center" Margin="5 0" />
			</Border>
			<Border Grid.Row="1" BorderBrush="{StaticResource primary}" BorderThickness="0 1 0 0" Padding="10 0">
				<StackPanel x:Name="sp_VideoCtlBar" Orientation="Horizontal">
					<StackPanel Orientation="Horizontal"  HorizontalAlignment="Left" VerticalAlignment="Center" >
						<oc:NormalButton Classes="CtlPlayerBtn" Name="btn_Prev" Text="上一帧" Icon="square-caret-left"/>
						<oc:NormalButton Classes="CtlPlayerBtn" Name="btn_Play" Text="播放" Icon="play"/>
						<oc:NormalButton Classes="CtlPlayerBtn" Name="btn_Next" Text="下一帧" Icon="square-caret-right"/>
                        <oc:NormalButton Classes="CtlPlayerBtn" Name="btn_Capture" Text="截图" Icon="image"/>
					</StackPanel>
				</StackPanel>
			</Border>
		</Grid>
	</Grid>
</UserControl>

注1:经过测试,VideoView 在当前版本中不能放在Window下,需要放在UserControl中。直接放在Windo


http://www.kler.cn/a/287293.html

相关文章:

  • 【GPTs】Ai-Ming:AI命理助手,个人运势与未来发展剖析
  • Vue 3 中 ref 属性详解:操作 DOM 元素的利器
  • 人工智能:塑造未来的工作与生活
  • 任务管理功能拆解——如何高效管理项目任务?
  • 海量数据面试题
  • 华为刷题笔记--题目索引
  • 【HTTP、Web常用协议等等】前端八股文面试题
  • C# 编译程序引用C++DLL托管动态链接库实例
  • 用Python实现时间序列模型实战——Day 8: 季节性ARIMA模型 (SARIMA)
  • 分页查询--条件查询
  • STM32 ADC采样详解
  • verilog bug记录-修改信号线频率
  • zookeeper分部式锁
  • ES6----练习题
  • 如何在S7-200 SMART CPU断电后保持高速计数器的当前值
  • Unity学习路线
  • 打造一流的研发型企业--- 金发科技研发驱动力初探
  • MATLAB学习笔记3
  • 使用 OpenSSL 进行 RSA 密钥生成与加解密操作(命令行方式)
  • 用MATLAB 画一个64QAM的星座图
  • gitlab使用
  • easyPOI生成的excel添加水印
  • Spark MLlib模型训练—分类算法Multinomial Logistic Regression
  • 【生活英语】2、喜欢与讨厌
  • 四足机器人控制算法——建模、控制与实践(unitree_guide配置)
  • ​14:00面试,14:06就出来了,问的问题有点变态。。。