ImageMetadata* pImageMeta = null;
ImageBuffer* pImage = null;
+ ImageBuffer* pRotatedImgBuff = null;
+
VideoFrameExtractor extractor;
+ RecordingRotation videoRecordingRotation;
Bitmap* pTmpBmp = null;
AppLogDebug("VideoThumbnail:GetFrameNStop");
if ( pImage )
{
- pRequest->pBitmap = pImage->GetBitmapN(BITMAP_PIXEL_FORMAT_ARGB8888, BUFFER_SCALING_NONE);
+ videoRecordingRotation = extractor.GetRecordingRotation();
+
+ if ( videoRecordingRotation != RECORDING_ROTATION_NONE )
+ {
+ if ( videoRecordingRotation == RECORDING_ROTATION_90 )
+ pRotatedImgBuff = pImage->RotateN(IMAGE_ROTATION_90);
+ else if ( videoRecordingRotation == RECORDING_ROTATION_180 )
+ pRotatedImgBuff = pImage->RotateN(IMAGE_ROTATION_180);
+ else if ( videoRecordingRotation == RECORDING_ROTATION_270 )
+ pRotatedImgBuff = pImage->RotateN(IMAGE_ROTATION_270);
+ }
+
+ pRequest->pBitmap = pRotatedImgBuff->GetBitmapN(BITMAP_PIXEL_FORMAT_ARGB8888, BUFFER_SCALING_NONE);
TryCatch(pRequest->pBitmap != null, r = E_OUT_OF_MEMORY, "FRAMEEXTRACTOR : failed to allocate memory to pTempBitmap");
delete pImage;
}
pTempBitmap = MakeBitmapN(FilePath, GenerateThumbnail, IsVideoFile);
- TryCatch(pTempBitmap != null, r = E_FAILURE, "Thumbnail Geneeration failed");
+ TryCatch(pTempBitmap != null, r = E_FAILURE, "Thumbnail Generation failed");
if (GenerateThumbnail)
{