topic Re: Frame Buffer Deinterlaceing in Video and Audiohttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066500#M30263
I believe you could modify it. I think there was some issues with the how the DMA's expect the allocated memory to be created.<BR /><BR />I understand the baremetal world much better than the Linux. But I image that both progressive and an interlaced frame store 1 780x480 frame per 30Hz.<BR /><BR />So if you allocate that size and then write data in on odd rows and then once you complete the Odd Frame write it into the Even Rows and only after that marking the frame as Done. This would cost almost nothing from a processor perspective.<BR /><BR />Anything you could share on why it would be inefficient would be great.Mon, 20 Jan 2020 17:01:45 GMTgloryhunter12020-01-20T17:01:45ZFrame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065085#M30172
<P>I am trying to understand the detials of how the Framebuffer handles the FID. Reviewing the code added in 2018.3 it seems like there is a FID offset. Is stride just configured so that the framebuffer will automaticalyl stripe the data into memory (meaning the the odd and even are just stored in memory as a "progressive" frame). Or is it just two seperate frame? Nothing appears to have the detials of the implemenation.</P>Thu, 16 Jan 2020 01:17:04 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065085#M30172gloryhunter12020-01-16T01:17:04ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065692#M30217
<P>HI <LI-USER uid="124837"></LI-USER>&nbsp;</P>
<P>I am quite sure the Video Frame buffer is storying each field individually. So it a frame = a field</P>Fri, 17 Jan 2020 10:50:49 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065692#M30217florentw2020-01-17T10:50:49ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065832#M30234
<P>In this case we have a 720x480 interlaced Video Input @ 30Hz. We have stripped off the front and back poarchs so we&nbsp; only have active video.&nbsp;</P><P>We provide 4:2:2 data at one pixel per clock cycle to the Video in to AXI-S. We have configured that AXI-S to convert to the 4:2:2 stream data. It then provides this to the Frame buffer with Field ID.</P><P>Based on your comment in memory we would see a 720x240&nbsp;@ 60Hz progressive video? The Frame buffer does not attempt to deinterlace based on the position and instead just reduces the number of horizontal rows.&nbsp;</P><P>Is that correct?</P>Fri, 17 Jan 2020 16:16:34 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065832#M30234gloryhunter12020-01-17T16:16:34ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065834#M30235
<BLOCKQUOTE><HR /><LI-USER uid="124837"></LI-USER>&nbsp;wrote:<BR />
<P>Based on your comment in memory we would see a 720x240&nbsp;@ 60Hz progressive video? The Frame buffer does not attempt to deinterlace based on the position and instead just reduces the number of horizontal rows.&nbsp;</P>
<P>Is that correct?</P>
<HR /></BLOCKQUOTE>
<P>Yes correct. There is no deinterlacing done by the Video frame buffer. It should only store the frame/fields</P>Fri, 17 Jan 2020 16:22:07 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065834#M30235florentw2020-01-17T16:22:07ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065843#M30237
Final question: The linux driver provided also doesn't deinterlace the data correct?Fri, 17 Jan 2020 17:00:04 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1065843#M30237gloryhunter12020-01-17T17:00:04ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066362#M30255
<P>Hi <LI-USER uid="124837"></LI-USER>&nbsp;</P>
<P>Yes correct.</P>
<P>However, maybe if you use a gstreamer pipe there might be some plugins which will do it in SW</P>Mon, 20 Jan 2020 08:32:51 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066362#M30255florentw2020-01-20T08:32:51ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066495#M30261
<P>I believe that is the path we are looking at. The was a small amount of hope that the Linux Drive place the drive into memory to make it look like a progressive frame.</P><P>&nbsp;</P>Mon, 20 Jan 2020 16:27:39 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066495#M30261gloryhunter12020-01-20T16:27:39ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066499#M30262
<BLOCKQUOTE><HR /><LI-USER uid="124837"></LI-USER>&nbsp;wrote:<BR />
<P>I believe that is the path we are looking at. The was a small amount of hope that the Linux Drive place the drive into memory to make it look like a progressive frame.</P>
<P>&nbsp;</P>
<HR /></BLOCKQUOTE>
<P>Well this would be an inefficient way of using the memory for most cases</P>
<P>I am not sure about the linux driver but maybe you can play with the stride for this. You might need to modify the driver for this.</P>Mon, 20 Jan 2020 16:56:23 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066499#M30262florentw2020-01-20T16:56:23ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066500#M30263
I believe you could modify it. I think there was some issues with the how the DMA's expect the allocated memory to be created.<BR /><BR />I understand the baremetal world much better than the Linux. But I image that both progressive and an interlaced frame store 1 780x480 frame per 30Hz.<BR /><BR />So if you allocate that size and then write data in on odd rows and then once you complete the Odd Frame write it into the Even Rows and only after that marking the frame as Done. This would cost almost nothing from a processor perspective.<BR /><BR />Anything you could share on why it would be inefficient would be great.Mon, 20 Jan 2020 17:01:45 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066500#M30263gloryhunter12020-01-20T17:01:45ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066540#M30266
<P>Hi&nbsp;<LI-USER uid="124837"></LI-USER>&nbsp;,</P><P>the issue is not the effectivity but the quality of the resulting video, which is very bad for dynamic scenes. In interlaced video, each field is sampled in different time. If you deinterlace by simply putting two frames together, you actualy showing two different scenes at once.</P><P>Best Regards,</P><P>Jan</P>Mon, 20 Jan 2020 21:21:48 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066540#M30266lordgalloth2020-01-20T21:21:48ZRe: Frame Buffer Deinterlaceinghttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066541#M30267
<P>That makes sense. I believe we were considering a Weave de-interlacing but I can see that might cause an issue.</P>Mon, 20 Jan 2020 21:33:56 GMThttps://forums.xilinx.com/t5/Video-and-Audio/Frame-Buffer-Deinterlaceing/m-p/1066541#M30267gloryhunter12020-01-20T21:33:56Z