pyglet

2013-11-03 8 views
0

을 사용하여 파이 게임에 비디오를 임베드하려고 시도했습니다. 파이 그램 라이브러리를 사용하여 파이 게임 표면에 비디오를 표시하려고 시도했습니다. 즉, 프레임을 가져 와서 재생 한 다음 이미지로 변환하려고합니다. 나는 avbin 설치를 통해 내 방식 전투를 관리하지만 지금은 내 코드 유형의 오류를 치고있어 내가 실행할 때pyglet

def cutscene(window_surface, filename): 
player = pyglet.media.Player() 
source = pyglet.media.load(filename) 
player.queue(source) 
player.play() 

pygame.display.flip() 

while True: 

    window_surface.fill(0) 

    player.dispatch_events() 

    tex = player.get_texture() 
    raw = tex.get_image_data().get_data('RGBA',tex.width*4) 
    raw = ctypes.string_at(ctypes.addressof(raw), ctypes.sizeof(raw)) 
    img = pygame.image.frombuffer(raw, (tex.width, tex.height), 'RGBA') 
    window_surface.blit(img, (0,0)) 

    pygame.display.flip() 

, 나는 다음과 같은 오류를 나는 것 같다 할

Traceback (most recent call last): 
    File "dino_game.py", line 348, in <module> 
    main() 
    File "dino_game.py", line 45, in main 
    cutscene(window_surface, "Cutscenes/Cutscene1.mov") 
    File "dino_game.py", line 68, in cutscene 
    raw = tex.get_image_data().get_data('RGBA',tex.width*4) 
AttributeError: 'NoneType' object has no attribute 'get_image_data' 

아무것도 얻을 그것을 해결하십시오

EDIT : 그럼이 파일과 pyglet에서 제공하는 샘플 파일을 테스트 한 후, 내가 사용하는 파일 형식에 관계없이이 오류가 발생하는 것 같습니다. 이것이 pyglet 또는 AVbin에서 설치 오류 일 수 있습니까?

+0

을 당신은을 사용하지 않는 [PyGame library] (http://pygame.org), 그렇죠? 그것이 "파이 게임"과 같은 이름의 태그가 일반적으로 의미하는 바입니다. 나는 당신이 "파이썬으로 작성된 게임"에 대한 속기라고 생각하지만, 매우 혼란 스럽습니다. – delnan

+0

예, 함수에 건네지는 표면은 앞에서 선언 한 파이 게임입니다 : 'window_surface = pygame.display.set_mode ((1336,768))' – Ryytikki

+0

Pygame과 pyglet을 모두 병렬로 사용하고 있습니까? – delnan

답변