[Bug 793284] h264parses: Expose framerate even if the fixed_frame_rate flag isn't set

GStreamer (GNOME Bugzilla) bugzilla at gnome.org
Mon Aug 27 10:04:11 UTC 2018


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

--- Comment #11 from Philippe Normand <philn at igalia.com> ---
Review of attachment 368742:
 --> (https://bugzilla.gnome.org/review?bug=793284&attachment=368742)

::: libs/gst/base/gstbaseparse.c
@@ +1819,3 @@
+        8 * parse->priv->data_bytecount, parse->priv->acc_duration);
+
+    if (avg_bitrate > G_MAXUINT)

Shouldn't this be a G_MAXINT? avg_bitrate is a gint, not guint.
This is causing an assert here in  with the following command:

youtube-dl "https://vimeo.com/280481143" -o - | G_DEBUG=fatal_criticals 
gst-play-1.0 fd://0

(gdb) bt
#0  0x00007f82625ebc41 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#1  0x00007f82625ecf2b in g_logv () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f82625ed07f in g_log () at
/usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f8262a6b5fa in _gst_util_uint64_scale_int (val=<optimized out>,
num=<optimized out>, denom=<optimized out>, correct=<optimized out>)
    at ../subprojects/gstreamer/gst/gstutils.c:680
#4  0x00007f8261fa2312 in gst_base_parse_update_bitrates (frame=0x7f8254003540,
frame=0x7f8254003540, parse=0x7f825c1b0f10)
    at ../subprojects/gstreamer/libs/gst/base/gstbaseparse.c:1918
#5  0x00007f8261fa2312 in gst_base_parse_push_frame
(parse=parse at entry=0x7f825c1b0f10, frame=frame at entry=0x7f8254003540)
    at ../subprojects/gstreamer/libs/gst/base/gstbaseparse.c:2513
#6  0x00007f8261fa51f1 in gst_base_parse_handle_and_push_frame
(frame=0x7f8254003540, parse=0x7f825c1b0f10) at
../subprojects/gstreamer/libs/gst/base/gstbaseparse.c:2395
#7  0x00007f8261fa51f1 in gst_base_parse_finish_frame
(parse=parse at entry=0x7f825c1b0f10, frame=frame at entry=0x7f8254003540,
size=size at entry=8479)
    at ../subprojects/gstreamer/libs/gst/base/gstbaseparse.c:2739
#8  0x00007f826022d4c8 in gst_h264_parse_handle_frame (parse=0x7f825c1b0f10,
frame=0x7f8254003540, skipsize=0x7f825bffebfc)
    at ../subprojects/gst-plugins-bad/gst/videoparsers/gsth264parse.c:1276
#9  0x00007f8261f9d0e2 in gst_base_parse_handle_buffer
(parse=parse at entry=0x7f825c1b0f10, buffer=<optimized out>,
skip=skip at entry=0x7f825bffebfc, flushed=flushed at entry=0x7f825bffec00) at
../subprojects/gstreamer/libs/gst/base/gstbaseparse.c:2203
#10 0x00007f8261fa311c in gst_base_parse_chain (pad=<optimized out>,
parent=<optimized out>, buffer=<optimized out>)
    at ../subprojects/gstreamer/libs/gst/base/gstbaseparse.c:3288
#11 0x00007f8262a2ed22 in gst_pad_chain_data_unchecked (data=0x7f8254008450,
type=4112, pad=0x5624b3d3f680) at ../subprojects/gstreamer/gst/gstpad.c:4322
#12 0x00007f8262a2ed22 in gst_pad_push_data (pad=pad at entry=0x5624b3d3f430,
type=type at entry=4112, data=data at entry=0x7f8254008450)
    at ../subprojects/gstreamer/gst/gstpad.c:4578
#13 0x00007f8262a35602 in gst_pad_push (pad=0x5624b3d3f430,
buffer=buffer at entry=0x7f8254008450) at
../subprojects/gstreamer/gst/gstpad.c:4697
#14 0x00007f8260aefe2d in gst_single_queue_push_one (allow_drop=<synthetic
pointer>, object=0x7f8254008450, sq=0x7f825c1aaa60, mq=0x7f825c1ab050)
    at ../subprojects/gstreamer/plugins/elements/gstmultiqueue.c:1643
#15 0x00007f8260aefe2d in gst_multi_queue_loop (pad=<optimized out>) at
../subprojects/gstreamer/plugins/elements/gstmultiqueue.c:1963
#16 0x00007f8262a624b1 in gst_task_func (task=0x5624b3d44710) at
../subprojects/gstreamer/gst/gsttask.c:328
#17 0x00007f826260e7d0 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#18 0x00007f826260de05 in  () at /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#19 0x00007f8261f5ef2a in start_thread (arg=0x7f825bfff700) at
pthread_create.c:463
#20 0x00007f82620ecedf in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:95

-- 
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