lavf/gxfenc: return proper error codes in case of failure

This commit is contained in:
Stefano Sabatini 2024-03-20 16:03:42 +01:00
parent 3733aa7b17
commit 5c60be3ab6
1 changed files with 6 additions and 6 deletions

View File

@ -692,7 +692,7 @@ static int gxf_write_header(AVFormatContext *s)
if (!(pb->seekable & AVIO_SEEKABLE_NORMAL)) {
av_log(s, AV_LOG_ERROR, "gxf muxer does not support streamed output, patch welcome\n");
return -1;
return AVERROR_PATCHWELCOME;
}
gxf->flags |= 0x00080000; /* material is simple clip */
@ -707,15 +707,15 @@ static int gxf_write_header(AVFormatContext *s)
if (st->codecpar->codec_type == AVMEDIA_TYPE_AUDIO) {
if (st->codecpar->codec_id != AV_CODEC_ID_PCM_S16LE) {
av_log(s, AV_LOG_ERROR, "only 16 BIT PCM LE allowed for now\n");
return -1;
return AVERROR(EINVAL);
}
if (st->codecpar->sample_rate != 48000) {
av_log(s, AV_LOG_ERROR, "only 48000hz sampling rate is allowed\n");
return -1;
return AVERROR(EINVAL);
}
if (st->codecpar->ch_layout.nb_channels != 1) {
av_log(s, AV_LOG_ERROR, "only mono tracks are allowed\n");
return -1;
return AVERROR(EINVAL);
}
ret = ff_stream_add_bitstream_filter(st, "pcm_rechunk", "n="AV_STRINGIFY(GXF_SAMPLES_PER_FRAME));
if (ret < 0)
@ -733,7 +733,7 @@ static int gxf_write_header(AVFormatContext *s)
} else if (st->codecpar->codec_type == AVMEDIA_TYPE_VIDEO) {
if (i != 0) {
av_log(s, AV_LOG_ERROR, "video stream must be the first track\n");
return -1;
return AVERROR(EINVAL);
}
/* FIXME check from time_base ? */
if (st->codecpar->height == 480 || st->codecpar->height == 512) { /* NTSC or NTSC+VBI */
@ -750,7 +750,7 @@ static int gxf_write_header(AVFormatContext *s)
} else {
av_log(s, AV_LOG_ERROR, "unsupported video resolution, "
"gxf muxer only accepts PAL or NTSC resolutions currently\n");
return -1;
return AVERROR(EINVAL);
}
if (!tcr)
tcr = av_dict_get(st->metadata, "timecode", NULL, 0);