[Bug 785967] videoenc/dec : delay input buffers allocation until first buffer is received

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon Aug 20 18:29:32 UTC 2018


https://bugzilla.gnome.org/show_bug.cgi?id=785967

Thibault Saunier <tsaunier at gnome.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |tsaunier at gnome.org

--- Comment #24 from Thibault Saunier <tsaunier at gnome.org> ---
This broke very simple encoding pipeline on RPI:

commit 07e80c9425237bfb38684cd255af248068657935
Author: Guillaume Desmottes <guillaume.desmottes at collabora.co.uk>
Date:   Mon Aug 7 11:45:29 2017 -0400

    omxvideoenc: delay buffer configuration until component is enabled

    No significant change for now. Just delay the input port configuration
    of the buffer size related fields (stride, slice height, buffer size)
    until the component is activated.
    This will allow us to use the actual stride/height of the first input
    and so avoid the buffer copying code path in most cases.

    Tested on rpi and zynqultrascaleplus.

    https://bugzilla.gnome.org/show_bug.cgi?id=785967

:040000 040000 d0656b6181267d3218768f354ee2138e6713e10f
3656d708113e3eefb75645f08bfd5e4a624e3ac1 M    omx


Very simple encoding pipelines fail:

```
bash-4.3# GST_DEBUG="2,*omx*:4" gst-launch-1.0 videotestsrc ! omxh264enc !
fakesink
Setting pipeline to PAUSED ...
Pipeline is PREROLLING ...
0:00:00.087341219  1969  0x19ae950 WARN            videoencoder
gstvideoencoder.c:678:gst_video_encoder_setcaps:<omxh264enc-omxh264enc0>
rejected caps video/x-raw, width=(int)320, height=(int)240,
framerate=(fraction)30/1, format=(string)I420, multiview-mode=(string)mono,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
0:00:00.089955653  1969  0x19ae950 WARN            videoencoder
gstvideoencoder.c:678:gst_video_encoder_setcaps:<omxh264enc-omxh264enc0>
rejected caps video/x-raw, width=(int)320, height=(int)240,
framerate=(fraction)30/1, format=(string)I420, multiview-mode=(string)mono,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
0:00:00.090013361  1969  0x19ae950 WARN                GST_PADS
gstpad.c:4224:gst_pad_peer_query:<videotestsrc0:src> could not send sticky
events
0:00:00.103096156  1969  0x19ae950 WARN            videoencoder
gstvideoencoder.c:678:gst_video_encoder_setcaps:<omxh264enc-omxh264enc0>
rejected caps video/x-raw, width=(int)320, height=(int)240,
framerate=(fraction)30/1, format=(string)I420, multiview-mode=(string)mono,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
0:00:00.107846793  1969  0x19ae950 WARN            videoencoder
gstvideoencoder.c:678:gst_video_encoder_setcaps:<omxh264enc-omxh264enc0>
rejected caps video/x-raw, width=(int)320, height=(int)240,
framerate=(fraction)30/1, format=(string)I420, multiview-mode=(string)mono,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
0:00:00.108003773  1969  0x19ae950 WARN                 basesrc
gstbasesrc.c:3055:gst_base_src_loop:<videotestsrc0> error: Internal data stream
error.
0:00:00.108068252  1969  0x19ae950 WARN                 basesrc
gstbasesrc.c:3055:gst_base_src_loop:<videotestsrc0> error: streaming stopped,
reason not-negotiated (-4)
ERROR: from element /GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0:
Internal data stream error.
Additional debug info:
../libs/gst/base/gstbasesrc.c(3055): gst_base_src_loop ():
/GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0:
streaming stopped, reason not-negotiated (-4)
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
0:00:00.113733840  1969  0x19ae950 WARN            videoencoder
gstvideoencoder.c:678:gst_video_encoder_setcaps:<omxh264enc-omxh264enc0>
rejected caps video/x-raw, width=(int)320, height=(int)240,
framerate=(fraction)30/1, format=(string)I420, multiview-mode=(string)mono,
pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive
0:00:00.115415563  1969  0x19af640 INFO                     omx
gstomx.c:764:gst_omx_component_free:<omxh264enc-omxh264enc0> Unloading
component 0x18e35e0 video_encode
0:00:00.115460824  1969  0x19af640 INFO                     omx
gstomx.c:1787:gst_omx_port_deallocate_buffers_unlocked:<omxh264enc-omxh264enc0>
Deallocating buffers of video_encode port 200
0:00:00.115614366  1969  0x19af640 INFO                     omx
gstomx.c:1787:gst_omx_port_deallocate_buffers_unlocked:<omxh264enc-omxh264enc0>
Deallocating buffers of video_encode port 201

```

-- 
You are receiving this mail because:
You are the QA Contact for the bug.
You are the assignee for the bug.


More information about the gstreamer-bugs mailing list