imx6 / mainline linux / basic problems

Carlos Rafael Giani dv at pseudoterminal.org
Thu Feb 5 05:11:02 PST 2015


This confirms that the videoconvert element is the culprit. You are 
correct that videoconvert gets into a passthrough mode because it does 
not have to convert anything (fakesink accepts any caps). Try this for 
example: gst-launch-1.0 filesrc location= 
/home/ian/Downloads/big_buck_bunny_1080p_h264.mov ! qtdemux ! h264parse 
! queue ! v4l2video5dec ! videoconvert ! "video/x-raw, format=RGBA" ! 
fakesink sync=false

Oh, and what's with the v4l2video1dec, v4l2video5dec etc. names?

On 2015-02-05 13:59, Ian Molton wrote:
> On 05/02/15 11:18, Carlos Rafael Giani wrote:
>>
>> OK, this indeed is slow. What if you try this pipeline?
>> gst-launch-1.0 filesrc
>> location=/home/H264_test1_Talkinghead_mp4_480x360.mp4 ! qtdemux !
>> h264parse ! v4l2video1dec ! fakesink
>>
>> Upon terminating, gst-launch prints how long the pipeline was
>> running. Compare this with the duration of the video. What results do
>> you get?
>
> I don't - the Debian package has a bug and never exits.
>
> That said, the VPU interrupt rate looks to be well over the framerate,
> and it does nominally 1int per frame.
>
> I don't think the VPU is the issue.
>
> Further benchmarks:
>
> ------
> gst-launch-1.0 filesrc location= 
> /home/ian/Downloads/big_buck_bunny_1080p_h264.mov ! qtdemux ! 
> h264parse ! queue ! v4l2video5dec ! fakesink sync=false
>
> Bus:
>   Read: 425.43 MB/s /  Write: 304.08 MB/s  Utilization: 10%
> CPU: ~4%
>
> ------
> gst-launch-1.0 filesrc location= 
> /home/ian/Downloads/big_buck_bunny_1080p_h264.mov ! qtdemux ! 
> h264parse ! queue ! v4l2video5dec ! videoconvert ! fakesink sync=false
>
> Bus:
>   Read: 400.48 MB/s /  Write: 285.61 MB/s  Utilization: 10%
> CPU: ~4%
>
> ------
> gst-launch-1.0 filesrc location= 
> /home/ian/Downloads/big_buck_bunny_1080p_h264.mov ! qtdemux ! 
> h264parse ! queue ! v4l2video5dec ! videoconvert ! fbdevsink sync=false
>
> Bus:
>   Read: 325.07 MB/s /  Write: 18.91 MB/s  Utilisation: 5%
> CPU: ~25% (1 core @ 99%)
>
> *VPU interrupt rate is about 1/25th the above tests too, about 2FPS.
>
>
> I think the videoconvert plugin is a no-op when connected to a 
> fakesink. Would explain the lack of change in performance.
>
> looks like videoconvert has abysmal performance on an ARM for some 
> reason.
>
> I'm attempting to compile gstreamer-plugins-good to get a better look 
> at this.
>
> -Ian
>
>
> _______________________________________________
> 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