[PATCH 0/2] Capture and display frame thumbnails in qapitrace

Dan McCabe zen3d.linux at gmail.com
Wed Feb 29 11:56:26 PST 2012


This patch set automatically captures and displays thumbnails for each
frame in qapitrace.

qapitrace spawns glretrace in a separate process to replay traces and 
capture relevent information about those traces. In the first patch, a
sequence of snapshots is generated and captured. In the second patch, 
those snapshots are associated with the approproate ApiTraceFrame. When 
the ApiTraceEvent is processed for each frame, the snapshot is reduced 
in size for a thumbnail and that thumbnail is displayed at the front
of the frame's information.

Open issue: the thumbnail isn't immediately displayed. However, the
instant the user interacts with the app, all thumbnails are displayed.
Suggestions on how to force the app to initiate that update without
user interaction would be appreciated.

Open issue: the communication of an image stream from glretrace to
qapitrace is a bit fragile. I have encountered several exceptions when
Qt runs out of memory in QProcess::readAllStandardOutput() and an 
exception is thrown. Qt isn't particularly graceful about handling 
this exception. There are ways to mitigate this running out of memory 
and I am currently working on that. One way is to reduce the snapshot 
size at the time of capture. I prototyped a snapshot scaling arg in 
glretrace, but I'm open to other suggestions.


More information about the apitrace mailing list