Support forcing all screenshots into a CPU consumer
Looks like a full GPU path is less efficient on some GPU drivers that we're still using, and CPU is reliably faster... (there's probably a locking condition going on somewhere, this needs to be looked into) Change-Id: I8878796a117d65bf2324507cf8755cadce49f6dc
This commit is contained in:
parent
ff59fbd819
commit
f4fac7e93f
@ -683,6 +683,12 @@ status_t SurfaceComposerClient::getAnimationFrameStats(FrameStats* outStats) {
|
|||||||
|
|
||||||
// ----------------------------------------------------------------------------
|
// ----------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#ifndef FORCE_SCREENSHOT_CPU_PATH
|
||||||
|
#define SS_CPU_CONSUMER false
|
||||||
|
#else
|
||||||
|
#define SS_CPU_CONSUMER true
|
||||||
|
#endif
|
||||||
|
|
||||||
status_t ScreenshotClient::capture(
|
status_t ScreenshotClient::capture(
|
||||||
const sp<IBinder>& display,
|
const sp<IBinder>& display,
|
||||||
const sp<IGraphicBufferProducer>& producer,
|
const sp<IGraphicBufferProducer>& producer,
|
||||||
@ -692,7 +698,7 @@ status_t ScreenshotClient::capture(
|
|||||||
if (s == NULL) return NO_INIT;
|
if (s == NULL) return NO_INIT;
|
||||||
return s->captureScreen(display, producer, sourceCrop,
|
return s->captureScreen(display, producer, sourceCrop,
|
||||||
reqWidth, reqHeight, minLayerZ, maxLayerZ, useIdentityTransform,
|
reqWidth, reqHeight, minLayerZ, maxLayerZ, useIdentityTransform,
|
||||||
ISurfaceComposer::eRotateNone, false);
|
ISurfaceComposer::eRotateNone, SS_CPU_CONSUMER);
|
||||||
}
|
}
|
||||||
|
|
||||||
ScreenshotClient::ScreenshotClient()
|
ScreenshotClient::ScreenshotClient()
|
||||||
|
Loading…
Reference in New Issue
Block a user