I have a Raspberry Pi 3B device connected to a LCD '7 (7 inches LCD, its a touch screen I believe that's called DSI not sure) and also a HDMI screen.
By default Raspbian considers the LCD as the default screen and send the framebuffer to that device.
I understand that can be changed from /boot/config.txt file, however this will disable the LCD '7.
My goal is to be able to show a picture on the HDMI device while LCD is active. Please note:
The sound from the HDMI is irrelevant
I understand that there is only one framebuffer and need a way around that.
I rather use C++ code if programming is necessary (but I am open to learn any other programming languages)
The task is to show an image file (e.g .png, .jpg) not a binary buffer (because I have no idea how to generate a binary buffer in the first place but I'm open to suggestions)
I already tried fbi, doesn't satisfy my needs.
I tried dispmanx.c program located: /opt/vc/src/hello-pi/hello-displmanx/, it does exactly as I expect with the difference that I can't find a way to make that code to show an actual .png file on the screen.
I understand that a similar question has been already asked, but it seems that I have trouble understanding the solution suggested for it as I find the answer complicated for my level of knowledge.
I am new to C language and libraries. any suggestions on manipulation of dispmanx.c file to handle the task in hand are welcome.
I am also open to any other suggestions.
edit: I found http://www.raspberry-projects.com/pi/programming-in-c/display/dispmanx-api/dispmanx-api-general which has a pngviewer.c file which seems able to handle my problem, but after making the program and calling ./pngviewer I receive the following error:
./pngview: error while loading shared libraries: libraspidmx.so.1: cannot open shared object file: No such file or directory
command I used: ./pngview myPic.png