summaryrefslogtreecommitdiff
path: root/avconv.c
diff options
context:
space:
mode:
authorAnton Khirnov <anton@khirnov.net>2012-03-29 09:00:09 +0200
committerAnton Khirnov <anton@khirnov.net>2012-04-15 20:24:07 +0200
commit836ce90566d5c14f2f45303b9cc46b321ddca61f (patch)
treead33908db9c8f001b69ccbe7bb2e35953d8bc247 /avconv.c
parent6c9eac19988fb85d9bf911e20e9675d814ab10dd (diff)
avconv: move filtered_frame from InputStream to OutputStream.
It more properly belongs to output, not input.
Diffstat (limited to 'avconv.c')
-rw-r--r--avconv.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/avconv.c b/avconv.c
index c343ef0087..b5a171d3eb 100644
--- a/avconv.c
+++ b/avconv.c
@@ -165,7 +165,6 @@ typedef struct InputStream {
int decoding_needed; /* true if the packets must be decoded in 'raw_fifo' */
AVCodec *dec;
AVFrame *decoded_frame;
- AVFrame *filtered_frame;
int64_t start; /* time when read started */
/* predicted dts of the next packet read for this stream or (when there are
@@ -217,6 +216,7 @@ typedef struct OutputStream {
AVCodec *enc;
int64_t max_frames;
AVFrame *output_frame;
+ AVFrame *filtered_frame;
/* video only */
AVRational frame_rate;
@@ -700,6 +700,7 @@ void exit_program(int ret)
}
av_freep(&output_streams[i]->avfilter);
+ av_freep(&output_streams[i]->filtered_frame);
av_freep(&output_streams[i]);
}
for (i = 0; i < nb_input_files; i++) {
@@ -708,7 +709,6 @@ void exit_program(int ret)
}
for (i = 0; i < nb_input_streams; i++) {
av_freep(&input_streams[i]->decoded_frame);
- av_freep(&input_streams[i]->filtered_frame);
av_dict_free(&input_streams[i]->opts);
free_buffer_pool(input_streams[i]);
av_freep(&input_streams[i]);
@@ -1950,12 +1950,12 @@ static int transcode_video(InputStream *ist, AVPacket *pkt, int *got_output, int
av_vsrc_buffer_add_frame(ost->input_video_filter, decoded_frame,
decoded_frame->pts, decoded_frame->sample_aspect_ratio);
- if (!ist->filtered_frame && !(ist->filtered_frame = avcodec_alloc_frame())) {
+ if (!ost->filtered_frame && !(ost->filtered_frame = avcodec_alloc_frame())) {
ret = AVERROR(ENOMEM);
goto fail;
} else
- avcodec_get_frame_defaults(ist->filtered_frame);
- filtered_frame = ist->filtered_frame;
+ avcodec_get_frame_defaults(ost->filtered_frame);
+ filtered_frame = ost->filtered_frame;
frame_available = avfilter_poll_frame(ost->output_video_filter->inputs[0]);
while (frame_available) {