diff --git a/media/jni/android_media_MediaCodec.cpp b/media/jni/android_media_MediaCodec.cpp index 16f6284b60314..3490ff8fcf432 100644 --- a/media/jni/android_media_MediaCodec.cpp +++ b/media/jni/android_media_MediaCodec.cpp @@ -742,7 +742,12 @@ status_t JMediaCodec::setParameters(const sp &msg) { void JMediaCodec::setVideoScalingMode(int mode) { if (mSurfaceTextureClient != NULL) { + // this works for components that queue to surface native_window_set_scaling_mode(mSurfaceTextureClient.get(), mode); + // also signal via param for components that queue to IGBP + sp msg = new AMessage; + msg->setInt32("android._video-scaling", mode); + (void)mCodec->setParameters(msg); } }