[FFmpeg-cvslog] avconv: only set SAR once on the decoded frame.

Anton Khirnov git at videolan.org
Mon Apr 9 23:20:52 CEST 2012


ffmpeg | branch: master | Anton Khirnov <anton at khirnov.net> | Thu Mar 22 09:37:33 2012 +0100| [695ec04e6a142a12bf4c3acd8fd74c59a17e3934] | committer: Anton Khirnov

avconv: only set SAR once on the decoded frame.

No point in repeating the assignment for each output stream.

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=695ec04e6a142a12bf4c3acd8fd74c59a17e3934
---

 avconv.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/avconv.c b/avconv.c
index 95dc8d8..7fefec4 100644
--- a/avconv.c
+++ b/avconv.c
@@ -1913,6 +1913,9 @@ static int transcode_video(InputStream *ist, AVPacket *pkt, int *got_output, int
 
     rate_emu_sleep(ist);
 
+    if (ist->st->sample_aspect_ratio.num)
+        decoded_frame->sample_aspect_ratio = ist->st->sample_aspect_ratio;
+
     for (i = 0; i < nb_output_streams; i++) {
         OutputStream *ost = &output_streams[i];
         int frame_size, resample_changed;
@@ -1941,8 +1944,6 @@ static int transcode_video(InputStream *ist, AVPacket *pkt, int *got_output, int
             ost->resample_pix_fmt = decoded_frame->format;
         }
 
-        if (ist->st->sample_aspect_ratio.num)
-            decoded_frame->sample_aspect_ratio = ist->st->sample_aspect_ratio;
         if (ist->st->codec->codec->capabilities & CODEC_CAP_DR1) {
             FrameBuffer      *buf = decoded_frame->opaque;
             AVFilterBufferRef *fb = avfilter_get_video_buffer_ref_from_arrays(



More information about the ffmpeg-cvslog mailing list