Live video streaming for handheld devices over an ad hoc network - Mandowara, Piyush (Kansas State University, 2008)
A streaming video application allows a sequence of "moving images" to be sent over the Internet and displayed by a viewer as they arrive. This application is meant for viewing live videos on handheld devices such as PDAs and iPAQs. It captures video data from a webcam installed on a tablet pc, which is then sent over a UDP socket to an iPAQ via an ad hoc network where live video can be viewed in real time. This is achieved by sending video data, frame by frame, and displaying on iPAQ as it arrives. This application also allows taking a snapshot of the video which can be saved for later viewing and also allows the user to dynamically change the resolution of the video as being viewed. Two versions of this application have been developed, one using a TCP connection for video transfer between a tablet pc (server) and an iPAQ (client) and the other using a UDP connection. This report studies the trade-off between distance and time as each frame arrives at the client for both the versions. This implementation also supports multiple clients to connect to the server and allows video to be viewed simultaneously on more than one client and thus studies the trade-off between distance and time for multiple clients. This project is implemented using C#.NET on Microsoft Visual Studio 2005. It uses Microsoft .NET framework 2.0 for server (tablet pc) and Microsoft .NET Compact Framework 2.0 for client (iPAQ). Video streaming is useful in several areas such as entertainment media, live conferences, surveillance and security field. For entertainment media, streaming video avoids having a web user wait for a large file to be downloaded before viewing the video. Instead, the media is sent in a continuous stream and is played as it arrives. For surveillance purposes, the streamed video gives a real time view of the field. The primary application of this implementation is to be used in the field of sensor networks.
Keywords: Video Capture; Streaming; Computer Science (0984)