Simple and straightforward Android music player, with equalizer and bass boost
Switch branches/tags
Nothing to show
Clone or download
Permalink
Failed to load latest commit information.
.miscellaneous Still creating the http transmitter plugin Feb 13, 2018
assets Still creating the http transmitter plugin Feb 13, 2018
fplay.plugin.httptransmitter Starting to create/add a new visualizer and upgrading to Android Stud… Oct 2, 2018
fplay.plugin.wirelessvisualizer Starting to create/add a new visualizer and upgrading to Android Stud… Oct 2, 2018
fplay.plugin Improving the shared playlist feature Jun 27, 2018
gradle/wrapper Starting to create/add a new visualizer and upgrading to Android Stud… Oct 2, 2018
jni Adding a new visualizer speed to help debugging Oct 10, 2018
libs-x Trying to reduce CPU consumption Jul 6, 2017
libs Adding a new visualizer speed to help debugging Oct 10, 2018
res-traditional Adding the new adaptive icon and fixing radio favorites Oct 14, 2018
res-x Adding the new adaptive icon and fixing radio favorites Oct 14, 2018
res Adding the new adaptive icon and fixing radio favorites Oct 14, 2018
src-traditional/br/com/carlosrafaelgn/fplay/playback/context Improving http reception Feb 18, 2018
src-x/br/com/carlosrafaelgn/fplay/playback/context Improving overall metadata extraction (both local and remote) and imp… Feb 19, 2018
src Adding the new adaptive icon and fixing radio favorites Oct 14, 2018
.classpath Ported to API 20 and implemented several layout improvements Jul 17, 2014
.gitignore Starting to create/add a new visualizer and upgrading to Android Stud… Oct 2, 2018
.project First commit Oct 11, 2013
AndroidManifest.xml Bugs fixes and preparing for production release Jul 4, 2018
AndroidManifestTraditional.xml Removed the microphone permission from FPlayX Jun 13, 2016
LICENSE.txt Update LICENSE.txt Jul 23, 2017
README.md Adding a new build flavor: FPlay X, but removed OpenSLPlayer (doing t… Apr 27, 2016
build.gradle Adding the new adaptive icon and fixing radio favorites Oct 14, 2018
gradlew Added support for Android Studio, and tested ways to improve OpenGL v… Sep 16, 2014
gradlew.bat Added support for Android Studio, and tested ways to improve OpenGL v… Sep 16, 2014
proguard-project.txt Adjusting proguard's output path Oct 10, 2018
project.properties Added a few optimizations to the ProGuard configuration Jan 16, 2015
settings.gradle Starting to create a new plugin: Http Transmitter Feb 11, 2018

README.md

FPlayAndroid

FPlay for Android is a simple and lightweight music player, with clean interface, equalizer, bass boost and customizable colors.

The main goal of this project is to provide the users with a fully functional music player based on lists and folders. The player itself does not consume too much memory, and respects WCAG 2.0 accessibility guidelines for colors and contrast, being friendly for color blind people as well as for people with mild visual impairments.

Moreover, this source code can be used as an example on how to do a few tasks in Android:

  • Browse through Icecast Directory
  • Extract ID3v1 and ID3v2 information from MP3 and AAC files without android.media.MediaMetadataRetriever
  • Reduce the latency between consecutive tracks using setNextMediaPlayer()
  • Apply audio effects to music (equalizer and bass boost)
  • Use android.media.audiofx.Visualizer and getFft()
  • Call native code from within Java
  • Acess the surface's bytes directly using the Native Window API
  • Use NEON intrinsics to optimize native ARM code written in C++ (no need for Assembly)
  • Use keyboard for navigation and control
  • Handle different screen sizes and densities
  • Handle physical media buttons as well as Bluetooth commands
  • Send track information via A2DP Bluetooth (using com.android.music.playbackcomplete, com.android.music.playstatechanged and com.android.music.metachanged intents)
  • Use custom fonts as vector icons instead of bitmap files
  • Detect different display sizes (such as tablets and handhelds)
  • Create custom menus
  • Create custom views
  • Create custom ListView with support for multiple selection and item reordering
  • Create resizable widgets
  • Control and monitor device's volume changes

The player is still in a "beta stage", so there may be unknown bugs yet ;)

You can find FPlay on Google Play at https://play.google.com/store/apps/details?id=br.com.carlosrafaelgn.fplay


FPlay X

FPlay X is a new flavor for FPlay, aiming at better audio quality and more precise visualizations!


FPlayArduino

FPlay can be integrated to Arduino, or other electronic board, via Bluetooth SPP - Serial Port Profile :D

The Arduino library is available on GitHub: https://github.com/carlosrafaelgn/FPlayArduino


Very special thanks to the people who helped translating FPlay:

Thanks a lot!! :D

The typeface used as the dyslexia-friendly typeface is OpenDyslexic Regular, by Abelardo Gonzalez, available at http://dyslexicfonts.com and licensed under a Creative Commons Attribution 3.0 Unported License.

The font used to draw the scalable icons, icons.ttf, was created using IcoMoon App, by Keyamoon, available at: http://icomoon.io/app

Some of the scalable icons were created by me and some came from the IcoMoon Free icon set, by Keyamoon, licensed under the Creative Commons License 3.0.


This project is licensed under the terms of the FreeBSD License. See LICENSE.txt for more details.