summaryrefslogtreecommitdiffstats
path: root/libvo/video_out.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2012-10-20 23:32:45 +0200
committerwm4 <wm4@nowhere>2012-10-24 21:56:34 +0200
commit11ed093182f29c796ba6fd08f6c5c80e8fdb9349 (patch)
tree69f920eab72378a8c4b659d7dfd8b1bb81968029 /libvo/video_out.h
parent821c01a5f50284a839ab879724a5c67b3f855a84 (diff)
downloadmpv-11ed093182f29c796ba6fd08f6c5c80e8fdb9349.tar.bz2
mpv-11ed093182f29c796ba6fd08f6c5c80e8fdb9349.tar.xz
screenshot: allow taking screenshots with subtitles
This adds a new screenshot mode "subtitles", which basically takes the video frame as decoded, and renders subtitles into it. This may fail for some pixel formats, because libswscale sucks. If this becomes ever a real problem, the code could be changed to convert the image to RGBA first (or whatever the image writer wants), and then render the subtitles into it. This would avoid the additional image copy needed with vo_xv too. But for now, it seems better to go with the current method in the common case: vo_opengl creates an image copy anyway, and drawing bitmaps to yv12 is better, as no color space conversion is involved in draw_bmp.c's up/downsampling conversion.
Diffstat (limited to 'libvo/video_out.h')
-rw-r--r--libvo/video_out.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/libvo/video_out.h b/libvo/video_out.h
index ffb5c0c4f3..1c48b5fb06 100644
--- a/libvo/video_out.h
+++ b/libvo/video_out.h
@@ -105,6 +105,8 @@ struct voctrl_screenshot_args {
// image data directly.
// Is never NULL. (Failure has to be indicated by returning VO_FALSE.)
struct mp_image *out_image;
+ // Whether the VO rendered OSD/subtitles into out_image
+ bool has_osd;
};
typedef struct {