Увеличение скорости воспроизведения мультимедиа в Android[Пул звуков не работает]
Я создаю приложение Media Player. Все работает нормально, но я хочу дать возможность увеличить скорость воспроизведения, например. 1.5x
,2x
и т.д. Я видел несколько вопросов о переполнении стека, и все они предложили использовать Sound Pool для этого, так как Media Player не поддерживает это. Но по следующей ссылке
Управление скоростью в медиаплеере и изменение скорости воспроизведения трека
Предполагается, что Sound Pool подходит только для небольших файлов размером до 1 МБ, а также ограничивается увеличением скорости только в 2 раза, и всем этим ответам около 6 лет. Так есть ли другие альтернативы, доступные сейчас?
РЕДАКТИРОВАТЬ: Как Ян Лейк предложил использовать getPlayBackParams()
это вариант, но доступен только из API 23, но мое приложение должно поддерживать как минимум API уровня 14.
1 ответ
На самом деле, MediaPlayer
поддерживает изменения скорости воспроизведения с помощью setPlaybackParams() и PlaybackParams#setSpeed (). Тем не менее, эти API были добавлены только в Marshmallow, API 23. Это был давнишний функциональный запрос для ExoPlayer, который был недавно реализован и доступен обратно для API 16.