![](/img/trans.png)
[英]Kivy can't open a window on Raspberry Pi 4, cites a lack of x11 server even though window provider is SDL2
[英]Kivy on Raspberry Pi: changing provider from EGL to SDL2?
在我的 Raspberry Pi 上運行 Kivy 應用程序會得到如下輸出:
[INFO ] [Logger ] Record log in /home/pi/.kivy/logs/kivy_16-04-26_23.txt
[INFO ] [Kivy ] v1.9.2-dev0
[INFO ] [Python ] v2.7.9 (default, Mar 8 2015, 00:52:26)
[GCC 4.9.2]
[INFO ] [Factory ] 193 symbols loaded
[INFO ] [Image ] Providers: img_tex, img_dds, img_gif, img_pygame, img_pil (img_ffpyplayer ignored)
[INFO ] [Text ] Provider: pygame
[INFO ] [Window ] Provider: egl_rpi
[INFO ] [GL ] OpenGL version <OpenGL ES 2.0>
[INFO ] [GL ] OpenGL vendor <Broadcom>
[INFO ] [GL ] OpenGL renderer <VideoCore IV HW>
[INFO ] [GL ] OpenGL parsed version: 2, 0
[INFO ] [GL ] Shading version <OpenGL ES GLSL ES 1.00>
[INFO ] [GL ] Texture max size <2048>
[INFO ] [GL ] Texture max units <8>
[INFO ] [Shader ] fragment shader: <Compiled>
[INFO ] [Shader ] vertex shader: <Compiled>
[INFO ] [Window ] virtual keyboard not allowed, single mode, not docked
[INFO ] [OSC ] using <multiprocessing> for socket
[INFO ] [Base ] Start application main loop
[INFO ] [GL ] NPOT texture support is available
但是,沒有窗口啟動。 注意Provider: egl_rpi
。
在我的 Windows Kivy 中,提供程序是 SDL2。 此外,我可以使用 SDL 作為 Raspberry Pi 上的提供程序啟動一個示例 mp3 視頻:
sudo SDL_VIDEODRIVER=fbcon SDL_FBDEV=/dev/fb1 mplayer -vo sdl -framedrop test.mpg
我的問題是:如何將 Pi 上的 Kivy 的提供程序更改為 SDL2?
將以下代碼行添加到 Python 文件的頂部應該將提供程序切換到 sdl2
import os
os.environ['KIVY_WINDOW'] = 'sdl2'
參考: 這里
我和你有同樣的問題, egl_rpi
沒有顯示窗口。 我切換到SDL2
但應用程序無法加載。 我相信這是由於我的 3.5" SPI 顯示器的自定義驅動程序。也許你的視頻驅動程序會更好。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.