如何在pygame.Overlay()上显示加载的图像

时间:2016-06-07 00:32:52

标签: python image pygame

我正在尝试在pygame中使用叠加来显示视频。麻烦的是我的帧被加载为RGB Surface(),而Overlay()。display()需要YUV格式。

我看到pygame.camera模块包含一个colorspace()函数,该函数应该能够将RGB Surface()转换为YUV。有谁知道如何做到这一点?转换和显示?

pygame.camera.colorspace()没有很好的记录。

如果这不起作用,有没有人知道如何通过使用PIL转换为YUV来做到这一点?

1 个答案:

答案 0 :(得分:0)

我还没有多少时间玩.Overlay()

但颜色空间功能似乎如下:

yuv_surface = pygame.camera.colorspace(rgb_surface,"YUV")

此示例运行时没有错误:

import pygame
import pygame.camera

pygame.init()
pygame.camera.init()

screen = pygame.display.set_mode((400,400))
rgb_surface = pygame.Surface((400,400))

yuv_surface = pygame.camera.colorspace(rgb_surface,"YUV")

screen.blit(yuv_surface,(0,0))

clock = pygame.time.Clock()

while True:
    pygame.display.flip()
    clock.tick(30)