1、我们实现一个播放器,当播放视频时,可以使用键盘的方向键控制音量的大小、视频的快退快进,使用鼠标单击视频窗口停止/播放视频、鼠标双击视频窗口全屏再次双击恢复正常播放。然而默认情况下,Libvlc接管了视频窗口,我们无法捕获这些鼠标和键盘事件。

原因时我们将视频窗口传递给了Libvlc:

libvlc_media_player_set_hwnd(m_pVlcMediaPlayer, (void*)(m_widget->winId()));

2、幸运的时我们可以使用Libvlc提供给我们的两个接口函数, 让Libvlc忽略对鼠标和键盘事件的处理,还给我们的视频窗口:

libvlc_video_set_mouse_input()
libvlc_video_set_key_input()
m_pVlcMedia = libvlc_media_new_path(m_pVlcInstance, url);
if(!m_pVlcMedia)
{error("VLC media is null!");return;
}
else {libvlc_media_parse_with_options(m_pVlcMedia, libvlc_media_parse_local, 1000);
}m_pVlcMediaPlayer = libvlc_media_player_new_from_media(m_pVlcMedia);
if(!m_pVlcMediaPlayer)
{error("VLC media player is null!");return;
}
if(m_pVlcMediaPlayer)
{libvlc_video_set_mouse_input(m_pVlcMediaPlayer, false);libvlc

QT Libvlc播放视频时捕获鼠标和键盘事件相关推荐

  1. Delphi调用LibVLC播放视频,窗口如何响应键盘鼠标的消息?OnClick、OnDblClick、OnMouseMove

    LibVlc使用简单方便,Delphi调用其接口播放视频文件或者网络视频(RTSP.RTMP等各种协议),几行代码就搞定了,实在是制作视频播放器的最佳利器. 不过,调用libvlc_media_pla ...

  2. UC浏览器电脑版播放视频时出现崩溃怎么解决

    UC浏览器是一款功能强大的电脑浏览器.最近小编看到有用户反映播放视频的时候出现崩溃,这个该怎么解决呢?下面小编就来告诉你. UC浏览器电脑版播放视频时出现崩溃怎么解决 UC浏览器电脑版播放视频时出现崩 ...

  3. potplayer连续播放视频时保持原有屏幕大小不变

    右键|播放|播放设置 勾选仅在播放视频时调整一次尺寸|确定

  4. Chrome播放视频时只有声音没有画面

    问题 win7下Chrome在线播放视频时只有声音,没有画面 解决 打开Chrome,点击右上角菜单,选择设置 -> 高级 -> 系统,取消使用硬件加速模式(如果可用): 重启Chrome ...

  5. [RK3399][Android7.1] 调试笔记 --- 闪电浏览器全屏播放视频时黑屏

    Platform: RK3399 OS: Android 7.1 Kernel: v4.4.83 现象: 使用默认闪电浏览器全屏播放视频时黑屏, error log如下: 08-09 17:19:45 ...

  6. 【懒人系列】快手获取当前播放视频时长

    文章目录 前言 实现方法 总结 前言 上一篇文章我们留了个不大不小的问题:如何获取当前播放视频时长,进而视频播放完毕后自动翻页? 现在我们通过快手极速版App进行探讨和实现. 众所周知,Android ...

  7. php播放器隐藏播放地址,window_ASP中实现对MediaPlayer控件播放文件地址隐藏的解决方案,在播放视频时,直接查看页面 - phpStudy...

    ASP中实现对MediaPlayer控件播放文件地址隐藏的解决方案 在播放视频时,直接查看页面源文件可看到视频文件地址,MediaPlayer控件播放器将在页面上加上如下初始化语句: MediaPla ...

  8. 【Qt】QT鼠标和键盘事件

    00. 目录 文章目录 00. 目录 01. 概述 02. 开发环境 03. 鼠标事件 04. 键盘事件 05. 附录 01. 概述 事件是对各种应用程序需要知道的由应用程序内部或者外部产生的事情或者 ...

  9. 简单的鼠标和键盘事件+阻止默认阻止冒泡+dom0,dom2

    什么是事件 在我们学习DOM之后,事件就是我们必不可少的一块知识点了,事件其实就是我们的一些操作需要在用户来完成之后才执行的.比如我们PC端的点击事件,键盘事件,以及我们移动端的的触屏事件.接下来咱们 ...

  10. PyQt5 笔记8 -- 鼠标、键盘事件

    PyQt5 笔记8 – 鼠标.键盘事件 参考博客(鼠标事件) 参考博客(键盘事件) 1.鼠标事件 事件: mousePressEvent (self, event):鼠标键按下事件 mouseRele ...

最新文章

  1. 将java.time.LocalDate转换为java.util.Date类型
  2. 拼音转汉字 和 字符编码测试
  3. ajax传向前台的html代码里又有事件的时候,绑定事件失败解决方法
  4. 旷视 CVPR 2021 论文解读直播来喽!
  5. 第一章 SDN介绍 (附件3)【云计算,SDN,虚拟化三者关系】
  6. 面向对象之继承与派生
  7. 大数据学习笔记01:大数据概述
  8. Fiddler实现手机抓包
  9. 电解槽行业调研报告 - 市场现状分析与发展前景预测(2021-2027年)
  10. 简述TCP/IP参考模型
  11. 幼儿园门口摆个考勤机 家长接孩子得打卡
  12. 统计学考研笔记:正态分布置信区间计算题
  13. Python3,一行代码实现文件夹共享,看到结果我酸了~
  14. 人类有两大学习能力,即记忆力和理解力
  15. Collaborative Filtering with Temporal Dynamics
  16. ionic2入门教程(三)高仿网易公开课(1)
  17. 银行ATM登录管理系统(最简版)
  18. matlab 数字转化为文字,将数值转换为文本 - MATLAB Simulink - MathWorks 中国
  19. 阿里云上一键安装lnmp或lamp
  20. afe模拟前端的重要性_模拟前端afe的作用

热门文章

  1. 铁路、公路施工企业劳务实名制管理系统解决方案
  2. ADS1112|MS1112|16位AD转换芯片|国产兼容PIN-TO-PIN。兼容替代无需修改软硬件
  3. 数据挖掘——数据可视化
  4. matlab 对数回归,[线性模型] 对数几率回归(Logistic Regression)
  5. LimeSDR-USB硬件部分详细解读
  6. Linux下rpm软件包rpm命令的安装及卸载
  7. 无刷电机工作及控制原理
  8. 为什么C与C++执行效率高,运行快?
  9. 加拿大布兰登大学计算机专业,加拿大布兰登大学有哪些专业?
  10. 数据仓库——概念数据模型