Bug 1349133 - Support video rotation. r?kinetik
MozReview-Commit-ID: GErgah40omc
--- a/media/libstagefright/binding/DecoderData.cpp
+++ b/media/libstagefright/binding/DecoderData.cpp
@@ -261,16 +261,17 @@ MP4VideoInfo::Update(const mp4parse_trac
}
mTrackId = track->track_id;
mDuration = track->duration;
mMediaTime = track->media_time;
mDisplay.width = video->display_width;
mDisplay.height = video->display_height;
mImage.width = video->image_width;
mImage.height = video->image_height;
+ mRotation = ToSupportedRotation(video->rotation);
if (video->extra_data.data) {
mExtraData->AppendElements(video->extra_data.data, video->extra_data.length);
}
}
bool
MP4VideoInfo::IsValid() const
{
--- a/media/libstagefright/binding/MP4Metadata.cpp
+++ b/media/libstagefright/binding/MP4Metadata.cpp
@@ -368,16 +368,17 @@ MP4Metadata::GetTrackInfo(mozilla::Track
MOZ_DIAGNOSTIC_ASSERT(*audioRust->mExtraData == *audio->mExtraData);
MOZ_DIAGNOSTIC_ASSERT(*audioRust->mCodecSpecificConfig == *audio->mCodecSpecificConfig);
break;
}
case mozilla::TrackInfo::kVideoTrack: {
VideoInfo *videoRust = infoRust->GetAsVideoInfo(), *video = info->GetAsVideoInfo();
MOZ_DIAGNOSTIC_ASSERT(videoRust->mDisplay == video->mDisplay);
MOZ_DIAGNOSTIC_ASSERT(videoRust->mImage == video->mImage);
+ MOZ_DIAGNOSTIC_ASSERT(videoRust->mRotation == video->mRotation);
MOZ_DIAGNOSTIC_ASSERT(*videoRust->mExtraData == *video->mExtraData);
// mCodecSpecificConfig is for video/mp4-es, not video/avc. Since video/mp4-es
// is supported on b2g only, it could be removed from TrackInfo.
MOZ_DIAGNOSTIC_ASSERT(*videoRust->mCodecSpecificConfig == *video->mCodecSpecificConfig);
break;
}
default:
break;