diff --git a/ffmpeg.c b/ffmpeg.c
index 0f6bc30e597e7c03573abbf0dcc300543ab46710..9fd6b4250e6b548f03c369817850628c9b8f3344 100644
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -2007,6 +2007,10 @@ static int transcode_audio(InputStream *ist, AVPacket *pkt, int *got_output)
     if (ret < 0) {
         return ret;
     }
+    if (avctx->sample_rate <= 0) {
+        av_log(avctx, AV_LOG_ERROR, "Sample rate %d invalid\n", avctx->sample_rate);
+        return AVERROR_INVALIDDATA;
+    }
 
     if (!*got_output) {
         /* no audio frame */