- p_dec->fmt_in.video.i_aspect );
- p_sys->i_raw_size = p_dec->fmt_out.video.i_bits_per_pixel *
- p_dec->fmt_out.video.i_width * p_dec->fmt_out.video.i_height / 8;
-
- if( !p_dec->fmt_in.video.i_aspect )
+ p_dec->fmt_in.video.i_sar_num,
+ p_dec->fmt_in.video.i_sar_den );
+ picture_t picture;
+ picture_Setup( &picture, p_dec->fmt_out.i_codec,
+ p_dec->fmt_in.video.i_width,
+ p_dec->fmt_in.video.i_height, 0, 1 );
+ p_sys->i_raw_size = 0;
+ for( int i = 0; i < picture.i_planes; i++ )
+ p_sys->i_raw_size += picture.p[i].i_visible_pitch *
+ picture.p[i].i_visible_lines;
+
+ if( !p_dec->fmt_in.video.i_sar_num || !p_dec->fmt_in.video.i_sar_den )