Commit Graph

12 Commits

Author SHA1 Message Date
Mis012
b19f2c35d2 api-impl-jni: SoundPool: fix formatting 2025-03-26 19:44:06 +01:00
Julian Winkler
e6a22df315 AudioTrack: recover underruns properly 2025-01-11 23:23:53 +01:00
Julian Winkler
09a38f9a28 AudioTrack: set buffer size and period size correctly
Android buffer size is in bytes, but ALSA buffer size is in frames. Also
the period size was not set previously.

This fixes several audio issues on postmarketOS and probably other
distributions that still use PulseAudio instead of PipeWire.
2024-12-30 09:47:14 +01:00
Julian Winkler
47e070bec6 AudioTrack: add missing null pointer check 2024-06-13 20:04:37 +02:00
Mis012
a99dfd80cc AudioTrack: fix getPlaybackHeadPosition and write
this fixes audio sync in exoplayer
2024-04-28 23:39:07 +02:00
Julian Winkler
b7f06e41c1 implement release() methods in MediaCodec and related classes 2024-02-18 10:08:43 +01:00
Julian Winkler
987058f55d implement AudioTrack.pause() 2023-11-12 12:16:23 +01:00
Mis012
9a78412155 api-impl-jni/audio/android_media_AudioTrack.c: 'default' as a PCM device seems to work nicely
also get rid of broken case for !PCM_DEVICE
2023-10-15 20:21:08 +02:00
Julian Winkler
f4251af2a2 Add more AudioTrack APIs needed for exoplayer.
Also fix compiler warnings
2023-10-14 18:29:33 +02:00
Mis012
a61e44aad8 api-impl-jni/audio/android_media_AudioTrack.c: make this stuff noop by default
this particular implementation never worked particularly great, and thanks
to hardcoding could cause more harm then good.

export `HAX_AUDIOTRACK_PCM_DEVICE=sysdefault:CARD=Generic_1` to restore
previous behavior

TODO: use libOpenSLES to implement this maybe? we have to have it anyway...
2023-06-23 17:27:48 +02:00
Julian Winkler
9e706927de implement android.media.SoundPool using GtkMediaStream 2023-06-18 11:31:01 +02:00
Mis012
449090143e refactor source tree organization, switch to meson 2022-10-09 22:59:16 +02:00