* trace OpenGL, OpenGL ES, Direct3D, and DirectDraw APIs calls to a file;
-* retrace OpenGL and OpenGL ES calls from a file;
+* replay OpenGL and OpenGL ES calls from a file;
* inspect OpenGL state at any call while retracing;
Replay an OpenGL trace with
- apitrace retrace application.trace
+ apitrace replay application.trace
Pass the `--sb` option to use a single buffered visual. Pass `--help` to
-`apitrace retrace` for more options.
+`apitrace replay` for more options.
Basic GUI usage
### Android ###
The following instructions should work at least for Android Ice Scream
-Sandwitch:
+Sandwitch.
-For standalone applications the instructions above for Linux should
-work. To trace applications started from within the Android VM process
+To trace applications started from within the Android VM process
(`app_process` aka zygote) you'll have to wrap this process and enable
tracing dynamically for the application to be traced.
Launch the application for example from the application menu.
+To trace standalone applications do:
+
+ adb push /path/to/apitrace/build/wrappers/egltrace.so /data
+ adb shell
+ # cd /data/local/tmp
+ # LD_PRELOAD=/data/egltrace.so test-opengl-gl2_basic
+ adb pull /data/local/tmp/test-opengl-gl2_basic.trace
+ apitrace replay test-opengl-gl2_basic.trace
+
### Mac OS X ###
Run the application you want to trace as
You can get a dump of the bound GL state at call 12345 by doing:
- apitrace retrace -D 12345 application.trace > 12345.json
+ apitrace replay -D 12345 application.trace > 12345.json
This is precisely the mechanism the GUI obtains its own state.
For example, to record all profiling data and utilise the per shader script:
- apitrace retrace --pgpu --pcpu --ppd foo.trace | ./scripts/profileshader.py
+ apitrace replay --pgpu --pcpu --ppd foo.trace | ./scripts/profileshader.py
Advanced usage for OpenGL implementors