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

Advantages of configuring virtual local area network, Many benefits of conf...

Many benefits of configuring VLAN as listed below: • Performance Enhancements: It reduces heavy load on the network by permitting operations at lower latencies by using VLAN t

What do you mean by modems, Q. What do you mean by Modems? Telephone M...

Q. What do you mean by Modems? Telephone Modems - A telephone line has a bandwidth of approximately 2400 Hz for data transmission

traffic flow mapping , Develop traffic flow mapping and performance requir...

Develop traffic flow mapping and performance requirements for flows. A) Traffic Flow Mapping B) Performance Requirements

Bridges, BRIDGES:  A bridge is a hardware device also needed to connec...

BRIDGES:  A bridge is a hardware device also needed to connect two LAN code segments to extend a LAN. A bridge uses two NICs to connect two code segments. It listens to all tr

What is the protocol number for tcp, Transmission Control Protocol - TCP i...

Transmission Control Protocol - TCP is a connection oriented transport layer protocol with built unreliability. It considers a large block of data and breaks it down into segments

Prototype Web Site for the Computer Superstores, Overview Create a proto...

Overview Create a prototype web site for the "Computer Superstores" company. Your site should use effective navigation features and demonstrate good structure for  accessibility

Program for two library methods with thread , #include void subdomain(...

#include void subdomain(float x[ ], int istart, int ipoints) { int i; for (i = 0; i x[istart+i] = 123.456; } void sub(float x[ 10000], int npoints) {

Give the description of security tools, Give the Description of security to...

Give the Description of security tools Software are coming up in which the user can select the kind of security measure required to be taken for encryption. One such example is

Encrypted with a symmetric key, Alice sends a message to Bob, encrypted wit...

Alice sends a message to Bob, encrypted with a symmetric key. Bob decrypts the message and finds it is a purchase order for an expensive workstation. When the time comes to deliver

What is topology, Q. What is Topology? - Physical/logical arrangement ...

Q. What is Topology? - Physical/logical arrangement - Topology of a network is the geometric depiction of the relationship of all the links and linking devices to one anothe

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