32 #ifndef PTLIB_PVIDEOIO_H
33 #define PTLIB_PVIDEOIO_H
38 #include <ptbuildopts.h>
58 friend ostream &
operator<<(ostream & strm, ResizeMode mode);
316 virtual PBoolean Pan (
long value,
bool absolute =
false);
317 virtual PBoolean Tilt(
long value,
bool absolute =
false);
318 virtual PBoolean Zoom(
long value,
bool absolute =
false);
324 virtual void Reset();
562 unsigned & minHeight,
656 Attributes & attributes
662 const Attributes & attributes
699 P_REMOVE_VIRTUAL(
int, GetBrightness(), 0);
700 P_REMOVE_VIRTUAL(
PBoolean, SetBrightness(
unsigned),
false);
701 P_REMOVE_VIRTUAL(
int, GetWhiteness(), 0);
702 P_REMOVE_VIRTUAL(
PBoolean, SetWhiteness(
unsigned),
false);
703 P_REMOVE_VIRTUAL(
int, GetColour(), 0);
704 P_REMOVE_VIRTUAL(
PBoolean, SetColour(
unsigned),
false);
705 P_REMOVE_VIRTUAL(
int, GetContrast(), 0);
706 P_REMOVE_VIRTUAL(
PBoolean, SetContrast(
unsigned),
false);
707 P_REMOVE_VIRTUAL(
int, GetHue(), 0);
708 P_REMOVE_VIRTUAL(
PBoolean, SetHue(
unsigned),
false);
709 P_REMOVE_VIRTUAL(
PBoolean, GetParameters(
int *,
int *,
int *,
int *,
int *),
false);
777 const OpenArgs & args,
814 bool & keyFrameNeeded
825 bool & keyFrameNeeded,
929 #ifdef SHOULD_BE_MOVED_TO_PLUGIN
940 PVideoOutputDevicePPM();
966 unsigned frameNumber;
969 #endif // SHOULD_BE_MOVED_TO_PLUGIN
1039 const OpenArgs & args,
1059 Capabilities * capabilities,
1068 Capabilities * caps,
1117 PINDEX * bytesReturned,
1123 PINDEX * bytesReturned = NULL
1130 PINDEX * bytesReturned,
1136 PINDEX * bytesReturned = NULL
1181 #define PCREATE_VIDINPUT_PLUGIN(name) \
1182 static PVideoInputPluginServiceDescriptor<PVideoInputDevice_##name> PVideoInputDevice_##name##_descriptor; \
1183 PCREATE_PLUGIN(name, PVideoInputDevice, &PVideoInputDevice_##name##_descriptor)
1186 #define P_FAKE_VIDEO_DRIVER "FakeVideo"
1187 #define P_FAKE_VIDEO_PREFIX "Fake/"
1188 #define P_FAKE_VIDEO_MOVING_BLOCKS P_FAKE_VIDEO_PREFIX"MovingBlocks"
1189 #define P_FAKE_VIDEO_MOVING_LINE P_FAKE_VIDEO_PREFIX"MovingLine"
1190 #define P_FAKE_VIDEO_BOUNCING_BOXES P_FAKE_VIDEO_PREFIX"BouncingBoxes"
1191 #define P_FAKE_VIDEO_SOLID_COLOUR P_FAKE_VIDEO_PREFIX"SolidColour"
1192 #define P_FAKE_VIDEO_TEXT P_FAKE_VIDEO_PREFIX"Text"
1193 #define P_FAKE_VIDEO_NTSC P_FAKE_VIDEO_PREFIX"NTSCTest"
1198 #define P_APPLICATION_VIDEO_DRIVER "Application"
1207 #define P_VIDEO_FILE_DRIVER "YUVFile"
1212 #define P_VIDEO_FOR_WINDOWS_DRIVER "VideoForWindows"
1217 #define P_DIRECT_SHOW_DRIVER "DirectShow"
1234 #define PCREATE_VIDOUTPUT_PLUGIN(name) \
1235 static PVideoOutputPluginServiceDescriptor<PVideoOutputDevice_##name> PVideoOutputDevice_##name##_descriptor; \
1236 PCREATE_PLUGIN(name, PVideoOutputDevice, &PVideoOutputDevice_##name##_descriptor)
1238 #define P_NULL_VIDEO_DRIVER "NULLOutput"
1239 #define P_NULL_VIDEO_DEVICE "Null Video Out"
1245 #define P_MSWIN_VIDEO_DRIVER "Window"
1246 #define P_MSWIN_VIDEO_PREFIX "MSWIN"
1247 #define P_MSWIN_VIDEO_DEVICE(x,y,width,height) P_MSWIN_VIDEO_PREFIX " X=" x " Y=" y " WIDTH=" width " HEIGHT=" height
1254 #include <SDL_main.h>
1256 #define P_SDL_VIDEO_DRIVER "SDL"
1257 #define P_SDL_VIDEO_PREFIX "SDL"
1258 #define P_SDL_VIDEO_DEVICE(x,y,width,height) P_SDL_VIDEO_PREFIX " X=" x " Y=" y " WIDTH=" width " HEIGHT=" height
1285 #endif // PTLIB_PVIDEOIO_H