From 05d3813db60beb159296cf6539fbf03ef9bc79a0 Mon Sep 17 00:00:00 2001
From: philippegorley <philippe.gorley@savoirfairelinux.com>
Date: Wed, 1 Aug 2018 16:58:38 -0400
Subject: [PATCH] decoder: set channel layout

Change-Id: I9aadd0696d7ad2e467ffe19841bc9e919e08777a
---
 src/media/media_decoder.cpp | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/media/media_decoder.cpp b/src/media/media_decoder.cpp
index 1f1a8366d9..f47bd17592 100644
--- a/src/media/media_decoder.cpp
+++ b/src/media/media_decoder.cpp
@@ -338,6 +338,10 @@ MediaDecoder::decode(const AudioFrame& decodedFrame)
     if (frameFinished) {
         av_packet_unref(&inpacket);
 
+        // channel layout is needed if frame will be resampled
+        if (!frame->channel_layout)
+            frame->channel_layout = av_get_default_channel_layout(frame->channels);
+
         auto packetTimestamp = frame->pts;
         // NOTE don't use clock to rescale audio pts, it may create artifacts
         frame->pts = av_rescale_q_rnd(frame->pts, avStream_->time_base, decoderCtx_->time_base,
-- 
GitLab