From 12c2530b1d87fa94f81ea97df575b77c825e6f4f Mon Sep 17 00:00:00 2001
From: Justin Ruggles <justin.ruggles@gmail.com>
Date: Wed, 1 Aug 2012 15:57:31 -0400
Subject: [PATCH] idcin: fix check for presence of an audio stream

---
 libavformat/idcin.c | 10 ++++++----
 1 file changed, 6 insertions(+), 4 deletions(-)

diff --git a/libavformat/idcin.c b/libavformat/idcin.c
index 6b107b9904e..aa196c8b494 100644
--- a/libavformat/idcin.c
+++ b/libavformat/idcin.c
@@ -170,6 +170,10 @@ static int idcin_read_header(AVFormatContext *s)
             av_log(s, AV_LOG_ERROR, "invalid channels: %u\n", channels);
             return AVERROR_INVALIDDATA;
         }
+        idcin->audio_present = 1;
+    } else {
+        /* if sample rate is 0, assume no audio */
+        idcin->audio_present = 0;
     }
 
     st = avformat_new_stream(s, NULL);
@@ -190,8 +194,7 @@ static int idcin_read_header(AVFormatContext *s)
         HUFFMAN_TABLE_SIZE)
         return AVERROR(EIO);
 
-    /* if sample rate is 0, assume no audio */
-    if (sample_rate) {
+    if (idcin->audio_present) {
         idcin->audio_present = 1;
         st = avformat_new_stream(s, NULL);
         if (!st)
@@ -220,8 +223,7 @@ static int idcin_read_header(AVFormatContext *s)
                 (sample_rate / 14) * bytes_per_sample * channels;
         }
         idcin->current_audio_chunk = 0;
-    } else
-        idcin->audio_present = 1;
+    }
 
     idcin->next_chunk_is_video = 1;
     idcin->pts = 0;
-- 
GitLab