mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-23 08:46:40 +00:00
deinterleave: Allow switching between 1 channel configs
regardless of whether they're positioned, since positioning with a 1 channel stream doesn't change anything.
This commit is contained in:
parent
eddaf49510
commit
a329a3a2c6
1 changed files with 13 additions and 3 deletions
|
@ -365,13 +365,23 @@ gst_deinterleave_check_caps_change (GstDeinterleave * self,
|
|||
gint i;
|
||||
gboolean same_layout = TRUE;
|
||||
gboolean was_unpositioned;
|
||||
gboolean is_unpositioned = GST_AUDIO_INFO_IS_UNPOSITIONED (new_info);
|
||||
gint new_channels = GST_AUDIO_INFO_CHANNELS (new_info);
|
||||
gboolean is_unpositioned;
|
||||
gint new_channels;
|
||||
gint old_channels;
|
||||
|
||||
was_unpositioned = GST_AUDIO_INFO_IS_UNPOSITIONED (old_info);
|
||||
new_channels = GST_AUDIO_INFO_CHANNELS (new_info);
|
||||
old_channels = GST_AUDIO_INFO_CHANNELS (old_info);
|
||||
|
||||
if (GST_AUDIO_INFO_IS_UNPOSITIONED (new_info) || new_channels == 1)
|
||||
is_unpositioned = TRUE;
|
||||
else
|
||||
is_unpositioned = FALSE;
|
||||
|
||||
if (GST_AUDIO_INFO_IS_UNPOSITIONED (old_info) || old_channels == 1)
|
||||
was_unpositioned = TRUE;
|
||||
else
|
||||
was_unpositioned = FALSE;
|
||||
|
||||
/* We allow caps changes as long as the number of channels doesn't change
|
||||
* and the channel positions stay the same. _getcaps() should've cared
|
||||
* for this already but better be safe.
|
||||
|
|
Loading…
Reference in a new issue