aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorGyan Doshi <gyandoshi@gmail.com>2018-02-20 20:31:28 +0530
committerMichael Niedermayer <michael@niedermayer.cc>2018-02-22 00:29:27 +0100
commit4f8c691040b026d001ff33d38c0e1516a35b946e (patch)
tree41a8490fe473729b3eefc556c17110da5c74bd23
parentff0de964e7abba6df0d8923f70f93cbd6c242ec8 (diff)
downloadffmpeg-4f8c691040b026d001ff33d38c0e1516a35b946e.tar.gz
avformat/mpegenc - log error msgs for unsupported LPCM streams
The MPEG-PS muxer only accepts PCM streams having up to 8 channels and the following sampling rates: 32/44.1/48/96 kHz. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
-rw-r--r--libavformat/mpegenc.c15
1 files changed, 12 insertions, 3 deletions
diff --git a/libavformat/mpegenc.c b/libavformat/mpegenc.c
index c84dc52eb9..4c6fa67fb8 100644
--- a/libavformat/mpegenc.c
+++ b/libavformat/mpegenc.c
@@ -375,10 +375,19 @@ static av_cold int mpeg_mux_init(AVFormatContext *ctx)
if (lpcm_freq_tab[j] == st->codecpar->sample_rate)
break;
}
- if (j == 4)
+ if (j == 4) {
+ int sr;
+ av_log(ctx, AV_LOG_ERROR, "Invalid sampling rate for PCM stream.\n");
+ av_log(ctx, AV_LOG_INFO, "Allowed sampling rates:");
+ for (sr = 0; sr < 4; sr++)
+ av_log(ctx, AV_LOG_INFO, " %d", lpcm_freq_tab[sr]);
+ av_log(ctx, AV_LOG_INFO, "\n");
goto fail;
- if (st->codecpar->channels > 8)
- return -1;
+ }
+ if (st->codecpar->channels > 8) {
+ av_log(ctx, AV_LOG_ERROR, "At most 8 channels allowed for LPCM streams.\n");
+ goto fail;
+ }
stream->lpcm_header[0] = 0x0c;
stream->lpcm_header[1] = (st->codecpar->channels - 1) | (j << 4);
stream->lpcm_header[2] = 0x80;