From 0ed248f69d13d9e5003b68314d4d1d862d8a4c94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stephan=20A=C3=9Fmus?= Date: Sat, 1 Aug 2009 01:54:48 +0000 Subject: [PATCH] This should transfer the display aspect ratio correctly... git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@32051 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/apps/mediaconverter/MediaConverterApp.cpp | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/src/apps/mediaconverter/MediaConverterApp.cpp b/src/apps/mediaconverter/MediaConverterApp.cpp index c84eddfea3..3829332897 100644 --- a/src/apps/mediaconverter/MediaConverterApp.cpp +++ b/src/apps/mediaconverter/MediaConverterApp.cpp @@ -395,6 +395,18 @@ MediaConverterApp::_ConvertFile(BMediaFile* inFile, BMediaFile* outFile, printf("fixing color space (B_RGBA32 -> B_RGB32)"); rvf->display.format = B_RGB32; } + // Transfer the display aspect ratio. + if (inFormat.type == B_MEDIA_ENCODED_VIDEO) { + rvf->pixel_width_aspect + = inFormat.u.encoded_video.output.pixel_width_aspect; + rvf->pixel_height_aspect + = inFormat.u.encoded_video.output.pixel_height_aspect; + } else { + rvf->pixel_width_aspect + = inFormat.u.raw_video.pixel_width_aspect; + rvf->pixel_height_aspect + = inFormat.u.raw_video.pixel_height_aspect; + } videoBuffer = new (nothrow) uint8[height * rvf->display.bytes_per_row]; outVidTrack = outFile->CreateTrack(&outVidFormat, videoCodec);