diff options
author | James Dong <jdong@google.com> | 2011-03-18 17:55:06 -0700 |
---|---|---|
committer | James Dong <jdong@google.com> | 2011-03-20 14:46:30 -0700 |
commit | 1d54b3e0ec3d1ef17e75fec6f97be59f29721fff (patch) | |
tree | ad42cd96318e48dd848cb504d3264e80873d5f5b /media | |
parent | ebd5d2541d4e5351fd1f1a23fc9ef047cfa67575 (diff) | |
download | frameworks_av-1d54b3e0ec3d1ef17e75fec6f97be59f29721fff.zip frameworks_av-1d54b3e0ec3d1ef17e75fec6f97be59f29721fff.tar.gz frameworks_av-1d54b3e0ec3d1ef17e75fec6f97be59f29721fff.tar.bz2 |
Scale the thumbnail if display dimension is different from the actual buffer size
bug - 3379293
Change-Id: I31c08010c97387716433da99d648bd364847b6aa
Diffstat (limited to 'media')
-rw-r--r-- | media/libstagefright/StagefrightMetadataRetriever.cpp | 10 |
1 files changed, 9 insertions, 1 deletions
diff --git a/media/libstagefright/StagefrightMetadataRetriever.cpp b/media/libstagefright/StagefrightMetadataRetriever.cpp index c371cd0..6f67ba7 100644 --- a/media/libstagefright/StagefrightMetadataRetriever.cpp +++ b/media/libstagefright/StagefrightMetadataRetriever.cpp @@ -231,6 +231,14 @@ static VideoFrame *extractVideoFrameWithCodecFlags( frame->mData = new uint8_t[frame->mSize]; frame->mRotationAngle = rotationAngle; + int32_t displayWidth, displayHeight; + if (meta->findInt32(kKeyDisplayWidth, &displayWidth)) { + frame->mDisplayWidth = displayWidth; + } + if (meta->findInt32(kKeyDisplayHeight, &displayHeight)) { + frame->mDisplayHeight = displayHeight; + } + int32_t srcFormat; CHECK(meta->findInt32(kKeyColorFormat, &srcFormat)); @@ -465,7 +473,7 @@ void StagefrightMetadataRetriever::parseMetaData() { } if (numTracks == 1 && hasAudio && audioBitrate >= 0) { - sprintf(tmp, "%ld", audioBitrate); + sprintf(tmp, "%d", audioBitrate); mMetaData.add(METADATA_KEY_BITRATE, String8(tmp)); } else { off64_t sourceSize; |