50 #ifndef XineVideoProvider_H_
51 #define XineVideoProvider_H_
53 #include "mb/interface/IContinuousMediaProvider.h"
55 using namespace ::br::pucrio::telemidia::ginga::core::mb;
57 #ifndef METRONOM_INTERNAL
58 #define METRONOM_INTERNAL 1
67 #include <xine/xineutils.h>
68 #include <xine/xine_internal.h>
76 IProviderListener* listener;
78 xine_video_port_t* vo;
79 xine_audio_port_t* ao;
80 xine_stream_t* stream;
87 typedef void (*DVOutputCallback) (
void *cdata,
91 DFBSurfacePixelFormat format,
92 DFBRectangle *dest_rect );
95 IDirectFBSurface *destination;
96 IDirectFBSurface *subpicture;
98 DVOutputCallback output_cb;
101 DVFrameCallback frame_cb;
111 namespace telemidia {
117 GingaScreenID myScreen;
129 bool initializeXine(
const char* mrl);
130 void initializeAudio();
133 void setLoadSymbol(
string symbol);
134 string getLoadSymbol();
136 bool getHasVisual(){
return true;};
138 void setAVPid(
int aPid,
int vPid);
139 void* getProviderContent();
140 void setProviderContent(
void* content){};
144 void getVideoSurfaceDescription(DFBSurfaceDescription* dsc);
145 IDirectFBSurface* getPerfectDFBSurface();
151 static void dynamicRenderCallBack(
void* surface);
152 static void outputCallBack(
157 DFBSurfacePixelFormat format,
158 DFBRectangle *dest_rect);
161 void getOriginalResolution(
int* width,
int* height);
162 double getTotalMediaTime();
164 double getMediaTime();
165 void setMediaTime(
double pos);
168 bool updateVisualData(
ISurface* surface);
175 void resume(
ISurface* surface,
bool hasVisual=
true);
178 void setSoundLevel(
float level);
180 void refreshDR(
void* data){};
Definition: XineVideoProvider.h:115
Definition: NetworkUtil.h:53
Definition: IContinuousMediaProvider.h:71
Definition: XineVideoProvider.h:73
Definition: IProviderListener.h:59
Definition: XineVideoProvider.h:94
Definition: ISurface.h:64