ext/vorbis/vorbisdec.c: Reinstate limit on channel count. Vorbis does not define the meaning of > 6 channels, so they...

Original commit message from CVS:
* ext/vorbis/vorbisdec.c: (vorbis_handle_identification_packet):
Reinstate limit on channel count. Vorbis does not define the meaning
of > 6 channels, so they're just independent channels. Gstreamer
currently has no mechanism to represent N independent channels.
This commit is contained in:
Michael Smith 2006-06-02 15:06:59 +00:00
parent 7626c219ac
commit 61b592b753
2 changed files with 17 additions and 0 deletions

View file

@ -1,3 +1,10 @@
2006-06-02 Michael Smith <msmith@fluendo.com>
* ext/vorbis/vorbisdec.c: (vorbis_handle_identification_packet):
Reinstate limit on channel count. Vorbis does not define the meaning
of > 6 channels, so they're just independent channels. Gstreamer
currently has no mechanism to represent N independent channels.
2006-06-02 Michael Smith <msmith@fluendo.com> 2006-06-02 Michael Smith <msmith@fluendo.com>
* ext/vorbis/vorbisdec.c: (vorbis_handle_identification_packet): * ext/vorbis/vorbisdec.c: (vorbis_handle_identification_packet):

View file

@ -607,6 +607,8 @@ vorbis_handle_identification_packet (GstVorbisDec * vd)
pos = pos6; pos = pos6;
break; break;
} }
default:
goto channel_count_error;
} }
caps = gst_caps_new_simple ("audio/x-raw-float", caps = gst_caps_new_simple ("audio/x-raw-float",
@ -621,6 +623,14 @@ vorbis_handle_identification_packet (GstVorbisDec * vd)
gst_caps_unref (caps); gst_caps_unref (caps);
return GST_FLOW_OK; return GST_FLOW_OK;
/* ERROR */
channel_count_error:
{
GST_ELEMENT_ERROR (vd, STREAM, NOT_IMPLEMENTED, (NULL),
("Unsupported channel count %d", vd->vi.channels));
return GST_FLOW_ERROR;
}
} }
static GstFlowReturn static GstFlowReturn