Programs for implement tools for digital sound, Computer Networking

Assignment Help:

You must write the 6 programs described below. All of these are command-line tools that follow the Unix style of passing switches and arguments on the command line. As such, your programs should never prompt the user for anything. You may assume that all switches appear before the first argument. The requirements below are minimal requirements; you may provide extra functionality or handle extra cases as you choose. For example, you might include a --debug switch that causes extra debugging information to be written to standard error. As a general rule, your programs should be user friendly". That means they should print useful error messages whenever possible. Additionally, your programs should print any messages or diagnostic information to standard error, with standard output reserved for sound output. I do not require that your programs be absolutely \quiet", but take care that the default behaviour prints at most a few messages.

All programs should handle the following 2 formats for sound files: .cs229 format, and .wav format, described in Appendix B. Similarly, all programs should accept the -h switch, which causes the program to display a "help" screen and then terminate. The help screen should describe the program, its usage, and all legal switches (including any extra ones you implemented).

1.0 sndinfo

This program reads all sound files passed as arguments, and for each one, displays the following.

 The file name

 The file type (.cs229 or .wav)

 The sample rate

 The bit depth

 The number of channels

 The number of samples

 The length of the sound (in seconds)

If no files are passed as arguments, then the program should read from standard input. The only required switch for this program is -h.

1.1 sndcat

This program reads all sound files passed as arguments, and writes a single sound file that is the concatenation of the inputs. If no files are passed as arguments, then the program should read from standard input. You must support the following switches.

-h: show the help screen.

-o file: specify the output file name; if omitted, write to standard output.

-w: output in .wav format instead of .cs229 format

1.2 sndchan

This program reads all sound les passed as arguments, and produces a single sound le where each channel corresponds to one of the input le channels (channel order should be preserved). For instance, if the first sound le has 2 channels and the second sound le has 3 channels, then this produces a sound le with 5 channels. If no les are passed as arguments, then the program should read from standard input. You must support the following switches.

-c n : output channel n only; otherwise all channels

-h : show the help screen.

-o file : specify the output le name; if omitted, write to standard output.

-w : output in .wav format instead of .cs229 format.

1.3 sndmix

This program reads all sound les passed as arguments, and "mixes" them into a single sound le. The program is invoked as

sndmix [switches] mult1 file1 ...multn filen

where the sample data of filei is multiplied by multi (a real value between -10 and 10); the scaled data is summed to produce the output le. You must support the following switches.

-h : show the help screen.

 -o file : specify the output le name; if omitted, write to standard output.

-w : output in .wav format instead of .cs229 format.

1.4 sndgen

This program is a mess of switches. It produces a sound of a specified frequency and waveform, using a simple ADSR envelope (see Appendix D). You must support the following switches.

-h : show the help screen.

-o file: specify the output le name; if omitted, write to standard output.

-w: output in .wav format instead of .cs229 format

--bits n : use a bit depth of n

--sr n : use a sample rate of n

-f r : use a frequency of r Hz

-t r : total duration of r seconds

-v p : Peak volume. 0  p  1

-a r : attack time of r seconds

-d r : decay time of r seconds

-s p : sustain volume. 0  p  1

-r r : release time of r seconds

--sine : generate a sine wave

--triangle : generate a triangle wave

--sawtooth : generate a sawtooth wave

--pulse : generate a pulse wave

--pf p : Fraction of the time the pulse wave is "up"

Note that the volume parameters are given as the percentage of the maximum volume.

1.5 sndplay

This program reads a music file in .abc229 format and produces a sound file of that music.

You must support the following switches.

-h : show the help screen.

-o file : specify the output file name; if omitted, write to standard output.

-w: output in .wav format instead of .cs229 format

--bits n: use a bit depth of n

--sr n : use a sample rate of n

--mute n : do not play instrument n


Related Discussions:- Programs for implement tools for digital sound

How many types of twisted pair cable are there, How many types of twisted p...

How many types of twisted pair cable are there We can find two types of twisted pair cables, namely: Unshielded Twisted Pair Cable (UTP) and Shielded Twisted Pair Cable (STP).

What is session layer in osi model, Q. What is Session Layer in osi model? ...

Q. What is Session Layer in osi model? Session Layer : Allows two applications to establish, utilize and disconnect a connection  between them known as a session. Gives for na

Difference between windows 2000 and windows 2003, What is the difference am...

What is the difference among Windows 2000 and Windows 2003?

Explain about the browser, Explain about the Browser A program that ...

Explain about the Browser A program that allows the user to access and read information on the World Wide Web. Netscape® Navigator and Microsoft Explorer® are the best known

Define the types of computer network, Define the Types of Computer Network ...

Define the Types of Computer Network Computer networks fall into three classes regarding the size, distance and the structure namely: LAN (Local Area Network), MAN (Metropolita

Define unicast - multicast and reserved addresses, Q. Define Unicast - Mult...

Q. Define Unicast - Multicast and Reserved Addresses? Unicast, Multicast, and Reserved Addresses Unicast address - identifies a specific device Multicast address

What are the important topologies for networks, What are the important topo...

What are the important topologies for networks? BUS topology: In this every computer is directly linked to primary network cable in a single line. Advantages: Inexpensive,

Describe the method of one way redistribution and mutual, Define  the conce...

Define  the concept of one way redistribution and mutual

What is beaconing, What is Beaconing? The process that permits a networ...

What is Beaconing? The process that permits a network to self-repair networks problems. The stations on the network notify the other stations on the ring when they are not rece

Explain control frame of claim token, Control Frame: claim_token Co...

Control Frame: claim_token Consider first station turned on Station notices no tokens Sends claim_token No competitors, so makes a ring of just itself P

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd