• H265流媒体播放器EasyPlayerPro如何获取当前屏幕分辨率?


    VR正在改变我们生活、社交和工作方式。今天的消费者正在寻找体验,经过近几年的研究,我们知道VR有能力在未来的学习和发展中发挥巨大的作用。TSINGSEE青犀视频开发的EasyPlayerPro作为一款专业播放器,在VR播放扮演了重要的角色。

    应我们开发者的要求,我们现在一个项目中需要做一个VR播放器,基于EasyPlayerPro进行改造,因为用户使用的不是标准的显示器,而是用电视机拼接的电视墙,我这边使用MFC自带的 ShowWindow(SHOW_FULLSCREEN),达不到预期的效果,如下图所示,在项目中,播放器并不能根据屏幕的大小全屏显示:

    该开发者要求全屏,但项目中使用的是拼接屏,所以我们找寻了一些全屏的方法,主要方式就是需要获取该屏幕的分辨率,然后赋值屏幕分辨率达到播放器全屏展示的目的。我们首先尝试了通过各种系统api获取屏幕分辨率,都没成功,随后到网上搜索了一些解决方法,发现可以从代码层面进行修改,就能够获取此类拼接屏幕的分辨率。

    参考代码如下:

    HMONITOR monitor = MonitorFromWindow(hwnd, MONITOR_DEFAULTTONEAREST);

    MONITORINFO info;

    info.cbSize = sizeof(MONITORINFO);

    GetMonitorInfo(monitor, &info);

    int monitor_width = info.rcMonitor.right - info.rcMonitor.left;

    int monitor_height = info.rcMonitor.bottom - info.rcMonitor.top;

    在该问题中,获取到的屏幕分辨率为SetWindowPos(NULL, 0, 0, 7688, 4328, 0),我们将该值手动复制到播放器中,即可解决播放器在最大化状态下的全屏问题:

    效果如下所示,播放器可直接占满全屏:

  • 相关阅读:
    封装TensorFlow神经网络
    android对话框显示异常报错:You need to use a Theme.AppCompat theme (or descendant) with this activity.
    管道过滤器模式
    架构设计模式之管道——过滤器模式
    SQL SERVER 数据库邮件配置
    浅谈数据仓库的基本架构(转)
    Spark On YARN内存分配
    Tomcat 9.0安装配置
    Spark on Yarn遇到的几个问题
    yarn资源调度(网络搜集)
  • 原文地址:https://www.cnblogs.com/TSINGSEE/p/15439584.html
Copyright © 2020-2023  润新知