<< Chapter < Page
  Accessible objected-oriented     Page 1 / 17
Chapter >> Page >
This module explains how to write a program that simulates a player piano in a format that is accessible to blind students.

Table of contents


This module is part of a collection titled Accessible Objected-Oriented Programming Concepts for Blind Students using Java . It explains how to write a program that simulates a player piano in a formatthat is accessible to blind students.

Here are some sample melodies produced by the program. (You should be able to play these audio files with any standard media player that can handle the AU file type. In case you are onthe OpenStax site and you are unable to download the audio files, click the Legacy Site link at the top of this page to switch over to the same module on the Legacy site. You should be able todownload the audio files from there .)

Click here to download a zip file containing the text files and the Windows batch files needed to playthese melodies. The zip file also contains the audio files of type AU listed above.

Viewing tip

I recommend that you open another copy of this module in a separate browser window and use the following links to easily find the listings while you are reading about them.


  • Listing 1 . Beginning of the class named MusicComposer09.
  • Listing 2 . The main method.
  • Listing 3 . Beginning of the constructor for the MusicComposer09 class.
  • Listing 4 . Get a melody array.
  • Listing 5 . Beginning of the PlayerPiano01 class.
  • Listing 6 . The constructor for the PlayerPiano01 class.
  • Listing 7 . Beginning of the getMelody method.
  • Listing 8 . Get and save treble clef note data.
  • Listing 9 . Get and save bass clef note data.
  • Listing 10 . Compute the length of each clef in beats.
  • Listing 11 . Check for treble and bass clefs of different lengths.
  • Listing 12 . Convert treble notes to amplitude values.
  • Listing 13 . Convert bass notes to amplitude values.
  • Listing 14 . Populate and return the melody array with stereo data.
  • Listing 15 . Populate and return the melody array with monaural data.
  • Listing 16 . Beginning of the getPiano method.
  • Listing 17 . Store the current note and compute the frequency of the next note.
  • Listing 18 . Construct the name of the next note.
  • Listing 19 . Beginning of the method named makeMusic.
  • Listing 20 . Process each array containing duration and note names in the ArrayList object.
  • Listing 21 . Process each sample.
  • Listing 22 . Process each piano key that is pressed.
  • Listing 23 . Use a scale factor to shape the note.
  • Listing 24 . The class named AudioFormatParameters01.
  • Listing 25 . The class named AudioPlayOrFile01.
  • Listing 26 . The class named AudioSignalGenerator02.
  • Listing 27 . The class named MusicComposer09.
  • Listing 28 . The class named PlayerPiano01.
  • Listing 29 . The file named GreensleevesTreble.txt
  • Listing 30 . The file named GreensleevesBass.txt
  • Listing 31 . The file named Greensleeves.bat.

Questions & Answers

How we are making nano material?
what is a peer
What is meant by 'nano scale'?
What is STMs full form?
scanning tunneling microscope
what is Nano technology ?
Bob Reply
write examples of Nano molecule?
The nanotechnology is as new science, to scale nanometric
nanotechnology is the study, desing, synthesis, manipulation and application of materials and functional systems through control of matter at nanoscale
Is there any normative that regulates the use of silver nanoparticles?
Damian Reply
what king of growth are you checking .?
What fields keep nano created devices from performing or assimulating ? Magnetic fields ? Are do they assimilate ?
Stoney Reply
why we need to study biomolecules, molecular biology in nanotechnology?
Adin Reply
yes I'm doing my masters in nanotechnology, we are being studying all these domains as well..
what school?
biomolecules are e building blocks of every organics and inorganic materials.
anyone know any internet site where one can find nanotechnology papers?
Damian Reply
sciencedirect big data base
Introduction about quantum dots in nanotechnology
Praveena Reply
what does nano mean?
Anassong Reply
nano basically means 10^(-9). nanometer is a unit to measure length.
do you think it's worthwhile in the long term to study the effects and possibilities of nanotechnology on viral treatment?
Damian Reply
absolutely yes
how to know photocatalytic properties of tio2 nanoparticles...what to do now
Akash Reply
it is a goid question and i want to know the answer as well
characteristics of micro business
for teaching engĺish at school how nano technology help us
How can I make nanorobot?
Do somebody tell me a best nano engineering book for beginners?
s. Reply
there is no specific books for beginners but there is book called principle of nanotechnology
how can I make nanorobot?
what is fullerene does it is used to make bukky balls
Devang Reply
are you nano engineer ?
fullerene is a bucky ball aka Carbon 60 molecule. It was name by the architect Fuller. He design the geodesic dome. it resembles a soccer ball.
what is the actual application of fullerenes nowadays?
That is a great question Damian. best way to answer that question is to Google it. there are hundreds of applications for buck minister fullerenes, from medical to aerospace. you can also find plenty of research papers that will give you great detail on the potential applications of fullerenes.
what is the Synthesis, properties,and applications of carbon nano chemistry
Abhijith Reply
Mostly, they use nano carbon for electronics and for materials to be strengthened.
is Bucky paper clear?
carbon nanotubes has various application in fuel cells membrane, current research on cancer drug,and in electronics MEMS and NEMS etc
Got questions? Join the online conversation and get instant answers!
Jobilize.com Reply

Get the best Algebra and trigonometry course in your pocket!

Source:  OpenStax, Accessible objected-oriented programming concepts for blind students using java. OpenStax CNX. Sep 01, 2014 Download for free at https://legacy.cnx.org/content/col11349/1.17
Google Play and the Google Play logo are trademarks of Google Inc.

Notification Switch

Would you like to follow the 'Accessible objected-oriented programming concepts for blind students using java' conversation and receive update notifications?