Python 无头树莓皮零上的Pygame显示初始化(树莓巴斯特Lite)
我有Pi Zero运行Raspbian Buster Lite,没有附加显示器。它在启动时运行python程序(crontab@reboot entry),如下所示:Python 无头树莓皮零上的Pygame显示初始化(树莓巴斯特Lite),python,raspberry-pi,pygame,raspberry-pi-zero,debian-buster,Python,Raspberry Pi,Pygame,Raspberry Pi Zero,Debian Buster,我有Pi Zero运行Raspbian Buster Lite,没有附加显示器。它在启动时运行python程序(crontab@reboot entry),如下所示: @reboot sudo su username/home/username/launcher.sh>/home/username/crontab.log 2>&1 我必须初始化pygame显示,因为我需要处理声音对象结束事件。如果不初始化显示,则不会触发事件 代码在此行中断,错误为“pygame.error:无法打开控制台终端”
@reboot sudo su username/home/username/launcher.sh>/home/username/crontab.log 2>&1
我必须初始化pygame显示,因为我需要处理声音对象结束事件。如果不初始化显示,则不会触发事件
代码在此行中断,错误为“pygame.error:无法打开控制台终端”
我的代码在以前的Raspbian(Stretch)版本中使用。我尝试过各种驱动程序,添加/删除了pygame.display.set_模式((1,1))
,但运气不好
我知道其他帖子也有同样的问题,但我已经用尽了所有这些方法——将驱动程序更改为fbcon,跳过set_模式行,等等。唯一有效的方法是以root用户身份运行程序:
@reboot/home/username/launcher.sh>/home/username/crontab.log 2>&1
但从安全角度来看,这是个坏主意。我宁愿以非特权用户的身份运行它
是否有一种新的破解方法让它通过 os.putenv('SDL_VIDEODRIVER', 'dummy')
pygame.display.init() # error at this line