Yes, correct.

-----Original Message-----
From: Libva [mailto:[email protected]] On Behalf Of Holger 
Kaelberer
Sent: Saturday, May 17, 2014 1:31 AM
To: [email protected]
Subject: Re: [Libva] VPP Deinterlacing problem

Hi

On 05/16/2014 06:36 PM, Steven Toth wrote:
> On Thu, May 15, 2014 at 10:01 PM, Zhao, Halley <[email protected]> wrote:
>>> Question: Does Motion Adaption implementation (unlike Bob) require two 
>>> distinct source surfaces plus an ADDITIONAL surface for the result?
>> Yes. A new surface is required for the result surface.
> 
> Thanks. Just to be clear, the resulting deinterlaced content is 
> written to the forward_reference surface, correct?

No, the target/output/destination surface for vpp goes to the render_target 
param of vaBeginPicture().

Forward references are references to already available surfaces needed for 
advanced deinterlacing (forward temporal direction) as are backward references 
(backward temporal direction) and go to the
VAProcPipelineParameterBuffer:

pipeline_param->forward_references      = forward_references;
pipeline_param->num_forward_references  = num_forward_references_used;
pipeline_param->backward_references     = backward_references;
pipeline_param->num_backward_references = num_bacward_references_used;

... as does the source/interlaced surface:

pipeline_param->surface = src_surface;  // current to-be-deinterlaced surface

Have a look at how it is done in gst-vaapi:
https://gitorious.org/vaapi/gstreamer-vaapi/source/c12d80eb88359a4a5babe8ca3a7fd82397c7838a:gst-libs/gst/vaapi/gstvaapifilter.c#L1298
and the "Detailed Description" on 
http://people.freedesktop.org/~gb/vaapi/vpp/group__api__vpp.html

Holger
_______________________________________________
Libva mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libva
_______________________________________________
Libva mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/libva

Reply via email to