を使用してPythonでYUVビューアに取り組んでいpygame
ます。
以下のコードは、YUV 4:2:0の1フレームを表示します
#!/usr/bin/env python
import pygame
W = 352
H = 288
WH = (W, H)
pygame.init()
screen = pygame.display.set_mode(WH)
overlay = pygame.Overlay(pygame.YV12_OVERLAY, WH)
fd = open('foreman.yuv', 'rb')
y = fd.read(W * H)
u = fd.read(W * H / 4)
v = fd.read(W * H / 4)
overlay = pygame.Overlay(pygame.YV12_OVERLAY, WH)
overlay.display((y, u, v))
このコードは、位置(0,0)に16x16の半透明の長方形を表示します
pygame.init()
screen = pygame.display.set_mode(WH)
s = pygame.Surface((16,16))
s.set_alpha(128)
s.fill((255,255,255))
screen.blit(s, (0,0))
pygame.display.flip()
しかし、どうすればそれらを組み合わせることができますか?つまり、YUVデータが長方形を通して見えるように、YUVデータの上の位置(0,0)に半透明の長方形を表示するにはどうすればよいですか?