Inogeni 4K -> USB3.0 and Jetson TX2

Matteo Valdina matteo.valdina at gmail.com
Fri Feb 2 15:14:29 UTC 2018


Hi Nicolas,
>From my understand this patch was never incorporated. Am I right? This fix
aside a problem for GStreamer cause bigger memcpy and so a performance
degradation?

Do you know if it will be an update about this patch?


Best
Matteo

On Fri, Feb 2, 2018 at 6:01 AM, Matteo Valdina <matteo.valdina at gmail.com>
wrote:

> Hi ,
> From the documentation online the videoparse is deprecated and suggest to
> use rawvideoparse.
>
> Best
> Matteo
>
> On Feb 2, 2018 04:48, "Pavel Mikhadzionak" <pavel.mikhadzionak at gmail.com>
> wrote:
>
>> What difference between videoparse and rawvideoparse? I have gstreamer
>> 1.8 and similar pipeline don't fix problem:
>> gst-launch-1.0 v4l2src device=/dev/video0 ! video/x-raw,width=3840,height=
>> 2160,format=NV12,framerate=30/1 ! videoparse format=23 width=3840
>> height=2160 ! fakesink
>>
>> 2018-02-02 13:17 GMT+03:00 Nicolas Dufresne <nicolas at ndufresne.ca>:
>>
>>>
>>>
>>> Le 2 févr. 2018 1:56 AM, "Matteo Valdina" <matteo.valdina at gmail.com> a
>>> écrit :
>>>
>>> Hi,
>>> Are you sure that the patch is the right one? It is for GREY not NV12 or
>>> I420.
>>>
>>>
>>> Oops.
>>>
>>> https://patchwork.kernel.org/patch/7979761/
>>>
>>>
>>> Anyway, I faced a similar issue. I used a rawvideoparse to force the
>>> stride to the right value.
>>>
>>> So your command should be something like:
>>>
>>> gst-launch-1.0 v4l2src device=/dev/video0 !
>>> video/x-raw,width=3840,height=2160,format=I420 ! rawvideoparse format=2
>>> width=3840 height=2160 ! fakesink
>>>
>>>
>>> Yes, you figured right. The UVC driver calculates the stride wrong. Be
>>> aware that UVC is not zero copy. With Inogeni the memcpy can be visible as
>>> 4k 30fps is quite high bandwidth.
>>>
>>>
>>>
>>>
>>> Best
>>> Matteo Valdina
>>>
>>> On Thu, Feb 1, 2018 at 5:25 PM, Nicolas Dufresne <nicolas at ndufresne.ca>
>>> wrote:
>>>
>>>>
>>>>
>>>> Le 1 févr. 2018 11:11, "pavelm" <pavel.mikhadzionak at gmail.com> a
>>>> écrit :
>>>>
>>>> I tried to capture 4k video from Inogeni via gstreamer and it's not
>>>> working:
>>>>
>>>>     gst-launch-1.0 v4l2src device=/dev/video0 !
>>>> "video/x-raw,width=3840,height=2160,format=I420" ! fakesink
>>>>
>>>>
>>>> Do you have the UVC kernel fix for the stride in NV12 and I420 ?
>>>>
>>>> https://patchwork.linuxtv.org/patch/45357/
>>>>
>>>>
>>>> With GST_DEBUG="*:3" I see errors:
>>>>
>>>>     ubuntu at tegra-ubuntu:~$ gst-launch-1.0 v4l2src device=/dev/video0 !
>>>> "video/x-raw,width=3840,height=2160,format=I420" ! fakesink
>>>>     Setting pipeline to PAUSED ...
>>>>     Pipeline is live and does not need PREROLL ...
>>>>     Setting pipeline to PLAYING ...
>>>>     New clock: GstSystemClock
>>>>     0:00:00.276135808 18119       0x60f320 WARN          v4l2bufferpool
>>>> gstv4l2bufferpool.c:1196:gst_v4l2_buffer_pool_dqbuf:<v4l2src0:pool:src>
>>>> Driver should never set v4l2_buffer.field to ANY
>>>>     0:00:00.276210433 18119       0x60f320 WARN          v4l2bufferpool
>>>> gstv4l2bufferpool.c:1958:gst_v4l2_buffer_pool_process:<v4l2s
>>>> rc0:pool:src>
>>>> Dropping corrupted buffer without payload
>>>>     0:00:00.276253730 18119       0x60f320 WARN          v4l2bufferpool
>>>> gstv4l2bufferpool.c:1958:gst_v4l2_buffer_pool_process:<v4l2s
>>>> rc0:pool:src>
>>>> Dropping corrupted buffer without payload
>>>>     0:00:00.328871196 18119       0x60f320 ERROR                default
>>>> video-frame.c:161:gst_video_frame_map_id: failed to map video frame
>>>> plane 1
>>>>     0:00:00.328947998 18119       0x60f320 ERROR         v4l2bufferpool
>>>> gstv4l2bufferpool.c:161:gst_v4l2_buffer_pool_copy_buffer:<v4
>>>> l2src0:pool:src>
>>>> could not map buffer
>>>>     0:00:00.328976798 18119       0x60f320 ERROR         v4l2bufferpool
>>>> gstv4l2bufferpool.c:1953:gst_v4l2_buffer_pool_process:<v4l2s
>>>> rc0:pool:src>
>>>> failed to copy buffer
>>>>     0:00:00.329004031 18119       0x60f320 WARN                 basesrc
>>>> gstbasesrc.c:2939:gst_base_src_loop:<v4l2src0> error: Internal data
>>>> stream
>>>> error.
>>>>     0:00:00.329015263 18119       0x60f320 WARN                 basesrc
>>>> gstbasesrc.c:2939:gst_base_src_loop:<v4l2src0> error: streaming
>>>> stopped,
>>>> reason error (-5)
>>>>     ERROR: from element /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
>>>> Internal
>>>> data stream error.
>>>>     Additional debug info:
>>>>     gstbasesrc.c(2939): gst_base_src_loop ():
>>>> /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:
>>>>     streaming stopped, reason error (-5)
>>>>     Execution ended after 0:00:00.186888513
>>>>     Setting pipeline to PAUSED ...
>>>>     Setting pipeline to READY ...
>>>>     Setting pipeline to NULL ...
>>>>     Freeing pipeline ...
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> Sent from: http://gstreamer-devel.966125.n4.nabble.com/
>>>> _______________________________________________
>>>> gstreamer-devel mailing list
>>>> gstreamer-devel at lists.freedesktop.org
>>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>>
>>>>
>>>>
>>>> _______________________________________________
>>>> gstreamer-devel mailing list
>>>> gstreamer-devel at lists.freedesktop.org
>>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>>
>>>>
>>>
>>>
>>> --
>>> “There are two ways of constructing a software design: One way is to
>>> make it so simple that there are obviously no deficiencies, and the other
>>> way is to make it so complicated that there are no obvious deficiencies.
>>> The first method is far more difficult.”
>>> - Tony Hoare
>>>
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>
>>>
>>>
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.freedesktop.org
>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>>
>>>
>>
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.freedesktop.org
>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>>
>>


-- 
“There are two ways of constructing a software design: One way is to make
it so simple that there are obviously no deficiencies, and the other way is
to make it so complicated that there are no obvious deficiencies. The first
method is far more difficult.”
- Tony Hoare
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20180202/4b813723/attachment.html>


More information about the gstreamer-devel mailing list