FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
6670 Discussions

Problem W/ Altera VIP Frame Buffer II

EvanHamiltonJAVS
5,952 Views

I have configured an FPGA design for my linux device that is displaying SDI and HMDI inputs. It was originally configured to receive YCbCr 4:2:2 video format. Since I am experiencing green spill on images when trying to chroma key, I am attempting to change the input data to RGBA. 

 

For a test, I have implemented a conversion into the FPGA that handles the RGB input from the frame buffer. I believe this conversion is correct because the color values come out as expected.

 

FPGA Design Here:

FPGA_Forum_Help.png

fpgahelppt2.png

FB -> CSC -> CRS -> Output

This is the same for all four mixers.

 

I am using gstreamer to input the color bars pattern into the pipeline.

(gst-launch-1.0 videotestsrc ! videoconvert ! video/x-raw,format=BGR,width=1920,height=1080 ! videoconvert ! filesink location="/dev/fb3")

There are 4 frame buffers located at "/dev/fb0", "/dev/fb1", and so on.

 

Basically the issue is these frame buffer's graphics are overlapping and changing the memory regions in the DTS file does not fix the issue:

"gst-launch-1.0 videotestsrc ! videoconvert ! video/x-raw,format=BGR,width=1920,height=1080 ! videoconvert ! filesink location="/dev/fb0"

EvanHamiltonJAVS_0-1715010416346.jpeg

 

"gst-launch-1.0 videotestsrc ! videoconvert ! video/x-raw,format=BGR,width=1920,height=1080 ! videoconvert ! filesink location="/dev/fb1"

EvanHamiltonJAVS_1-1715010451602.jpeg

 

"gst-launch-1.0 videotestsrc ! videoconvert ! video/x-raw,format=BGR,width=1920,height=1080 ! videoconvert ! filesink location="/dev/fb3"

EvanHamiltonJAVS_2-1715010488853.jpeg

 

I can even see the bottom portion of the color bars pattern when changing the height to 720.

"gst-launch-1.0 videotestsrc ! videoconvert ! video/x-raw,format=BGR,width=1920,height=720 ! videoconvert ! filesink location="/dev/fb3"

EvanHamiltonJAVS_3-1715010571472.jpeg

 

The drivers being used for the frame buffer is altvipfb.c and altvipfb2-plat.c

Here is the DTS snippet of these frame buffer components and the boot logs where the frame buffers are initialized:

DTS snippetDTS snippetBoot LogsBoot Logs

The virtual address and length seen in these boot logs do not change at all when DTS changes are made.

 

I also get this error when inputting a pipeline:

nospaceerror.png

 

If anyone could help me approach this issue it would be greatly appreciated.

 

Thanks,

Evan

0 Kudos
22 Replies
khtan
Employee
769 Views

Hi Evan,

Thanks for the reply and no worries on the response. Since you're currently tied up with another project, may I know whether possible to set this case to close first, and then once you're free to work on this again, do re-open a new forum thread (if still have any issues) and tag this forum thread link in the new thread so we can trace back the history of the case and support from there on.  

 

Thanks

Regards

Kian

0 Kudos
khtan
Employee
734 Views

Hi Evan,

As I could not suspend the thread case tracking in system and being flagged out for idling, I will set this thread to close-pending first and revert to community support. Once you're free up to continue work on this issue, do create a new thread and tag this thread link and we will resume support from there on.

 

Thanks for using Intel-Altera forums and sorry for the inconvenience cause. Please do let us know once you're able to resume work on this area and still facing issues on the video conversion.

 

Thanks

Regards

Kian

0 Kudos
Reply