140 likes | 403 Views
Final Year Project Presentation. by Daire O’Neill 4EE. Project Overview. The aim of my project is to design hardware and software for streaming of real-time audio over a LAN
E N D
Final Year Project Presentation by Daire O’Neill 4EE
Project Overview • The aim of my project is to design hardware and software for streaming of real-time audio over a LAN • Multiple channels will be streamed simultaneously at different locations and all channels will be synchronised relative to each other • The purpose of this is to develop a system where musicians located in different parts of the world can record together as if they were in the same room
Diagram Explained • Server provides click track for each musician to play in time with. Assuming that each propagation delay is constant, these delays can be compensated for. • For example: if Delay X is 200ms longer than Delay Y, then Click Track Y will be delayed for a further 200ms before leaving the server. • The object of this is that each musician hears the click track at precisely the same time, regardless of their location.
Which Data Transfer Protocol To Use? • The transfer protocol used should meet the following criteria: • Use available bandwidth efficiently • Provide reliable delivery of data packets • Be able to send data to multiple hosts simultaneously
AFDP • AFDP (Adaptive File Distribution Protocol) meets all these requirements. It provides reliable delivery of data to multiple clients, while automatically calculating the best transmission mode (multicast, broadcast or repeated unicast).
AFDP continued • The AFDP protocol is built on top of UDP, and provides efficient and reliable distribution of large files (e.g. media). • AFDP uses combines the selective repeat mechanism with a rate-based flow control strategy to avoid unnecessary retransmission of lost or corrupted packets.
Linux • The software for this project will be run on the Linux operating system. This is for stability and because the source code for many applications is freely available, and can be modified. • The type of Linux distribution has yet to be finalised, although Red Hat seems to be the most common and is used in many multimedia streaming applications.
Compression • Depending on the level of bandwidth available for the development of this project, compression of the audio signal may be required. • This needs to be a real-time compression system, and also extraction at the receiving PC.
Report on Data Transfer Protocols • A detailed report will also be completed on the different types of data transfer protocols, and their features compared. • The protocols to be researched will include compared TCP/IP, UDP, AFDP and RTP. • The different protocols will be compared with regard to factors such as reliability, efficiency (speed) and flexibility.
Mixing of audio streams • A program will also be researched and developed that can mix or overlay 2 or more independently captured audio streams. This program will be run from a server PC, connected to 2 or more remote clients. • If this is completed, it should also be possible to record the result to memory in the server PC.