2
puts the yuv images onto a surface
3
Copyright (C) 2000 Martin Vogt
5
This program is free software; you can redistribute it and/or modify
6
it under the terms of the GNU Library General Public License as published by
7
the Free Software Foundation.
9
For more information look at the file COPYRIGHT in this package
16
#ifndef __RENDERMACHINE_H
17
#define __RENDERMACHINE_H
23
RenderMachine. We still have the problem, because of performance,
24
that we cannot have a yuv picture format in the decoder
25
and one in the output to x11. they must be shared.
26
XV support then directly works on them and SDL images
27
can be exported to the decoder as well.
29
Another point is : mode switch. User want desktop->fullscreen switch.
30
Due to the threaded nature, we must have a single synchronization
31
point, when we know that the decoder currently does _not_ decode
32
so that we can switch the imaged and free the memory.
34
Some points are currently unclear, for example how to handle
35
applications, which want to redirect the image into their own
36
buffers, but hey, there are that many classes and layers
37
I really think it should be doable somehow
46
#include "x11/x11Surface.h"
50
#include "sdl/sdlSurface.h"
53
#include "pictureArray.h"
54
#include "../abstract/abs_thread.h"
60
PictureArray* pictureArray;
72
int openWindow(int width, int height,const char *title);
77
PictureArray* lockPictureArray();
78
void unlockPictureArray(PictureArray* pictureArray);
80
void config(const char* key, const char* value,void* user_data);
84
void putImage(YUVPicture* pic,TimeStamp* waitTime,TimeStamp* earlyTime);
86
int switchToMode(int mode);