Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2022-10-14 12:09:42 +0300
committerAnton Khirnov <anton@khirnov.net>2022-10-18 15:19:07 +0300
commitfe304c069487685734844e7e882589d56768d025 (patch)
tree73936ef5723c537312c89c4109598500e68b3d79 /fftools
parent7ef7a22251b852faab9404c85399ba8ac5dfbdc3 (diff)
fftools/ffmpeg: remove a cleanup block at the end of transcode()
Some of it is already duplicated in ost_free() - those parts can be just dropped. The rest is moved to ost_free(), as it properly belongs there.
Diffstat (limited to 'fftools')
-rw-r--r--fftools/ffmpeg.c29
1 files changed, 11 insertions, 18 deletions
diff --git a/fftools/ffmpeg.c b/fftools/ffmpeg.c
index b98065d2a0..4e9ea731ff 100644
--- a/fftools/ffmpeg.c
+++ b/fftools/ffmpeg.c
@@ -509,6 +509,14 @@ static void ost_free(OutputStream **post)
if (!ost)
return;
+ if (ost->logfile) {
+ if (fclose(ost->logfile))
+ av_log(NULL, AV_LOG_ERROR,
+ "Error closing logfile, loss of information possible: %s\n",
+ av_err2str(AVERROR(errno)));
+ ost->logfile = NULL;
+ }
+
av_bsf_free(&ost->bsf_ctx);
av_frame_free(&ost->filtered_frame);
@@ -521,6 +529,9 @@ static void ost_free(OutputStream **post)
av_expr_free(ost->forced_keyframes_pexpr);
av_freep(&ost->avfilter);
av_freep(&ost->logfile_prefix);
+ av_freep(&ost->forced_kf_pts);
+ av_freep(&ost->apad);
+ av_freep(&ost->disposition);
#if FFMPEG_OPT_MAP_CHANNEL
av_freep(&ost->audio_channels_map);
@@ -4033,24 +4044,6 @@ static int transcode(void)
fail:
free_input_threads();
- for (OutputStream *ost = ost_iter(NULL); ost; ost = ost_iter(ost)) {
- if (ost) {
- if (ost->logfile) {
- if (fclose(ost->logfile))
- av_log(NULL, AV_LOG_ERROR,
- "Error closing logfile, loss of information possible: %s\n",
- av_err2str(AVERROR(errno)));
- ost->logfile = NULL;
- }
- av_freep(&ost->forced_kf_pts);
- av_freep(&ost->apad);
- av_freep(&ost->disposition);
- av_dict_free(&ost->encoder_opts);
- av_dict_free(&ost->sws_dict);
- av_dict_free(&ost->swr_opts);
- }
- }
-
return ret;
}