Overlay without major performance hit?
Michael Tyson
michael at tyson.id.au
Sat Mar 15 05:50:11 PDT 2014
Oh, that’s perfect! Thank you, Nicola - just what I need.
On 15 Mar 2014, at 10:38 pm, Mailing List SVR <lists at svrinformatica.it> wrote:
> Hi,
>
> I suggest to use an hw accelerated overlay, take a look here:
>
> https://github.com/popcornmix/omxplayer/blob/master/SubtitleRenderer.cpp#L391
>
> eglglessink use 0 as layer value, you have to use a value > 0 to display the overlay on the top of the one created by eglglessink,
>
> I'm not aware of any gstreamer element that do this, you have to create the overlay manually or create a new gstreamer element for that
>
> Nicola
>
>
> Il 15/03/2014 08:12, Michael Tyson ha scritto:
>> Hello,
>>
>> I’m trying to use cairooverlay to add some content to live video frames displayed on a Raspberry Pi.
>>
>> I’ve not been able to get video frames to appear onscreen while drawing from udpsrc, so I did some testing using get-inspect and a file-based test video:
>>
>> gst-launch-1.0 filesrc location=big_buck_bunny_720p_H264_AAC_25fps_3400K.MP4 ! qtdemux ! h264parse ! omxh264dec ! autovideoconvert ! cairooverlay ! autovideoconvert ! eglglessink
>>
>> I discovered that including cairooverlay in the video pipeline introduces a massive performance hit at 720p: The video playback goes from the video’s native framerate to about 1 or 2 frames per second. I guess cairooverlay doesn’t work with the zero-copy stuff happening between omxh264dec and eglglessink.
>>
>> Curious about using appsrc and videomixer instead, I tried another pipeline, using videotestsrc (in place of appsrc) and a videomixer:
>>
>> gst-launch-1.0 filesrc location=big_buck_bunny_720p_H264_AAC_25fps_3400K.MP4 ! qtdemux ! h264parse ! omxh264dec ! autovideoconvert ! videomixer name=mix ! eglglessink sync=false videotestsrc ! mix.
>>
>> The same thing happened: Frame rate dropped below usable values.
>>
>> I’m wondering: Is there any way, using the Gstreamer framework, that one can achieve acceptable frame rates while applying an overlay?
>>
>> Cheers,
>> Michael
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
More information about the gstreamer-devel
mailing list