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

Define character stuffing, Define Character Stuffing? In byte stuffing ...

Define Character Stuffing? In byte stuffing (or character stuffing), a particular byte is added to the data section of the frame when there is a character with the same pattern

What is retransmission timer, Q. What is Retransmission timer? Retrans...

Q. What is Retransmission timer? Retransmission timer if an ACK is received previous to the timer goes off - destroy the timer if the timer goes off before ACK a

State about the future of the intranet, Future of the intranet At ...

Future of the intranet At present, the world of information technology is guided bythe C 3 paradigm that stands for Command, Control and Communication, which is normally

What is uniform delivery time, What is uniform delivery time A uniform ...

What is uniform delivery time A uniform delivery time is required for voice, so amount of jitter in net- work is significant. This could be expressed as standard deviation of d

Differentiate between multicast and broadcast, Multicast and Broadcast ...

Multicast and Broadcast In broadcast interconnection network at an individual time one node sends the data and all other nodes obtain that data.   Broadcast can be termed as on

Permutation representation through matrix, Q. Permutation representation th...

Q. Permutation representation through Matrix? Figure: Clos Network The functioning of this above permutation is displayed in Figure. This permutation is able to

Ieee specification for spanning tree protocol, What is the IEEE specificati...

What is the IEEE specification for Spanning Tree Protocol Ans) IEEE 8021.d Spanning Tree Protocol (STP) was developed to stop routing loops in a network. If a router, switch, or

Difference between baseband and broadband transmission , What is difference...

What is difference between Baseband and Broadband Transmission in ccna? Ans) In a baseband transmission, the entire bandwidth of the cable is consumed by a one signal. In bro

What is an ethernet, What is an Ethernet? The Ethernet topology was dev...

What is an Ethernet? The Ethernet topology was developed at the University of Hawaii to connect computers on the many Islands. It was radio based design. Later, Robert Metacalf

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