Presentation is loading. Please wait.

Presentation is loading. Please wait.

Speak A Simple VoIP Application Project 2 Due date: March 3 rd by 11:59pm.

Similar presentations


Presentation on theme: "Speak A Simple VoIP Application Project 2 Due date: March 3 rd by 11:59pm."— Presentation transcript:

1 Speak A Simple VoIP Application Project 2 Due date: March 3 rd by 11:59pm

2 Overview VoIP – Been able to do this (well) for at least 20 years – Web and Internet made Internet telephony possible, cheaper  increasingly popular Basic – Two-person – System parameters to evaluate quality – Speech detection Simpler version than Project 1 – Minimal interface Load time options for connection, parameters …

3 Details Windows or Linux (or Mac) – Two boxes, actually Internet sockets – Specify host (and port) – TCP and UDP Variable chunk sizes (emulate latency) – 20, 40, 60 ms are typical – Also support values up to 1000 ms

4 More Details Basic speech detection – Modified from project 1 – 250 ms search for zero crossing too big! – Detect based on energy level only Sample only “chunk” from audio device Tune thresholds to be effective – Can have on or off Packet “Loss” – Drop before sending, or after receiving (your choice) – Percent, uniform randomly distributed

5 Hints Many different architectural possibilities – Can design how you want Provide some sample code (“tools”) – Refer to other samples, but write your own code (and reference any others) Consider remote development (not at console) – “Pre-Record” some conversation – Read from file or device – Write to file or device – Allow development of system code – Also good for one person testing

6 Sample Code Linux/Cygwin Basic TCP sockets: talk-tcp.c and listen-tcp.ctalk-tcp.clisten-tcp.c Basic UDP sockets: talk- udp.c and listen-udp.ctalk- udp.clisten-udp.c Setting a timer: setitimer.csetitimer.c POSIX threads: add2.cadd2.c Multiple interrupts: select.cselect.c Parsing command line parameters: get-opt.cget-opt.c Windows A simple header file to generate error messages for Winsock errors: sockerr.hsockerr.h Basic TCP sockets: tcp- talk.cpp, tcp-listen.cpptcp- talk.cpptcp-listen.cpp Basic UDP sockets: udp- talk.cpp, udp-listen.cppudp- talk.cppudp-listen.cpp Get the IP address of a host: getIPaddress.cppgetIPaddress.cpp

7 Hand-In Email a tar/zip file – Use your name as the directory Include – All source code and Makefile – README file with instructions on running Due end of day when due

8 Grading 60% Basic 2-way VoIP Application (TCP or UDP), with parameters. 15% Uses both UDP and TCP. 5% Supports Speech Detection. 5% Works under all “Loss” parameters. 5% Works under all “Delay” parameters. 10% Clear, well-written code, including comments. Should be easy to "read" and understand. Grading rubric available online


Download ppt "Speak A Simple VoIP Application Project 2 Due date: March 3 rd by 11:59pm."

Similar presentations


Ads by Google