GNOME Bugzilla – Bug 755059
opusdec: negotiation regression
Last modified: 2015-09-15 19:54:40 UTC
Please try this pipeline: gst-launch-1.0 -vmt souphttpsrc location="http://195.250.34.59/temp/opus.mkv" ! matroskademux ! queue ! opusdec ! audioconvert ! audioresample ! audio/x-raw,channels=1 ! fakesink silent=false this works in 1.4.x but not in git master, the problematic part is the capsfilter: - original file is opus 2 channels - adding a capsfilter with 1 channel cause this error: 0:00:00.094908359 25195 0x22d9280 DEBUG opusdec gstopusdec.c:616:gst_opus_dec_set_format:<opusdec0> set_format: audio/x-opus, multistream=(boolean)false, channels=(int)2, rate=(int)48000, streamheader=(buffer)< 4f707573486561640102000080bb0000000000 > 0:00:00.095215994 25195 0x22d9280 INFO opusdec gstopusdec.c:259:gst_opus_dec_negotiate:<opusdec0> Negotiated 1 channels, 48000 Hz /GstPipeline:pipeline0/GstOpusDec:opusdec0.GstPad:sink: caps = "audio/x-opus\,\ multistream\=\(boolean\)false\,\ channels\=\(int\)2\,\ rate\=\(int\)48000\,\ streamheader\=\(buffer\)\<\ 4f707573486561640102000080bb0000000000\ \>" 0:00:00.095286761 25195 0x22d9280 DEBUG opusdec gstopusdec.c:733:gst_opus_dec_handle_frame:<opusdec0> found streamheader 0:00:00.095299113 25195 0x22d9280 ERROR opusdec gstopusdec.c:302:gst_opus_dec_parse_header:<opusdec0> Opus ID header has invalid channels
Created attachment 311404 [details] [review] opusdec: remove check for number of channels opus decoder can convert from different number of channels, no need to check, just let it negotiate and create a new decoder if needed.
commit 7e834a5d85254831d692260db60698f49a26d3e2 Author: Thiago Santos <thiagoss@osg.samsung.com> Date: Tue Sep 15 15:39:11 2015 -0300 opusdec: remove check for number of channels opus decoder can convert from different number of channels, no need to check, just let it negotiate and create a new decoder if needed. https://bugzilla.gnome.org/show_bug.cgi?id=755059