Add pushBlankOnStop fix.
Fix wrong sidebandStream for push-blank-on-stop function.
We should set sidebandStream to nullptr before pushing blank buffer,
because blank buffer doesn't run in tunnel mode.
Test: MMP playback OK
Bug: 287924345
Change-Id: Iebbd11473a1accd2cb1ed71aaebc5a373482210c
diff --git a/media/libstagefright/SurfaceUtils.cpp b/media/libstagefright/SurfaceUtils.cpp
index 291b892..827052d 100644
--- a/media/libstagefright/SurfaceUtils.cpp
+++ b/media/libstagefright/SurfaceUtils.cpp
@@ -225,6 +225,13 @@
return err;
};
+ // We need to set sidebandStream to nullptr before pushing blank buffers
+ err = native_window_set_sideband_stream(nativeWindow, nullptr);
+ if (err != NO_ERROR) {
+ ALOGE("error setting sidebandStream to nullptr: %s (%d)", strerror(-err), -err);
+ return err;
+ }
+
// We need to reconnect to the ANativeWindow as a CPU client to ensure that
// no frames get dropped by SurfaceFlinger assuming that these are video
// frames.