libaudiohal@aidl: Fix 'pause' handling
In case of transient states like DRAINING, the HAL may change its StreamDescriptor::State on its own and may not be in synchronization with client. Thus, client can send the unexpected command and HAL returns failure. such failure is natural. The client handles it gracefully. Example where HAL change its state, 1) DRAINING -> IDLE (on empty buffer) 2) DRAINING -> IDLE (on IStreamCallback::onDrainReady) Also, refactor the resume implementation. BUG: 363958142 Test: play compress offload playback Change-Id: I1cd7ec96cfa7e20c69c03ec8aae088d1954adda2
Loading
Please register or sign in to comment