Media player development on .NET 4 platform

The different audio and video contents have already been popular before the appearance of the broadband networks, and their popularity keeps growing since that time. Today's media players have to meet the increasing level of requirements from the users. From the developer's point of view, this means that more and more special functionalities have to be added to the software.

In my thesis, I present the planning and implementation process of a media player, which is capable of making the user experience complete even for those, who consider the mobility aspects primary. The application enables the user to have a central computer store his/her media files and playlists, which then can easily be accessed through the Internet.

Most people use Windows operating systems on their computers, where the most recent version of the .NET framework, version 4 is available. Because of this, I used the most spectacular and advanced technology that was available for developing the player: the Windows Presentation Foundation (WPF).

It was crucial to connect the client-side component and the server without troubles, hence I used another next-generation technology developed by Microsoft, the Windows Communication Foundation (WCF). It enabled me to establish a fast, reliable and secure communication between the two parties. Because of one of the unique features of WPF, I created another client-side component so that it can respond to the HTTP requests sent by the player. It uses the file stream it gets from the server (through WCF) to assemble the HTTP response.

To reach all the above mentioned functions, I applied two more main technologies in the server component. On the one hand, I needed an environment to host the WCF service: I chose the Internet Information Services (IIS) for this role because of its robustness, reliability and easy manageability. On the other hand, I needed a database server for the structured storage and easy retrieval of data. For this goal, I found the latest Microsoft SQL Server version, the 2008 R2 to be the most suitable, since using only Microsoft technologies we can avoid issues related to compatibility.