GNOME Bugzilla – Bug 441118
Incorrect caps in G.711 RTP depayloaders
Last modified: 2007-06-11 10:24:16 UTC
Please describe the problem: Since G.711 (a-law & u-law) do not use fixed samplerate, it is necessary to pass the rate information in the caps structure. Current implementation of gstrtppcm(a/u)depay.c define output caps as follows: "audio/x-(a/u)law, " "channels = (int) 1" Even this "rate" field is omitted, the pipeline works. However, it causes the caps renegotiation to happen with every buffer that is passed from depayloader to decoder. This is quite a performance drawback. Steps to reproduce: Actual results: Expected results: Does this happen every time? Other information:
Created attachment 88783 [details] [review] A patch that adds missing "rate" fields to depayloader's output caps
Patch by: Tommi Myöhänen <ext-tommi dot myohanen at nokia dot com> * gst/rtp/gstrtppcmadepay.c: (gst_rtp_pcma_depay_setcaps): * gst/rtp/gstrtppcmudepay.c: (gst_rtp_pcmu_depay_setcaps): Add missing rate fields to caps. Fixes #441118.