diff options
author | wm4 <wm4@nowhere> | 2017-02-28 00:56:17 +0100 |
---|---|---|
committer | wm4 <wm4@nowhere> | 2017-02-28 00:57:51 +0100 |
commit | 97403839e5e8ac90e3b8cbff3014428edc1f45c9 (patch) | |
tree | 43636d519b5d7d6c42636b6566111048869a96d9 /video | |
parent | 75fc2bee1e47f93f1ad40331cbb34667c810ca9a (diff) | |
download | mpv-97403839e5e8ac90e3b8cbff3014428edc1f45c9.tar.bz2 mpv-97403839e5e8ac90e3b8cbff3014428edc1f45c9.tar.xz |
vf_vavpp: fix first-field mode
It didn't deinterlace at all. Oops.
Diffstat (limited to 'video')
-rw-r--r-- | video/filter/vf_vavpp.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/video/filter/vf_vavpp.c b/video/filter/vf_vavpp.c index 8f43b7f4ce..e3c107c91d 100644 --- a/video/filter/vf_vavpp.c +++ b/video/filter/vf_vavpp.c @@ -52,7 +52,7 @@ struct pipeline { }; struct vf_priv_s { - int deint_type; // 0: none, 1: discard, 2: double fps + int deint_type; int interlaced_only; int reversal_bug; bool do_deint; @@ -94,7 +94,7 @@ static void add_surfaces(struct vf_priv_s *p, struct surface_refs *refs, int dir // The array items must match with the "deint" suboption values. static const int deint_algorithm[] = { [0] = VAProcDeinterlacingNone, - [1] = VAProcDeinterlacingNone, // first-field, special-cased + [1] = VAProcDeinterlacingBob, // first-field, special-cased [2] = VAProcDeinterlacingBob, [3] = VAProcDeinterlacingWeave, [4] = VAProcDeinterlacingMotionAdaptive, @@ -433,7 +433,7 @@ static bool initialize(struct vf_instance *vf) buffers[i] = VA_INVALID_ID; for (int i = 0; i < num_filters; i++) { if (filters[i] == VAProcFilterDeinterlacing) { - if (p->deint_type < 2) + if (p->deint_type < 1) continue; VAProcFilterCapDeinterlacing caps[VAProcDeinterlacingCount]; int num = va_query_filter_caps(vf, VAProcFilterDeinterlacing, caps, |