mirror of https://github.com/libsdl-org/SDL
Added SDL_HINT_VIDEO_DUMMY_SAVE_FRAMES and SDL_HINT_VIDEO_OFFSCREEN_SAVE_FRAMES
This commit is contained in:
parent
f370e1a645
commit
d9f9e9e764
|
@ -3037,6 +3037,18 @@ extern "C" {
|
||||||
*/
|
*/
|
||||||
#define SDL_HINT_VIDEO_DRIVER "SDL_VIDEO_DRIVER"
|
#define SDL_HINT_VIDEO_DRIVER "SDL_VIDEO_DRIVER"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A variable controlling whether the dummy video driver saves output frames.
|
||||||
|
*
|
||||||
|
* - "0": Video frames are not saved to disk. (default)
|
||||||
|
* - "1": Video frames are saved to files in the format "SDL_windowX-Y.bmp", where X is the window ID, and Y is the frame number.
|
||||||
|
*
|
||||||
|
* This hint can be set anytime.
|
||||||
|
*
|
||||||
|
* \since This hint is available since SDL 3.0.0.
|
||||||
|
*/
|
||||||
|
#define SDL_HINT_VIDEO_DUMMY_SAVE_FRAMES "SDL_VIDEO_DUMMY_SAVE_FRAMES"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* If eglGetPlatformDisplay fails, fall back to calling eglGetDisplay.
|
* If eglGetPlatformDisplay fails, fall back to calling eglGetDisplay.
|
||||||
*
|
*
|
||||||
|
@ -3101,6 +3113,20 @@ extern "C" {
|
||||||
*/
|
*/
|
||||||
#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS"
|
#define SDL_HINT_VIDEO_MINIMIZE_ON_FOCUS_LOSS "SDL_VIDEO_MINIMIZE_ON_FOCUS_LOSS"
|
||||||
|
|
||||||
|
/**
|
||||||
|
* A variable controlling whether the offscreen video driver saves output frames.
|
||||||
|
*
|
||||||
|
* This only saves frames that are generated using software rendering, not accelerated OpenGL rendering.
|
||||||
|
*
|
||||||
|
* - "0": Video frames are not saved to disk. (default)
|
||||||
|
* - "1": Video frames are saved to files in the format "SDL_windowX-Y.bmp", where X is the window ID, and Y is the frame number.
|
||||||
|
*
|
||||||
|
* This hint can be set anytime.
|
||||||
|
*
|
||||||
|
* \since This hint is available since SDL 3.0.0.
|
||||||
|
*/
|
||||||
|
#define SDL_HINT_VIDEO_OFFSCREEN_SAVE_FRAMES "SDL_VIDEO_OFFSCREEN_SAVE_FRAMES"
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* A variable controlling whether all window operations will block until
|
* A variable controlling whether all window operations will block until
|
||||||
* complete.
|
* complete.
|
||||||
|
|
|
@ -61,7 +61,7 @@ int SDL_DUMMY_UpdateWindowFramebuffer(SDL_VideoDevice *_this, SDL_Window *window
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Send the data to the display */
|
/* Send the data to the display */
|
||||||
if (SDL_getenv("SDL_VIDEO_DUMMY_SAVE_FRAMES")) {
|
if (SDL_GetHintBoolean(SDL_HINT_VIDEO_DUMMY_SAVE_FRAMES, SDL_FALSE)) {
|
||||||
char file[128];
|
char file[128];
|
||||||
(void)SDL_snprintf(file, sizeof(file), "SDL_window%" SDL_PRIu32 "-%8.8d.bmp",
|
(void)SDL_snprintf(file, sizeof(file), "SDL_window%" SDL_PRIu32 "-%8.8d.bmp",
|
||||||
SDL_GetWindowID(window), ++frame_number);
|
SDL_GetWindowID(window), ++frame_number);
|
||||||
|
|
|
@ -62,7 +62,7 @@ int SDL_OFFSCREEN_UpdateWindowFramebuffer(SDL_VideoDevice *_this, SDL_Window *wi
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Send the data to the display */
|
/* Send the data to the display */
|
||||||
if (SDL_getenv("SDL_VIDEO_OFFSCREEN_SAVE_FRAMES")) {
|
if (SDL_GetHintBoolean(SDL_HINT_VIDEO_OFFSCREEN_SAVE_FRAMES, SDL_FALSE)) {
|
||||||
char file[128];
|
char file[128];
|
||||||
(void)SDL_snprintf(file, sizeof(file), "SDL_window%" SDL_PRIu32 "-%8.8d.bmp",
|
(void)SDL_snprintf(file, sizeof(file), "SDL_window%" SDL_PRIu32 "-%8.8d.bmp",
|
||||||
SDL_GetWindowID(window), ++frame_number);
|
SDL_GetWindowID(window), ++frame_number);
|
||||||
|
|
Loading…
Reference in New Issue