Hi Will,
We are noticing a similar issue, and looking at the Android logs, it appears we are getting a crash in the c++ side of the app when the stream is being shut down in the pause function. This only started for us when we updated to 3.0. The shutdown looks normal in the logs up until the last bit where it’s destroying the receiver:
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=1/0,940/305MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1555MHz,Free=2894MB,PLS=0,Temp=26.7C/0.0C,TW=4.14ms,App=2.30ms,GD=0.29ms,CPU&GPU=6.06ms,LCnt=1,GPU%=0.51,CPU%=0.24(W0.26),DSF=1.00
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=1/0,940/305MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1555MHz,Free=2890MB,PLS=0,Temp=26.7C/0.0C,TW=4.13ms,App=2.31ms,GD=0.62ms,CPU&GPU=5.87ms,LCnt=1,GPU%=0.54,CPU%=0.30(W0.33),DSF=1.00
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,710/305MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1353MHz,Free=2889MB,PLS=0,Temp=26.7C/0.0C,TW=4.11ms,App=2.32ms,GD=0.31ms,CPU&GPU=5.28ms,LCnt=1,GPU%=0.52,CPU%=0.31(W0.55),DSF=1.00
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,710/305MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1353MHz,Free=2889MB,PLS=0,Temp=26.7C/0.0C,TW=4.11ms,App=2.33ms,GD=0.76ms,CPU&GPU=5.48ms,LCnt=1,GPU%=0.57,CPU%=0.30(W0.39),DSF=1.00
I/Telemetry: App memory usage: PSS=285MB DalvikPSS=1 MB
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,710/305MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1353MHz,Free=2891MB,PLS=0,Temp=26.7C/0.0C,TW=4.13ms,App=2.34ms,GD=0.29ms,CPU&GPU=5.74ms,LCnt=1,GPU%=0.51,CPU%=0.28(W0.43),DSF=1.00
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,710/305MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1555MHz,Free=2887MB,PLS=0,Temp=26.7C/0.0C,TW=4.15ms,App=2.30ms,GD=0.62ms,CPU&GPU=5.91ms,LCnt=1,GPU%=0.54,CPU%=0.32(W0.39),DSF=1.00
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,710/305MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1555MHz,Free=2887MB,PLS=0,Temp=26.7C/0.0C,TW=4.16ms,App=2.37ms,GD=0.34ms,CPU&GPU=6.25ms,LCnt=1,GPU%=0.53,CPU%=0.27(W0.32),DSF=1.00
V/main: In AppPaused() method
V/message: In AppPaused() method
E/main: shutting down playbackStream…
D/AAudio: AAudioStream_requestStop(s#1) called
D/AudioTrack: stop(944): called with 1071364 frames delivered
D/: PlayerBase::stop() from IPlayer
D/AAudio: AAudioStream_close(s#1) called ---------------
V/threaded_app: WindowFocusChanged: 0x70c9b49b80 – 0
D/FA: Event not sent since app measurement is disabled
V/FA: Using local app measurement service
V/FA: Activity paused, time: 281130609
V/FA: Local AppMeasurementService is starting up
V/FA: Bound to IMeasurementService interface
V/FA: Connected to service
V/FA: Processing queued up service tasks: 1
D/AAudio: AAudioStream_close(s#1) returned 0 ---------
E/main: shutting down recordingStream
D/AAudio: AAudioStream_requestStop(s#2) called
D/: PlayerBase::stop() from IPlayer
D/AAudio: AAudioStream_close(s#2) called ---------------
D/: PlayerBase::~PlayerBase()
D/AAudio: AAudioStream_close(s#2) returned 0 ---------
E/main: shutting down receiver
V/CloudXR: Closing the CloudXR log.
Displayed 916 frames over 21.34 seconds (42.9 FPS).
V/CloudXR: Worker thread shutdown.
V/CloudXR: CloudXR destroy receiver
Input stream disconnected.
Audio Send stream disconnected.
V/CloudXR: Eye1 processing thread shutdown.
V/CloudXR: Eye0 processing thread shutdown.
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,1171/525MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=2092MHz,Free=2883MB,PLS=0,Temp=26.7C/0.0C,TW=4.16ms,App=2.37ms,GD=0.34ms,CPU&GPU=6.25ms,LCnt=1,GPU%=0.53,CPU%=0.27(W0.32),DSF=1.00
V/threaded_app: NativeWindowDestroyed: 0x70c9b49b80 – 0x6fe1588010
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,1171/525MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=2092MHz,Free=2882MB,PLS=0,Temp=26.7C/0.0C,TW=4.16ms,App=2.37ms,GD=0.34ms,CPU&GPU=6.25ms,LCnt=1,GPU%=0.53,CPU%=0.27(W0.32),DSF=1.00
V/CloudXR: Streamer shutdown.
V/CloudXR: Mediacodec: Decoder thread done.
D/SurfaceUtils: disconnecting from surface 0x6fe1674010, reason disconnectFromSurface
V/CloudXR: Mediacodec: Decoder thread done.
D/SurfaceUtils: disconnecting from surface 0x6fe16be010, reason disconnectFromSurface
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,1171/525MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1353MHz,Free=2869MB,PLS=0,Temp=26.7C/0.0C,TW=4.16ms,App=2.37ms,GD=0.34ms,CPU&GPU=6.25ms,LCnt=1,GPU%=0.53,CPU%=0.27(W0.32),DSF=1.00
A/libc: Fatal signal 11 (SIGSEGV), code 1 (SEGV_MAPERR), fault addr 0x550779d5476cfa in tid 27243 (main), pid 27156 (utosphere.devel)
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,1171/525MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1804MHz,Free=2858MB,PLS=0,Temp=26.7C/0.0C,TW=4.16ms,App=2.37ms,GD=0.34ms,CPU&GPU=6.25ms,LCnt=1,GPU%=0.53,CPU%=0.27(W0.32),DSF=1.00
I/VrApi: FPS=72/72,Prd=34ms,Tear=0,Early=0,Stale=0,VSnc=1,Lat=0,Fov=0,CPU4/GPU=0/0,1171/525MHz,OC=FF,TA=0/0/0,SP=N/N/N,Mem=1804MHz,Free=2848MB,PLS=0,Temp=26.7C/0.0C,TW=4.16ms,App=2.37ms,GD=0.34ms,CPU&GPU=6.25ms,LCnt=1,GPU%=0.53,CPU%=0.27(W0.32),DSF=1.00
It doesn’t happen every time, so it seems like a race condition in the client shutdown. We are also seeing this with the August hot-fix version. And we’re running v32 of the Quest 2 software.
Not sure if this is the same issue, but the behavior is the same to the user. Is there more information I could provide that would be useful?
/marc