See System Requirements. Available on PC. Description Virtual Piano is a key via octave shifting multi-touch virtual piano with a build-in metronome. Show More. People also like. Drum Time Free. Majestic Drums Free. Bass Free. Electric Guitar Lite Free. Rock Organ Free. Rock Drums Lite Free. Rock Guitar! Piano Tunes Universal Free. Piano Fun! What's new in this version Release 4. Adele convinces Spotify to remove shuffle from all albums.
PS5 restock updates. Black Friday deals. Windows Windows. Most Popular. New Releases. Desktop Enhancements. Networking Software. Trending from CNET. For all of you who have Chopin lying within, here is a new musical keyboard app: Virtual Piano simulator.
Play the piano, try out 3 different instrument sounds and have fun! Virtual musical instruments have been popular from the moment touchscreen phones were invented. Piano musical keyboard is without doubt the most popular one.
What this virtual piano app has to offer is a musical keyboard with simple design and easy to use interface. Just open the app and there you have it - a piano simulator which will make the time fly by so fast you won't even notice it.
Download Virtual Piano keyboard app and enjoy your new hobby. Full Specifications. What's new in version 1. Release February 9, Date Added February 9, The User Interface of our Virtual Piano will take the whole part of the screen, so we need to define a NoActionBar theme for our application in the styles. First, we are going to create the user interface for our Piano Application.
So, we need to create a dedicated PianoView. A Piano has some keys. A key will have an associated sound to play and a RectF object associated to represent it on the screen. Besides, a down boolean property will be used to determine if the user is tapping on the key or no.
It gives us the following code for the Key object :. Now, we can create our dedicated PianoView. We will render 14 white keys and 10 black keys for our Piano. We will use two lists to store the white and black keys of the Piano. Finally, we define a property for the AudioSoundPlayer object we will use to play the sounds associated to each key. It will give us the following declaration for the class :. In the constructor, we initalize the painters for the keys with a yellow painter which will be used when akey is touched by the user.
Besides, we instantiate the AudioSoundPlayer object :. For each key, we associate a RectF instance which will be used to represent them on the screen :. For a white key, we use the white painter if the key is not down and the yellow painter otherwise.
For a black key, we use the black painter if the key is not down and the yellow painter otherwise. To react to the user events, we override the onTouchEvent method of the View class. First, we get the action associated to the MotionEvent passed in parameter. Like our Piano will support multitouches, we need to iterate on the point touched by the user.
To know the number of points touched, we call the getPointerCount method of the current event. Then, we get the coordinates of each point and we try to get the key associated by calling the keyForCoords method we will define later.
If a key is well associated to the touched point, we set its down property to true. After that, we iterate on all the keys of our Piano. If a key is down and its sound associated is not playing, we play the sound by calling the playNote method of the AudioSoundPlayer instance. Then, we redraw the PianoView by calling its invalidate method. Otherwise we release the current key by calling the releaseKey method.
0コメント