mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-31 20:48:56 +00:00
ext/faad/gstfaad.c: Handle gracefully the consequence of "Maximum number of scalefactor bands exceeded", which result...
Original commit message from CVS: * ext/faad/gstfaad.c: (gst_faad_srcgetcaps): Handle gracefully the consequence of "Maximum number of scalefactor bands exceeded", which results in 0 channels with samplerates of 0. * gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state): Do upward transitions, then call parent state_change, then do downward transitions.
This commit is contained in:
parent
f361f01052
commit
1be0809073
3 changed files with 15 additions and 3 deletions
|
@ -1,3 +1,12 @@
|
||||||
|
2005-11-28 Edward Hervey <edward@fluendo.com>
|
||||||
|
|
||||||
|
* ext/faad/gstfaad.c: (gst_faad_srcgetcaps):
|
||||||
|
Handle gracefully the consequence of "Maximum number of scalefactor
|
||||||
|
bands exceeded", which results in 0 channels with samplerates of 0.
|
||||||
|
* gst/qtdemux/qtdemux.c: (gst_qtdemux_change_state):
|
||||||
|
Do upward transitions, then call parent state_change, then do
|
||||||
|
downward transitions.
|
||||||
|
|
||||||
2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
|
2005-11-28 Thomas Vander Stichele <thomas at apestaart dot org>
|
||||||
|
|
||||||
* ext/Makefile.am:
|
* ext/Makefile.am:
|
||||||
|
|
|
@ -474,13 +474,13 @@ gst_faad_srcgetcaps (GstPad * pad)
|
||||||
if (!str)
|
if (!str)
|
||||||
continue;
|
continue;
|
||||||
|
|
||||||
if (faad->samplerate != -1) {
|
if (faad->samplerate > 0) {
|
||||||
gst_structure_set (str, "rate", G_TYPE_INT, faad->samplerate, NULL);
|
gst_structure_set (str, "rate", G_TYPE_INT, faad->samplerate, NULL);
|
||||||
} else {
|
} else {
|
||||||
gst_structure_set (str, "rate", GST_TYPE_INT_RANGE, 8000, 96000, NULL);
|
gst_structure_set (str, "rate", GST_TYPE_INT_RANGE, 8000, 96000, NULL);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (faad->channels != -1) {
|
if (faad->channels > 0) {
|
||||||
gst_structure_set (str, "channels", G_TYPE_INT, faad->channels, NULL);
|
gst_structure_set (str, "channels", G_TYPE_INT, faad->channels, NULL);
|
||||||
|
|
||||||
/* put channel information here */
|
/* put channel information here */
|
||||||
|
|
|
@ -458,6 +458,9 @@ static GstStateChangeReturn
|
||||||
gst_qtdemux_change_state (GstElement * element, GstStateChange transition)
|
gst_qtdemux_change_state (GstElement * element, GstStateChange transition)
|
||||||
{
|
{
|
||||||
GstQTDemux *qtdemux = GST_QTDEMUX (element);
|
GstQTDemux *qtdemux = GST_QTDEMUX (element);
|
||||||
|
GstStateChangeReturn result = GST_STATE_CHANGE_FAILURE;
|
||||||
|
|
||||||
|
result = GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
|
||||||
|
|
||||||
switch (transition) {
|
switch (transition) {
|
||||||
case GST_STATE_CHANGE_PAUSED_TO_READY:{
|
case GST_STATE_CHANGE_PAUSED_TO_READY:{
|
||||||
|
@ -480,7 +483,7 @@ gst_qtdemux_change_state (GstElement * element, GstStateChange transition)
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
return GST_ELEMENT_CLASS (parent_class)->change_state (element, transition);
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Reference in a new issue