encode: remove early EOF failure handling

I don't see the point of this. Not doing it may defer an error to later.
That's OK? For now, it seems better to reduce the encoding internal API.
If someone can demonstrate that this is needed, I might reimplement it
in a different way.
This commit is contained in:
wm4 2020-09-03 12:29:12 +02:00
parent b9baa1598a
commit 2761f37fe4
4 changed files with 0 additions and 29 deletions

View File

@ -56,8 +56,6 @@ bool encode_lavc_showhelp(struct mp_log *log, struct encode_opts *options);
int encode_lavc_getstatus(struct encode_lavc_context *ctx, char *buf, int bufsize, float relative_position);
void encode_lavc_expect_stream(struct encode_lavc_context *ctx,
enum stream_type type);
void encode_lavc_stream_eof(struct encode_lavc_context *ctx,
enum stream_type type);
void encode_lavc_set_metadata(struct encode_lavc_context *ctx,
struct mp_tags *metadata);
bool encode_lavc_didfail(struct encode_lavc_context *ctx); // check if encoding failed

View File

@ -356,31 +356,6 @@ done:
pthread_mutex_unlock(&ctx->lock);
}
void encode_lavc_stream_eof(struct encode_lavc_context *ctx,
enum stream_type type)
{
if (!ctx)
return;
struct encode_priv *p = ctx->priv;
pthread_mutex_lock(&ctx->lock);
enum AVMediaType codec_type = mp_to_av_stream_type(type);
struct mux_stream *dst = find_mux_stream(ctx, codec_type);
// If we've reached EOF, even though the stream was selected, and we didn't
// ever initialize it, we have a problem. We could mux some sort of dummy
// stream (and could fail if actual data arrives later), or we bail out
// early.
if (dst && !dst->st) {
MP_ERR(p, "No data on stream %s.\n", dst->name);
p->failed = true;
}
pthread_mutex_unlock(&ctx->lock);
}
// Signal that you are ready to encode (you provide the codec params etc. too).
// This returns a muxing handle which you can use to add encodec packets.
// Can be called only once per stream. info is copied by callee as needed.

View File

@ -927,7 +927,6 @@ void fill_audio_out_buffers(struct MPContext *mpctx)
MP_VERBOSE(mpctx, "audio EOF reached\n");
mpctx->audio_status = STATUS_EOF;
mp_wakeup_core(mpctx);
encode_lavc_stream_eof(mpctx->encode_lavc_ctx, STREAM_AUDIO);
}
}

View File

@ -1072,7 +1072,6 @@ void write_video(struct MPContext *mpctx)
if (mpctx->time_frame <= 0 || !has_frame) {
MP_VERBOSE(mpctx, "video EOF reached\n");
mpctx->video_status = STATUS_EOF;
encode_lavc_stream_eof(mpctx->encode_lavc_ctx, STREAM_VIDEO);
}
}