The epiano application is a practical implementation of an 49 palatte electronic piano have real piano notes so pratical and real sounds could beplayed at ease.
-
Attractive User Interface: The ePiano has a visually appealing interface with a clean layout of piano keys. The design includes clear markings and a background theme to make the interface engaging and user-friendly.
-
Robust Event Handling: Efficient management of user inputs, including keyboard, mouse, and touchpad interactions, ensuring a seamless playing experience without lag.
-
Multiple Input Methods: Play the ePiano using computer keyboard, mouse clicks, or touchpad, providing flexibility for users.
-
Realistic Piano Sounds: High-quality, realistic piano sounds sourced from piano notes and processed for fidelity.
-
Portability and Practicality: Use on multiple platforms (Windows, Linux, MacOS) for learning and playing anywhere with a compatible device.
-
Sound Configuration and Customization: Sound samples configured to 44,100 Hz and 16-bit PCM for high-quality audio playback, compatible with SFML.
- C++ compiler (e.g., Visual Studio).
- SFML library installed (Graphics and Audio modules).
-
Download SFML: Obtain the SFML library from SFML Official Website.
-
Configure Visual Studio Code: Integrate SFML into Visual Studio Code by adjusting compiler and linker settings for proper recognition and utilization.
-
Utilize Documentation and Tutorials: Refer to SFML documentation and YouTube tutorials for setup guidance, suitable for beginners.
-
Run: You can run the program by opening the epiano-030-027.sln file and build the solution.
The epiano can be played by all 3 input methods (eg touch , mouse click , keyboard button).
-
Mouse click: Simply click on the repective key to play the respective piano note.
-
Keyboard click: The piano keys on the piano can be played by pressing F1->F10 & 1->9 keys in sequence. The white keys can be played by pressing Q->M and , and . in a sequence.
-
Touch: Simply touch on the key to play the respective key note.
- Contributing Guidelines: Contributions are welcome! Please fork this repository and submit a pull request for any enhancements or bug fixes to enhance the ePiano application.
- Acknowledgements: i would like to give credit to my groupmate Haider Hassan Awan who designed the layout of the piano.