From 9838bf55657c3944150afec44668c3c3b559c1ff Mon Sep 17 00:00:00 2001 From: wm4 Date: Tue, 10 Dec 2013 19:07:29 +0100 Subject: 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. --- video/decode/vd.h | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) (limited to 'video/decode/vd.h') 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 */ -- cgit v1.2.3