diff options
author | wm4 <wm4@nowhere> | 2013-12-10 19:07:29 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2013-12-10 20:07:39 +0100 |
commit | 9838bf55657c3944150afec44668c3c3b559c1ff (patch) | |
tree | 6c4b37bddb6a7594a7abe361f2c5d2bad1280039 /video/decode/dec_video.c | |
parent | 218b9d3737134a9f619c49992a5fb34ad9e3733b (diff) | |
download | mpv-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/dec_video.c')
-rw-r--r-- | video/decode/dec_video.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/video/decode/dec_video.c b/video/decode/dec_video.c index 9a43ada4c4..4e97ef33ef 100644 --- a/video/decode/dec_video.c +++ b/video/decode/dec_video.c @@ -114,11 +114,6 @@ int video_get_colors(struct dec_video *d_video, const char *item, int *value) return 0; } -void video_reinit_vo(struct dec_video *d_video) -{ - video_vd_control(d_video, VDCTRL_REINIT_VO, NULL); -} - void video_uninit(struct dec_video *d_video) { if (d_video->vd_driver) { @@ -377,15 +372,13 @@ struct mp_image *video_decode(struct dec_video *d_video, return mpi; } -int mpcodecs_reconfig_vo(struct dec_video *d_video, - const struct mp_image_params *params) +int video_reconfig_filters(struct dec_video *d_video, + const struct mp_image_params *params) { struct MPOpts *opts = d_video->opts; struct mp_image_params p = *params; struct sh_video *sh = d_video->header->video; - d_video->vf_reconfig_count++; - mp_msg(MSGT_DECVIDEO, MSGL_V, "VIDEO: %dx%d %5.3f fps %5.1f kbps (%4.1f kB/s)\n", p.w, p.h, sh->fps, sh->i_bps * 0.008, |