egl

How to address the error EGL Driver message (Error) eglQueryDeviceAttribEXT: Bad attribute using Selenium and Python

会有一股神秘感。 提交于 2021-02-19 01:24:39
问题 I'm getting random error messages from selenium, even though none of them are related to the exact web driver commands I'm running (not that I know of). This error isn't interrupting the program, it's just adding unwanted alerts (making my prints harder to read). Chrome version: 75.0.3770.100 (Official Build) (64-bit) Python version: 3.6.1 ChromeDriver version: 75.0.3770.140 I've added the following code already but I'm still getting the error. options.add_argument("--log-level=3") Error: gl

FFmpeg + OpenGLES 实现视频解码播放和视频滤镜

心不动则不痛 提交于 2021-01-14 02:46:19
该原创文章首发于微信公众号:字节流动 FFmpeg 开发系列连载: FFmpeg 开发(01):FFmpeg 编译和集成 FFmpeg 开发(02):FFmpeg + ANativeWindow 实现视频解码播放 FFmpeg 开发(03):FFmpeg + OpenSLES 实现音频解码播放 FFmpeg 开发(04):FFmpeg + OpenGLES 实现音频可视化播放 前面 Android FFmpeg 开发系列文章中,我们已经利用 FFmpeg 的解码功能和 ANativeWindow 的渲染功能,实现了的视频的解码播放。但是,当你想为播放器做一些视频滤镜时,如加水印、旋转缩放等效果,使用 OpenGL ES 实现起来就极为方便。 OpenGLES 渲染解码帧 经过上面几节的介绍,我们对音视频的解码过程已经比较熟悉了。本文要用 OpenGL 实现视频的渲染,这里再回顾下视频的解码流程: 从流程图中可以看出,解码一帧图像后,首先将对图像进行格式转换,转换成 RGBA 格式,使用 OpenGL 或 ANativeWindow 可以直接进行渲染。 当然,使用 OpenGL 进行渲染时,为了提升性能,可以将格式转换放到 GPU 上来做(即 shader 实现 YUV 到 RGB 的转换),也可以使用 OES 纹理直接接收 YUV 图像数据,这里就不进行展开讲了。

生成163邮箱

让人想犯罪 __ 提交于 2020-12-26 01:15:36
file.txt: 1GmSluQ owhMb7k QD8wStm o1ASe8x muPoYv9 7vUqAIX 26OEwAz imSVgHR p08TrGf dIL9Xpy JfM49gr CXgny8Q GaRPvXS blNvmrp zrID2Wh zWmfP1c bPw6yYU PnDTMac idlDgHC lLO6Bev egl7Hnx G1bacTQ xi7GOlt fgeqYbP WATwhPG dbQM9uV HJqZeh4 nU6Q3bk et6Odij xZ93fv7 6Xkn4iv Fjhdszu q4oZcWn o58MZB6 1DvVOc8 2Inx0lc XYROn5W e7nKGgp BcrGSJR ET9uAdz IxcSKZ8 3VcdoJ9 VBYNhKt 1DkAnaG w6WarX1 82Vgt0m eMrQhUA uxNwTZm Im2KefJ aVkexK2 7LPOphv eLF93DE 9VG7IXy Xq5mURw rO7R526 dcOt9uo fMsaDyW 5epdhwA ARKnFWc Re3V9qd hK9pXto TWwzyta c4umDOo n27Khmz GCQuW5w KWPcNdC xv9Tz2L l6ou8y7 KItcVba xqFVz9H 5CS1R0s 9XyaPQ0 uzsXafg

OpenGL升级打怪系列 之 GLSurfaceView源码分析 --- GLThread

