OpenSLMediaPlayer (C++ API)

1ย เชนเชœเชพเชฐ+
เชกเชพเช‰เชจเชฒเซ‹เชก
เช•เชจเซเชŸเซ‡เชจเซเชŸเชจเซเช‚ เชฐเซ‡เชŸเชฟเช‚เช—
เชชเซเชฐเชคเซเชฏเซ‡เช•
เชธเซเช•เซเชฐเซ€เชจเชถเซ‰เชŸ เช›เชฌเซ€
เชธเซเช•เซเชฐเซ€เชจเชถเซ‰เชŸ เช›เชฌเซ€

เช† เชเชชเชจเซเช‚ เชตเชฐเซเชฃเชจ

This app is an example program of OpenSLMediaPlayer library (C++ Native API version).

The OpenSLMediaPlayer library offers a compatible class of Android's MediaPlayer class.
Not just a re-implementation, also provides some enhanced features;

- Released under the "Apache License, Version 2.0"
- Compatible with Android's MediaPlayer and audio effects classes
- Provides both Java and C++ Native API sets
- Also includes standard MediaPlayer based classes which fixes a lot of bugs
- Smooth fade-in, fade-out
- High quality resampler
- 10 bands graphic equalizer with preamplifier
- High quality Visualizer class to capture audio for visualization purpose


The source code of this app also can be downloaded from GitHub.
Please refer to the following site about more details of the app/library.

http://android-openslmediaplayer.h6ah4i.com/
เช† เชฐเซ‹เชœ เช…เชชเชกเซ‡เชŸ เช•เชฐเซเชฏเซเช‚
22 เช‘เช—เชธเซเชŸ, 2023

เชกเซ‡เชŸเชพ เชธเชฒเชพเชฎเชคเซ€

เชกเซ‡เชตเชฒเชชเชฐ เชคเชฎเชพเชฐเซ‹ เชกเซ‡เชŸเชพ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เชเช•เชคเซเชฐเชฟเชค เช…เชจเซ‡ เชถเซ‡เชฐ เช•เชฐเซ‡ เช›เซ‡, เชคเซ‡ เชธเชฎเชœเชตเชพเชฅเซ€ เชธเซเชฐเช•เซเชทเชพเชจเซ€ เชถเชฐเซ‚เช†เชค เชฅเชพเชฏ เช›เซ‡. เชคเชฎเชพเชฐเชพ เชฆเซเชตเชพเชฐเชพ เชเชชเชจเซ‹ เช‰เชชเชฏเซ‹เช—, เช‰เชชเชฏเซ‹เช— เชฅเชพเชฏ เชคเซ‡ เชชเซเชฐเชฆเซ‡เชถ เช…เชจเซ‡ เชคเชฎเชพเชฐเซ€ เช‰เช‚เชฎเชฐเชจเชพ เช†เชงเชพเชฐเซ‡ เชกเซ‡เชŸเชพเชจเซ€ เชชเซเชฐเชพเช‡เชตเชธเซ€ เช…เชจเซ‡ เชธเซเชฐเช•เซเชทเชพ เชชเชฆเซเชงเชคเชฟเช“ เช…เชฒเช—-เช…เชฒเช— เชนเซ‹เชˆ เชถเช•เซ‡ เช›เซ‡. เชกเซ‡เชตเชฒเชชเชฐ เชฆเซเชตเชพเชฐเชพ เช† เชฎเชพเชนเชฟเชคเซ€ เชชเซเชฐเชฆเชพเชจ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเซ€ เช›เซ‡ เช…เชจเซ‡ เชคเซ‡เช“ เชธเชฎเชฏเชพเช‚เชคเชฐเซ‡ เชคเซ‡เชจเซ‡ เช…เชชเชกเซ‡เชŸ เช•เชฐเซ€ เชถเช•เซ‡ เช›เซ‡.
เชคเซเชฐเซ€เชœเชพ เชชเช•เซเชทเซ‹ เชธเชพเชฅเซ‡ เช•เซ‹เชˆ เชกเซ‡เชŸเชพ เชถเซ‡เชฐ เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชคเซ‹ เชจเชฅเซ€
เชกเซ‡เชตเชฒเชชเชฐ เชกเซ‡เชŸเชพ เชถเซ‡เชฐ เช•เชฐเชตเชพเชจเซ€ เช˜เซ‹เชทเชฃเชพ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเซ‡ เช›เซ‡, เชคเซ‡ เชตเชฟเชถเซ‡ เชตเชงเซ เชœเชพเชฃเซ‹
เช•เซ‹เชˆ เชกเซ‡เชŸเชพ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเชตเชพเชฎเชพเช‚ เช†เชตเชคเซ‹ เชจเชฅเซ€
เชกเซ‡เชตเชฒเชชเชฐ เชกเซ‡เชŸเชพ เชเช•เชคเซเชฐเชฟเชค เช•เชฐเชตเชพเชจเซ€ เช˜เซ‹เชทเชฃเชพ เช•เซ‡เชตเซ€ เชฐเซ€เชคเซ‡ เช•เชฐเซ‡ เช›เซ‡, เชคเซ‡ เชตเชฟเชถเซ‡ เชตเชงเซ เชœเชพเชฃเซ‹

เชจเชตเซเช‚ เชถเซเช‚ เช›เซ‡

* Update target API level to 33