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>
This commit is contained in:
parent
ff0de964e7
commit
4f8c691040
@ -375,10 +375,19 @@ static av_cold int mpeg_mux_init(AVFormatContext *ctx)
|
|||||||
if (lpcm_freq_tab[j] == st->codecpar->sample_rate)
|
if (lpcm_freq_tab[j] == st->codecpar->sample_rate)
|
||||||
break;
|
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;
|
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[0] = 0x0c;
|
||||||
stream->lpcm_header[1] = (st->codecpar->channels - 1) | (j << 4);
|
stream->lpcm_header[1] = (st->codecpar->channels - 1) | (j << 4);
|
||||||
stream->lpcm_header[2] = 0x80;
|
stream->lpcm_header[2] = 0x80;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user