C#使用LibVLC实现播放遇到无法全屏及鼠标键盘事件问题解决
最近开发视频播放软件使用VLC实现流媒体播放,在使用libVLC自己进行集成播放控件时发现,播放窗口picturebox不响应鼠标键盘事件,无法进行双击或鼠标全屏播放功能的实现。原因是事件被vlc sdk拦截了。在网上找了多个方法都没有解决,最终通过查看vlc.net(之所以没有直接使用vlc.net,是因为它没有自己开发的稳定,原因还不清楚)如何实现,知道了实现方法,如下:
libvlc禁用鼠标键盘事件获取的接口:
/// true on->1 false off->0
[DllImport("libvlc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)] [SuppressUnmanagedCodeSecurity]
public static extern void libvlc_video_set_mouse_input(IntPtr libvlc_mediaplayer, uint status);
[DllImport("libvlc", CallingConvention = CallingConvention.Cdecl, ExactSpelling = true)]
[SuppressUnmanagedCodeSecurity]
public static extern void libvlc_video_set_key_input(IntPtr libvlc_media_player, uint b);
在播放后调用以上两个接口,就可禁用VLC拦截鼠标键盘消息了:
。。。。
LibVlcAPI.libvlc_media_player_set_hwnd(m_pmedia_player, (int)hPlayWnd); LibVlcAPI.libvlc_media_player_play(m_pmedia_player);
LibVlcAPI.libvlc_video_set_mouse_input(m_pmedia_player, 0u); LibVlcAPI.libvlc_video_set_key_input(m_pmedia_player, 0u);
。。。。
C#使用LibVLC实现播放遇到无法全屏及鼠标键盘事件问题解决相关推荐
- 计算机玩游戏不能全屏,如果电脑游戏无法全屏显示怎么办?电脑游戏解决方案不能全屏显示...
指南: 互联网已逐渐成为我们日常生活中不可或缺的一部分. 它不仅为我们带来了很多便利,还为我们的娱乐生活增添了很多乐趣. 许通过计算机玩一些游戏,并且在使用计算机玩网络游戏的过程中,我们都希望游戏可以 ...
- 解决全视频TV无法全屏的问题
全视频TV里常有一些老视频在线观看,画质清晰而且中英字幕,唯一的缺点是无法全屏观看,我偶然发现用chrome可实现全屏观看(其他浏览器原理类似) 方法如下: 尝试一下其他浏览器(Firefox.IE. ...
- VirtualBox安装kali linux过程及安装后无法全屏问题解决方法(2)
VirtualBox安装kali linux过程及安装后无法全屏问题解决方法(2) 参考文章: (1)VirtualBox安装kali linux过程及安装后无法全屏问题解决方法(2) (2)http ...
- 虚拟机VirtualBox中Ubuntu无法全屏(终极解决方法)
虚拟机VirtualBox中Ubuntu无法全屏(终极解决方法) 我用VirtualBox虚拟机安装了Ubuntu10.10.但是VirtualBox全屏的时候,Ubuntu总是在中间位置,没有全屏, ...
- VMware下Ubuntu无法全屏显示问题
一.运行Ubuntu的时候无法全屏显示,如图所示下载VMware Tools 二.之后将下载的文件拷贝到home文件夹下 三.解压该压缩包 由于该压缩包是.tar.gz结尾的故压缩命令:tar -zx ...
- vm虚拟机系统界面无法全屏
我使用的是典型安装 安装后出现界面无法全屏 按照这个调了下分辨率 全屏是全屏了 但分辨率不对... 之后删了 按自定义重装了下. 自定以转一开始也是无法全屏 但 VM提示安装VMware Tools, ...
- win7计算机无法最大化,主编教您win7游戏无法全屏怎么办
小伙伴们,小编前几天在逛网页的时候学习了一个非常劲爆的小技巧,那也就是win7游戏无法全屏的方法.说到这儿,小编猜小伙伴你们一定都非常知道解决win7游戏无法全屏的方法了吧?是的话,那么这就和小编一起 ...
- Windows远程桌面(mstsc) 无法全屏显示的解决方法
目录 问题描述 解决方法 问题解决 问题描述 我们通过mstsc远程登录windows服务器时,远程登录的桌面无法全屏显示,这样操作起来特别不方便,还需要滚动条来处理远程的屏幕,极易操作误操作. wi ...
- VMware中linux虚拟机无法全屏显示的解决方法(1080P分辨率调节)
VMware中linux虚拟机无法全屏显示的解决方法(1080P分辨率调节) 参考文章: (1)VMware中linux虚拟机无法全屏显示的解决方法(1080P分辨率调节) (2)https://ww ...
最新文章
- Hibernate 中集合对象的抓取策略(Fetching strategies)
- DCMTK:测试文件是否使用DICOM Part 10格式
- tablib把数据导出为Excel、JSON、CSV等格式的Py库(写入数据并导出exl)
- NOIP前夕:noi.openjudge,Maximum sum
- 【BZOJ1878】【codevs2307】HH的项链,莫队算法
- 河外动态:疑似UFO的编队在太阳附近徘徊
- 软件项目开发中的团队角色和个体角色
- 收藏一些web应用,留作DzzOffice日后添加web应用时使用。
- 使用HttpClient通过POST方式发送XML,使用TCP/IP Monitor观察数据
- 信号完整性(SI)电源完整性(PI)学习笔记(三十三)102条使信号完整性问题最小化的通用设计规则
- 第五十三回 关云长义释黄汉升 孙仲谋大战张文远
- 整理常用的PHP函数
- SQL如何进行帕累托分析?(窗口函数、累计百分比分类)
- php字体大小_PHP中改变网页文字大小代码
- 空字符串:“”和null的区别。
- OXFeeeFeee指针的含义
- 计算机10秒后重新启动,电脑自动反复重启,CPU风扇转十几秒就停了
- 阮一峰 react 系列教程
- 【路径规划-多式联运】基于遗传算法求解多式联运冷链运输成本优化问题附matlab代码
- 服装摄影中的一些摄影小常识