Bug 224180

Summary: [GStreamer][MediaStream] AudioSource triggering critical warnings
Product: WebKit Reporter: Philippe Normand <pnormand>
Component: PlatformAssignee: Philippe Normand <pnormand>
Status: RESOLVED FIXED    
Severity: Normal CC: calvaris, eric.carlson, ews-watchlist, glenn, jer.noble, philipj, sergio, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch none

Philippe Normand
Reported 2021-04-05 04:14:12 PDT
Audioconvert emits warnings because the buffers have no audio meta.
Attachments
Patch (3.27 KB, patch)
2021-04-05 04:20 PDT, Philippe Normand
no flags
Patch (3.35 KB, patch)
2021-04-05 09:41 PDT, Philippe Normand
no flags
Philippe Normand
Comment 1 2021-04-05 04:20:11 PDT
Philippe Normand
Comment 2 2021-04-05 04:30:56 PDT
Example, when running imported/w3c/web-platform-tests/webrtc/simplecall.https.html Thread 1 (Thread 0x7f91bffff700 (LWP 17092)): #0 g_logv (log_domain=0x0, log_level=G_LOG_LEVEL_CRITICAL, format=<optimized out>, args=<optimized out>) at ../glib/gmessages.c:1413 #1 0x00007f93103f5973 in g_log (log_domain=log_domain@entry=0x0, log_level=log_level@entry=G_LOG_LEVEL_CRITICAL, format=format@entry=0x7f931044dad0 "%s: assertion '%s' failed") at ../glib/gmessages.c:1451 #2 0x00007f93103f619d in g_return_if_fail_warning (log_domain=log_domain@entry=0x0, pretty_function=pretty_function@entry=0x7f930f547af0 <__func__.0> "gst_audio_buffer_map", expression=expression@entry=0x7f930f5479e0 "(!meta && info->layout == GST_AUDIO_LAYOUT_INTERLEAVED) || (meta && info->layout == meta->info.layout)") at ../glib/gmessages.c:2883 #3 0x00007f930f4ffd09 in gst_audio_buffer_map (buffer=buffer@entry=0x7f91bfffd240, info=info@entry=0x7f91b006d068, gstbuffer=gstbuffer@entry=0x7f929c005120 [GstBuffer], flags=(GST_MAP_READ | GST_MAP_WRITE)) at ../gst-libs/gst/audio/audio-buffer.c:110 #4 0x00007f92c67e0d2d in gst_audio_convert_transform (base=<optimized out>, inbuf=0x7f929c005120 [GstBuffer], outbuf=0x7f9198012360 [GstBuffer]) at ../gst/audioconvert/gstaudioconvert.c:824 #5 0x00007f930f74ce71 in default_generate_output (trans=0x7f91b006ce00 [GstAudioConvert], outbuf=0x7f91bfffdce0) at ../libs/gst/base/gstbasetransform.c:2188 #6 0x00007f930f74c504 in gst_base_transform_chain (pad=<optimized out>, parent=0x7f91b006ce00 [GstAudioConvert], buffer=0x7f91bfffdce0 [None]) at ../libs/gst/base/gstbasetransform.c:2341 #7 0x00007f930f63989d in gst_pad_chain_data_unchecked (pad=pad@entry=0x7f91b005fdb0 [GstPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4399 #8 0x00007f930f63bb19 in gst_pad_push_data (pad=pad@entry=0x7f91b00685e0 [GstProxyPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4655 #9 0x00007f930f643142 in gst_pad_push (pad=pad@entry=0x7f91b00685e0 [GstProxyPad], buffer=buffer@entry=0x7f929c005120 [GstBuffer]) at ../gst/gstpad.c:4774 #10 0x00007f930f626503 in gst_proxy_pad_chain_default (pad=<optimized out>, parent=<optimized out>, buffer=0x7f929c005120 [GstBuffer]) at ../gst/gstghostpad.c:127 #11 0x00007f930f63989d in gst_pad_chain_data_unchecked (pad=pad@entry=0x7f91a8007650 [GstGhostPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4399 #12 0x00007f930f63bb19 in gst_pad_push_data (pad=pad@entry=0x7f91b0068a90 [GstStreamSyncPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4655 #13 0x00007f930f643142 in gst_pad_push (pad=pad@entry=0x7f91b0068a90 [GstStreamSyncPad], buffer=buffer@entry=0x7f929c005120 [GstBuffer]) at ../gst/gstpad.c:4774 #14 0x00007f92c65d54b1 in gst_stream_synchronizer_sink_chain (pad=0x7f91b0068830 [GstStreamSyncPad], parent=<optimized out>, buffer=0x7f929c005120 [GstBuffer]) at ../gst/playback/gststreamsynchronizer.c:814 #15 0x00007f930f63989d in gst_pad_chain_data_unchecked (pad=pad@entry=0x7f91b0068830 [GstStreamSyncPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4399 #16 0x00007f930f63bb19 in gst_pad_push_data (pad=pad@entry=0x7f91b0068cf0 [GstTeePad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4655 #17 0x00007f930f643142 in gst_pad_push (pad=0x7f91b0068cf0 [GstTeePad], buffer=0x7f929c005120 [GstBuffer]) at ../gst/gstpad.c:4774 #18 0x00007f92c774c7f6 in gst_tee_handle_data (tee=tee@entry=0x159f3f0 [GstTee], data=data@entry=0x7f929c005120, is_list=is_list@entry=0) at ../plugins/elements/gsttee.c:897 #19 0x00007f92c774c9ed in gst_tee_chain (pad=<optimized out>, parent=0x159f3f0 [GstTee], buffer=0x7f929c005120 [GstBuffer]) at ../plugins/elements/gsttee.c:1024 #20 0x00007f930f63989d in gst_pad_chain_data_unchecked (pad=pad@entry=0x1d35ce0 [GstPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4399 #21 0x00007f930f63bb19 in gst_pad_push_data (pad=pad@entry=0x1d52550 [GstProxyPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4655 #22 0x00007f930f643142 in gst_pad_push (pad=pad@entry=0x1d52550 [GstProxyPad], buffer=buffer@entry=0x7f929c005120 [GstBuffer]) at ../gst/gstpad.c:4774 #23 0x00007f930f626503 in gst_proxy_pad_chain_default (pad=<optimized out>, parent=<optimized out>, buffer=0x7f929c005120 [GstBuffer]) at ../gst/gstghostpad.c:127 #24 0x00007f930f63989d in gst_pad_chain_data_unchecked (pad=pad@entry=0x1d58060 [GstGhostPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4399 #25 0x00007f930f63bb19 in gst_pad_push_data (pad=pad@entry=0x1d60120 [GstPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4655 #26 0x00007f930f643142 in gst_pad_push (pad=0x1d60120 [GstPad], buffer=buffer@entry=0x7f929c005120 [GstBuffer]) at ../gst/gstpad.c:4774 #27 0x00007f92c771343f in gst_concat_sink_chain (pad=0x17d8650 [GstConcatPad], parent=<optimized out>, buffer=0x7f929c005120 [GstBuffer]) at ../plugins/elements/gstconcat.c:456 #28 0x00007f930f63989d in gst_pad_chain_data_unchecked (pad=pad@entry=0x17d8650 [GstConcatPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4399 #29 0x00007f930f63bb19 in gst_pad_push_data (pad=pad@entry=0x7f91d40127b0 [GstGhostPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4655 #30 0x00007f930f643142 in gst_pad_push (pad=pad@entry=0x7f91d40127b0 [GstGhostPad], buffer=buffer@entry=0x7f929c005120 [GstBuffer]) at ../gst/gstpad.c:4774 #31 0x00007f930f626503 in gst_proxy_pad_chain_default (pad=<optimized out>, parent=<optimized out>, buffer=0x7f929c005120 [GstBuffer]) at ../gst/gstghostpad.c:127 #32 0x00007f930f63989d in gst_pad_chain_data_unchecked (pad=pad@entry=0x7f91d4007130 [GstProxyPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4399 #33 0x00007f930f63bb19 in gst_pad_push_data (pad=pad@entry=0x7f91d4012540 [GstGhostPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4655 #34 0x00007f930f643142 in gst_pad_push (pad=pad@entry=0x7f91d4012540 [GstGhostPad], buffer=buffer@entry=0x7f929c005120 [GstBuffer]) at ../gst/gstpad.c:4774 #35 0x00007f930f626503 in gst_proxy_pad_chain_default (pad=<optimized out>, parent=<optimized out>, buffer=0x7f929c005120 [GstBuffer]) at ../gst/gstghostpad.c:127 #36 0x00007f930f63989d in gst_pad_chain_data_unchecked (pad=pad@entry=0x7f91d4006ed0 [GstProxyPad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4399 #37 0x00007f930f63bb19 in gst_pad_push_data (pad=pad@entry=0x7f91d0018440 [GstMultiQueuePad], type=type@entry=4112, data=data@entry=0x7f929c005120) at ../gst/gstpad.c:4655 #38 0x00007f930f643142 in gst_pad_push (pad=pad@entry=0x7f91d0018440 [GstMultiQueuePad], buffer=buffer@entry=0x7f929c005120 [GstBuffer]) at ../gst/gstpad.c:4774 #39 0x00007f92c7734c80 in gst_single_queue_push_one (allow_drop=<synthetic pointer>, object=0x7f929c005120 [GstBuffer], sq=0x7f91d000da90, mq=0x19946e0 [GstMultiQueue]) at ../plugins/elements/gstmultiqueue.c:1925 #40 gst_multi_queue_loop (pad=<optimized out>) at ../plugins/elements/gstmultiqueue.c:2252 #41 0x00007f930f673257 in gst_task_func (task=0x7f929c005a70 [GstTask]) at ../gst/gsttask.c:384 #42 0x00007f9310418ea4 in g_thread_pool_thread_proxy (data=<optimized out>) at ../glib/gthreadpool.c:354 #43 0x00007f93104185a1 in g_thread_proxy (data=0x18376a0) at ../glib/gthread.c:826 #44 0x00007f931037c4d2 in start_thread (arg=<optimized out>) at pthread_create.c:477 #45 0x00007f930fe6a323 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95 STDERR: gst_audio_buffer_map: assertion '(!meta && info->layout == GST_AUDIO_LAYOUT_INTERLEAVED) || (meta && info->layout == meta->info.layout)' failed
Philippe Normand
Comment 3 2021-04-05 09:41:43 PDT
EWS
Comment 4 2021-04-06 06:24:37 PDT
Committed r275510: <https://commits.webkit.org/r275510> All reviewed patches have been landed. Closing bug and clearing flags on attachment 425161 [details].
Radar WebKit Bug Importer
Comment 5 2021-04-06 06:25:16 PDT
Philippe Normand
Comment 6 2021-04-13 09:04:26 PDT
*** Bug 222793 has been marked as a duplicate of this bug. ***
Note You need to log in before you can comment on or make changes to this bug.