[FFmpeg-cvslog] af_ashowinfo: fix plane size computation for planar layout formats

Stefano Sabatini git at videolan.org
Sun Oct 16 02:00:09 CEST 2011


ffmpeg | branch: master | Stefano Sabatini <stefasab at gmail.com> | Sun Oct 16 01:49:20 2011 +0200| [bca8bd99d095ccaec07a5a7a38c77db6a30d68dc] | committer: Stefano Sabatini

af_ashowinfo: fix plane size computation for planar layout formats

+10l.

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

 libavfilter/af_ashowinfo.c |    3 ++-
 1 files changed, 2 insertions(+), 1 deletions(-)

diff --git a/libavfilter/af_ashowinfo.c b/libavfilter/af_ashowinfo.c
index c8e4d31..0ad7252 100644
--- a/libavfilter/af_ashowinfo.c
+++ b/libavfilter/af_ashowinfo.c
@@ -46,9 +46,10 @@ static void filter_samples(AVFilterLink *inlink, AVFilterBufferRef *samplesref)
     char chlayout_str[128];
     int plane;
     int linesize =
-        av_get_channel_layout_nb_channels(samplesref->audio->channel_layout) *
         samplesref->audio->nb_samples *
         av_get_bytes_per_sample(samplesref->format);
+    if (!samplesref->audio->planar) /* packed layout */
+        linesize *= av_get_channel_layout_nb_channels(samplesref->audio->channel_layout);
 
     for (plane = 0; samplesref->data[plane] && plane < 8; plane++) {
         uint8_t *data = samplesref->data[plane];



More information about the ffmpeg-cvslog mailing list