API changes
- Added new AAudio API to query MMAP policy (#2167)
- Added PCM offload support. This saves battery by ~30% when used (#2165)
- Added compressed format support like MP3 and AAC_LC (#2188)
- Added support for AAudioStream_getDeviceIds. Now you query if multiple output devices are connected (#2184)
- Added support for notifyWorkloadIncrease/Spike/Reset. These will help when you have workload increases (#2214)
- Added flushFromFrame API. This helps with flushing extra data with PCM offload (#2271)
- Added support for playback parameters for offload streams. This will allow apps to do speed/pitch shifts (#2279)
- Added a compile flag for not including flowgraph. This reduces the Oboe binary size by ~50% when used (#2302)
- Added support for partial data callback. This is useful as offload streams can have extremely large buffers (#2304)
OboeTester
- Made several improvements in the CPU Load Test (#2140, #2156, #2250)
- Added mixer attributes to device report (#2169)
- Added CPU info to device report (#2212)
- Fixed Auto Glitch test for non-MMAP devices (#2155)
- Fixed issue where large channel counts would result in overflows when downmixing (#2172)
- Added Spatialization behavior APIs (#2173)
- Added support for MP3 playback (#2189)
- Save all WAV files in Data Paths test to help with debugging (#2207)
- Added 2 new tests for testing audio workloads (#2199)
- Added package name and attribution tag (#2206)
- Fixed issue where output effects didn't work as expected (#2233)
- Added noise pulse for Tap to Tone (#2249)
- Test for both MMAP and MMAP shared in automated tests (#2253)
- Updated to Android 36 (#2257)
- Enabled background operation and foreground service by default (#2264)
- Added a way to simulate volume key presses (#2270)
- Added a test for reverse JNI (#2266)
- Fixed timeouts by using AlarmManager (#2290)
- Fixed UI issue where spinners show up even when it leaves the view (#2308)