[vlc-devel] [PATCH 3/8] aout: check and keep the channel_type and the ambisonic order

Adrien Maglo magsoft at videolan.org
Fri Feb 24 16:14:57 CET 2017


---
 src/audio_output/filters.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/audio_output/filters.c b/src/audio_output/filters.c
index 175a8b0..7c42dc6 100644
--- a/src/audio_output/filters.c
+++ b/src/audio_output/filters.c
@@ -160,7 +160,8 @@ static int aout_FiltersPipelineCreate(vlc_object_t *obj, filter_t **filters,
     assert (AOUT_FMT_LINEAR(&input));
 
     /* Remix channels */
-    if (infmt->i_physical_channels != outfmt->i_physical_channels
+    if (infmt->channel_type != outfmt->channel_type
+     || infmt->i_physical_channels != outfmt->i_physical_channels
      || infmt->i_original_channels != outfmt->i_original_channels)
     {   /* Remixing currently requires FL32... TODO: S16N */
         if (input.i_format != VLC_CODEC_FL32)
@@ -185,6 +186,7 @@ static int aout_FiltersPipelineCreate(vlc_object_t *obj, filter_t **filters,
         audio_sample_format_t output;
         output.i_format = input.i_format;
         output.i_rate = input.i_rate;
+        output.channel_type = outfmt->channel_type;
         output.i_physical_channels = outfmt->i_physical_channels;
         output.i_original_channels = outfmt->i_original_channels;
         aout_FormatPrepare (&output);
-- 
2.9.3



More information about the vlc-devel mailing list