summaryrefslogtreecommitdiff
path: root/libs/ultrahdr/jpegencoderhelper.cpp
diff options
context:
space:
mode:
author Kean Mariotti <keanmariotti@google.com> 2023-04-20 12:06:29 +0000
committer Kean Mariotti <keanmariotti@google.com> 2023-08-28 09:40:01 +0000
commit22cbec5335e84a18ed913d3272609828e7c9c649 (patch)
tree4d654570f8a0543e6d41f6b7a3b58fe03b74c102 /libs/ultrahdr/jpegencoderhelper.cpp
parent5dad909092932dc5c02d1be2f6ece1a3d06908ad (diff)
Integrate layer tracing with perfetto
Define the perfetto custom data source LayerDataSource. LayerDataSource is registered with perfetto. The data source is used to listen to perfetto events (setup, start, stop, flush) and to write trace packets to perfetto. The user can configure/start/stop tracing via /system/bin/perfetto. Tracing can operate in the following modes. ACTIVE mode: A layers snapshot is taken and written to perfetto for each vsyncid commit. GENERATED mode: Listens to the perfetto 'flush' event (e.g. when a bugreport is taken). When a 'flush' event is received, the ring buffer of transactions (hold by TransactionTracing) is processed by LayerTraceGenerator, a sequence of layers snapshots is generated and written to perfetto. DUMP mode: When the 'start' event is received a single layers snapshot is taken and written to perfetto. Bug: b/284424784 Test: atest libsurfaceflinger_unittest && atest transactiontrace_testsuite Change-Id: I8baaae9c512284a0d4fc926094dd8ed6eb23a43f
Diffstat (limited to 'libs/ultrahdr/jpegencoderhelper.cpp')
0 files changed, 0 insertions, 0 deletions