From c599784400b1bae5294f42741dea3b002ce5ae5b Mon Sep 17 00:00:00 2001 From: =?utf8?q?Rafa=C3=ABl=20Carr=C3=A9?= Date: Mon, 24 Jun 2013 05:10:48 +0200 Subject: [PATCH] opensles: resample if original sampling rate is not accepted Close: #8638 --- modules/audio_output/opensles_android.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/modules/audio_output/opensles_android.c b/modules/audio_output/opensles_android.c index 0f509e6c08..9c80495dfd 100644 --- a/modules/audio_output/opensles_android.c +++ b/modules/audio_output/opensles_android.c @@ -388,6 +388,14 @@ static int Start(audio_output_t *aout, audio_sample_format_t *restrict fmt) result = CreateAudioPlayer(sys->engineEngine, &sys->playerObject, &audioSrc, &audioSnk, sizeof(ids2) / sizeof(*ids2), ids2, req2); + if (unlikely(result != SL_RESULT_SUCCESS)) { + /* Try again with a more sensible samplerate */ + fmt->i_rate = 44100; + format_pcm.samplesPerSec = ((SLuint32) 44100 * 1000) ; + result = CreateAudioPlayer(sys->engineEngine, &sys->playerObject, &audioSrc, + &audioSnk, sizeof(ids2) / sizeof(*ids2), + ids2, req2); + } CHECK_OPENSL_ERROR("Failed to create audio player"); result = Realize(sys->playerObject, SL_BOOLEAN_FALSE); -- 2.39.2