summaryrefslogtreecommitdiffstats
path: root/video/decode/vd.h
diff options
context:
space:
mode:
authorwm4 <wm4@nowhere>2013-12-10 19:07:29 +0100
committerwm4 <wm4@nowhere>2013-12-10 20:07:39 +0100
commit9838bf55657c3944150afec44668c3c3b559c1ff (patch)
tree6c4b37bddb6a7594a7abe361f2c5d2bad1280039 /video/decode/vd.h
parent218b9d3737134a9f619c49992a5fb34ad9e3733b (diff)
downloadmpv-9838bf55657c3944150afec44668c3c3b559c1ff.tar.bz2
mpv-9838bf55657c3944150afec44668c3c3b559c1ff.tar.xz
video: move video filter chain initialization from decoder to player
This should help fixing some issues (like not draining video frames correctly on reinit), as well as decoupling the decoder, filter chain, and VO code. I also wanted to make the hardware video decoding fallback work properly if software-only video filters are inserted. This currently has the issue that the fallback is too violent, and throws away a bunch of demuxer packets needed to restart software decoding properly. But keeping "backup" packets turned out as too hacky, so I'm not doing this, at least not yet.
Diffstat (limited to 'video/decode/vd.h')
-rw-r--r--video/decode/vd.h7
1 files changed, 2 insertions, 5 deletions
diff --git a/video/decode/vd.h b/video/decode/vd.h
index bf3a8e4374..35c2739aa8 100644
--- a/video/decode/vd.h
+++ b/video/decode/vd.h
@@ -42,12 +42,9 @@ typedef struct vd_functions
extern const vd_functions_t *const mpcodecs_vd_drivers[];
enum vd_ctrl {
- VDCTRL_GET_PARAMS = 1, // retrieve struct mp_image_params
- VDCTRL_RESET, // reset decode state after seeking
+ VDCTRL_RESET = 1, // reset decode state after seeking
VDCTRL_QUERY_UNSEEN_FRAMES, // current decoder lag
- VDCTRL_REINIT_VO, // reinit filter/VO chain
+ VDCTRL_FORCE_HWDEC_FALLBACK, // force software decoding fallback
};
-int mpcodecs_reconfig_vo(struct dec_video *vd, const struct mp_image_params *params);
-
#endif /* MPLAYER_VD_H */