Pygame 无头设置
Pygame headless setup
我正在使用 pygame 的操纵杆 api 在无头系统上对我的项目使用操纵杆,但是 pygame 需要 "screen" 所以我已经设置一个虚拟视频系统来解决这个问题。它工作正常但现在突然给我这个错误:
Traceback (most recent call last):
File "compact.py", line 10, in <module>
screen = display.set_mode((1, 1))
pygame.error: Unable to open a console terminal
这是我所拥有的无头设置,应该可以解决这个问题。
from pygame import *
import os
import RPi.GPIO as GPIO
os.environ["SDL_VIDEODRIVER"] = "dummy"
screen = display.set_mode((1, 1))
Pygame 正在尝试打开控制台,这意味着您 运行 通过 ssh 或 cron 或无法访问控制台的其他地方使用此脚本。我会尝试跳过 set_mode (因为虚拟驱动程序可能没有要设置的模式)并尝试初始化显示。您可以尝试 运行 它作为 root,这可能会授予它访问权限。您也可以尝试告诉它使用 fbcon。
os.putenv('SDL_VIDEODRIVER', 'fbcon')
pygame.display.init()
我正在使用 pygame 的操纵杆 api 在无头系统上对我的项目使用操纵杆,但是 pygame 需要 "screen" 所以我已经设置一个虚拟视频系统来解决这个问题。它工作正常但现在突然给我这个错误:
Traceback (most recent call last):
File "compact.py", line 10, in <module>
screen = display.set_mode((1, 1))
pygame.error: Unable to open a console terminal
这是我所拥有的无头设置,应该可以解决这个问题。
from pygame import *
import os
import RPi.GPIO as GPIO
os.environ["SDL_VIDEODRIVER"] = "dummy"
screen = display.set_mode((1, 1))
Pygame 正在尝试打开控制台,这意味着您 运行 通过 ssh 或 cron 或无法访问控制台的其他地方使用此脚本。我会尝试跳过 set_mode (因为虚拟驱动程序可能没有要设置的模式)并尝试初始化显示。您可以尝试 运行 它作为 root,这可能会授予它访问权限。您也可以尝试告诉它使用 fbcon。
os.putenv('SDL_VIDEODRIVER', 'fbcon')
pygame.display.init()