I am trying to add a jpeg/png graphic as well as text to a pipeline that I have made in GStreamer that will be running on a Wandboard-Quad built with Yocto Dora branch.
In order to display jpeg/png images, I can use the pipeline: gst-launch filesrc location=file.jpg ! jpegdec ! imagefreeze ! mfw_isink. This pipeline does display the image, as long as the resolution is divisible by 8 pixels. Otherwise the pipeline will fail with the error message 'source fmt error'. This 8-bit aligned rule may be problematic for my final design. What would it take to change this to support any resolution? Does this issue lie with jpegdec or isink?
In a related question, when I am displaying this graphic, it fills the entire screen, regardless of its actual size. I have tried the pipeline gst-launch filesrc location=file.jpg ! jpegdec ! imagefreeze ! mfw_isink disp-width=320 disp-height=240, but the image still filled the screen. Can anyone suggest a different pipeline that would allow me to reduce the size of the image?
Shifting topics slightly, I am having trouble adding textoverlay and timeoverlay elements to my Yocto build. These elements are part of the gst-plugins-base package, but they seemed to have been removed for some reason. I have tried to add them back in but have not been successful. The most logical solution to me was to add the line gst-plugins-base-textoverlay to my recipe, however Yocto was not able to find textoverlay in the RPM. So I added the line directly the RPM, which not only did not add what I want but also crashed gstreamer when I play video. Lastly I tried adding Pango to my build, which I believe is related to textoverlay. Pango was installed successfully, but still no luck with textoverlay. Can anyone suggest a way of adding textoverlay to my Yocto build?
As an aside, if anyone is having issues using mfw_isink to play multiple videos and is getting the following warning:
Can not open dll, libgstfsl-0.10.so: cannot open shared object file:
No such file or directory.
Caught SIGSEGV accessing address (nil)
The solution is to make a symlink to the correct library by doing ln -s libgstfsl-0.10.so.0 libgstfsl-0.10.so. I was stuck on that for longer than I would like to admit.