[Mesa-dev] [PATCH] st/vdpau: Revert "change the order in which filters are applied(v3)"
Christian König
deathsimple at vodafone.de
Fri Aug 26 07:57:55 UTC 2016
From: Christian König <christian.koenig at amd.com>
This reverts commit 09dff7ae2e179d5a3490481762c6bd3d50430c9f.
Turned out this can cause some artifacts in the output. Let's revert
it for now until we have sorted out all issues.
Signed-off-by: Christian König <christian.koenig at amd.com>
---
src/gallium/state_trackers/vdpau/mixer.c | 28 ++++++++++------------------
1 file changed, 10 insertions(+), 18 deletions(-)
diff --git a/src/gallium/state_trackers/vdpau/mixer.c b/src/gallium/state_trackers/vdpau/mixer.c
index 56b667d..cb0ef03 100644
--- a/src/gallium/state_trackers/vdpau/mixer.c
+++ b/src/gallium/state_trackers/vdpau/mixer.c
@@ -240,8 +240,8 @@ VdpStatus vlVdpVideoMixerRender(VdpVideoMixer mixer,
struct u_rect rect, clip, *prect, dirty_area;
unsigned i, layer = 0;
struct pipe_video_buffer *video_buffer;
- struct pipe_sampler_view *sampler_view, **sampler_views;
- struct pipe_surface *surface, **surfaces;
+ struct pipe_sampler_view *sampler_view;
+ struct pipe_surface *surface;
vlVdpVideoMixer *vmixer;
vlVdpSurface *surf;
@@ -325,22 +325,6 @@ VdpStatus vlVdpVideoMixerRender(VdpVideoMixer mixer,
}
}
- surfaces = video_buffer->get_surfaces(video_buffer);
- sampler_views = video_buffer->get_sampler_view_planes(video_buffer);
-
- for(i = 0; i < VL_MAX_SURFACES; ++i) {
- if(sampler_views[i] != NULL && surfaces[i] != NULL) {
- if (vmixer->noise_reduction.filter)
- vl_median_filter_render(vmixer->noise_reduction.filter,
- sampler_views[i], surfaces[i]);
-
- if (vmixer->sharpness.filter)
- vl_matrix_filter_render(vmixer->sharpness.filter,
- sampler_views[i], surfaces[i]);
-
- }
- }
-
prect = RectToPipe(video_source_rect, &rect);
if (!prect) {
rect.x0 = 0;
@@ -410,6 +394,14 @@ VdpStatus vlVdpVideoMixerRender(VdpVideoMixer mixer,
else {
vl_compositor_render(&vmixer->cstate, compositor, surface, &dirty_area, true);
+ if (vmixer->noise_reduction.filter)
+ vl_median_filter_render(vmixer->noise_reduction.filter,
+ sampler_view, surface);
+
+ if (vmixer->sharpness.filter)
+ vl_matrix_filter_render(vmixer->sharpness.filter,
+ sampler_view, surface);
+
if (vmixer->bicubic.filter)
vl_bicubic_filter_render(vmixer->bicubic.filter,
sampler_view, dst->surface,
--
2.5.0
More information about the mesa-dev
mailing list