Я хочу использовать pygame на raspi для отображения изображений на экране, подключенном к порту hdmi raspi. Я хочу сделать это через ssh-соединение.
В качестве первого теста я попробовал очень простой (и классический) скрипт, который тестирует доступные драйверы:
import os
import pygame
disp_no = os.getenv('DISPLAY')
print("I'm running under {}".format(disp_no))
drivers = ['directfb', 'fbcon', 'svgalib']
found = False
for driver in drivers:
if not os.getenv('SDL_VIDEODRIVER'):
os.putenv('SDL_VIDEODRIVER', driver)
os.environ["SDL_FBDEV"] = "/dev/fb0"
try:
pygame.display.init()
print('OK with',driver)
except pygame.error:
print('Driver: {0} failed.'.format(driver))
continue
found = True
break
if not found:
raise Exception('No suitable video driver found!')
Вотрезультаты моих тестов:
- из сеанса ssh: не найден подходящий видеодрайвер
- из сеанса ssh в качестве пользователя root: ОК с directfb
- из консоли tty(с клавиатурой, подключенной к raspi): ОК с directfb
Мой вопрос: почему ситуация 1 приводит к сбою. Что мне не хватает и что мне делать?
Обратите внимание, что разрешения для / dev / fb0 и всех / dev / tty ?? установлены так, что я могу читать / писать, не будучи root. Также обратите внимание, что у меня не работает X-сервер.