Realtime Access Map
Multimedia player implementation on embedded systems
There has been a surge in the number of digital audio and video content in recent years. Advances in the compression and storage technologies and improvements in the speed of internet connection have enabled widespread use of multimedia content. A wide variety of devices have been introduced to decode and play these media contents.Initially designed as a mere voice communication device, the mobile phones nowadays come equipped with a variety of multimedia capabilities including media players despite their limited system resources.Nowadays, huge servers host dramatically increased audio and video contents Users prefer to watch these contents while streaming rather than downloading them first. So, streaming media players are responsible to present multimedia contents without annoying interrupts.This thesis firstly introduces challenges in design and implementation of a streaming media player and then proposes solutions. Main challenges are keeping audio-video synchronization and server-client synchronization and detecting stream type, handling of multithreaded operations and buffer management. Audio-video synchronization problem is solved by using audio as master stream. Server-client synchronization problem is solved by designing a playback mechanism that keeps synchronization with the server by tuning the playback rate of a streaming media without losing lip-sync between audio and video. The proposed streaming player also has a feature of identifying the type of a media stream very rapidly without using a discrete stream inspector module. The presented design is heavily multithreaded which is implemented on Linux platform, moreover it is also convenient for and implementable on any multithreaded platform.