喜欢而已 提交于 2020-11-08 04:22:07
一、背景 Android对OpenGL这块封装是非常好的,也是非常隐蔽的,一般使用者直接使用GLSurfaceView即可达到需求。最近项目中将很多功能下层到c++层,这样必须对OpenGL 底层逻辑有所了解。Android虽然提供OpenGL 各个版本的So库,但是并没有对底层api做封装,所以如果是自己想用C++写OpenGL,最好的方式学习Android源码。 二、GLSurfaceView如何使用 在分析GLSurfaceView源码之前我们非常有必要介绍一下GLSurfaceView的使用方法: surfaceView = findViewById(R.id.triangle_api_surfaceView) surfaceView.setEGLContextClientVersion(3) surfaceView.setRenderer(object : GLSurfaceView.Renderer { /** * Called when the surface is created or recreated. * * * Called when the rendering thread * starts and whenever the EGL context is lost. The EGL context will typically * be lost when

FFmpeg 开发(05):FFmpeg + OpenGLES 实现视频解码播放和视频滤镜

若如初见. 提交于 2020-10-25 09:11:40
该原创文章首发于微信公众号:字节流动 FFmpeg 开发系列连载: FFmpeg 开发(01):FFmpeg 编译和集成 FFmpeg 开发(02):FFmpeg + ANativeWindow 实现视频解码播放 FFmpeg 开发(03):FFmpeg + OpenSLES 实现音频解码播放 FFmpeg 开发(04):FFmpeg + OpenGLES 实现音频可视化播放 前面 Android FFmpeg 开发系列文章中,我们已经利用 FFmpeg 的解码功能和 ANativeWindow 的渲染功能,实现了的视频的解码播放。但是,当你想为播放器做一些视频滤镜时,如加水印、旋转缩放等效果,使用 OpenGL ES 实现起来就极为方便。 OpenGLES 渲染解码帧 经过上面几节的介绍,我们对音视频的解码过程已经比较熟悉了。本文要用 OpenGL 实现视频的渲染,这里再回顾下视频的解码流程: 从流程图中可以看出,解码一帧图像后,首先将对图像进行格式转换,转换成 RGBA 格式,使用 OpenGL 或 ANativeWindow 可以直接进行渲染。 当然,使用 OpenGL 进行渲染时,为了提升性能,可以将格式转换放到 GPU 上来做(即 shader 实现 YUV 到 RGB 的转换),也可以使用 OES 纹理直接接收 YUV 图像数据,这里就不进行展开讲了。

什么!FPS难道不是越高越好吗?

五迷三道 提交于 2020-09-28 01:50:15
导语 | 在很长一段时间里,手机的刷新率都是60Hz,随着硬件设备性能的提升,各种高刷新率的移动设备层出不穷,移动端也能有120Hz的显示设备。那么手机上的游戏真的是FPS越高越好吗?本期我们就来探索这其中的真相。文章作者:侯鑫,腾讯游戏引擎研发工程师。 一、背景 作为手机游戏开发者,我们的工作中有很多时间都在尝试优化自己的代码。比如让某一段逻辑执行的更快速,或降低一些迭代的频率, 减轻CPU负担 ,抑或通过各种骚操作在不降低画面质量的情况下, 减轻GPU负担 。 最终的目的都是想让使用不同性能设备的玩家都可以流畅的体验游戏。“卡不卡”也是玩家对游戏产生的第一印象之一,因此,我们的目的就是让游戏以最快的速度运行。 通常,评价一款游戏是否流畅的最直观的指标就是FPS(帧/秒)。那么, FPS真的是越高越好吗? 市面上评测硬件性能都是对比不同硬件下相同画质游戏的FPS,且越高越好(Higher is better)。 对于桌面平台来讲,它有持续稳定的供电与强劲的散热方案,不需要考虑发热与耗电量的问题,可以让硬件自由发挥。其次我们还要考虑显示设备(手机屏幕、电脑屏幕)的刷新率(RefreshRate)。 为了了解帧率(单位是FPS)与刷新率的关系,我们先来看看他们的定义: 1. 帧率(FrameRate) 帧率是GPU和CPU合作在游戏运行时,可产生的图像的数量,计量单位是帧/秒

qtcreator xcb异常无法启动

倖福魔咒の 提交于 2020-08-15 14:13:36
qt.qpa.plugin: Could not load the Qt platform plugin "xcb" in "" even though it was found. This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem. Available platform plugins are: eglfs, linuxfb, minimal, minimalegl, offscreen, vnc, wayland-egl, wayland, wayland-xcomposite-egl, wayland-xcomposite-glx, xcb. Aborted (core dumped) 引入环境变量:QT_PLUGIN_PATH=xxx/QtCreator/lib/QT/plugins(xxx为你的QT安装目录) 来源: oschina 链接: https://my.oschina.net/u/3278307/blog/4312159