ReMp3 : My BSc Project

ReMp3 Web Site : ReMp3 | Sussex University : Prizewinning projects

For my final year degree project at Sussex University (2006), I decided to write an application that would allow the following features:

  • Allow a user to construct a local playlist of music
  • Allow a user to RIP a CD to MP3 / WAV
  • Allow a user to create a media catalogue
  • Allow a user to convert from WAV to MP3
  • Allow a user to edit ID3 tag information for v1.0 / v1.1 ID3 tags
  • Save all track list information in XAML where it could also be validated
  • Allow a 2nd PC to control what was played on another PC, like a remote control.

So that was the requirements, and what I came up with was the ReMp3 project. It did fairly well overall, and I was quite happy with it. I ended up getting 1st place prize and being awarded an award by the British Computer Society.

res.png

It looked like the figure shown above here. There were 2 applications a server and a client. And is made use of host of .NET technologies such as Threading, Remoting, DataAcess (ADO .NET), Custom Controls, XML Parsing, Patterns, and Pinging.

Server App

The server app shown below, consisted of 6 main tabs, which were as follows:

  • Home
  • Media Player
  • Mp3 Editor
  • Media Library
  • CD-Ripper
  • WAV to MP3

re.png

Ill now show a screen shotof each of those controls

Media Player

For this control I used the Microsoft Media player, and wrote a wrapper around it, to carry out track lists, drag and drop, reordering of tracklist. One point was that a user could consruct a tracklist of any items on their network, and save that tracklist. As such I had to 1st Ping the host to make sure the tracks read from the saved tracklist, could still be found.

re1.png

MP3 Editor Control

This control was really about byte frigging, as the ID3 information is part of the MP3 file, so it all about maniupulating bytes within the MP3 file.

re31.png

Media Library Control

This is fairly straight forward ADO .NET stuff, except that I threaded all this recursive folder scanning, to free up the UI.re2.png

CD Ripper Control

Although id like to take the credit for this one, the code was mainly sourced at codeproject

re4.png

WAV to MP3 Control

Although id like to take the credit for this one, the code was mainly sourced at codeproject

re5.png

Client App

The client app shown below, consisted of 2 main tabs, which were as follows:

  • Track List
  • Media Library

Track List

This used .NET remoting to call methods on the Server form. It also had to be threaded to allow the server to block under certain conditions where the Client had to block waiting on the server. For instance when the current playing track changes is not a function of the Client but rather the Server, so the Client had to wait for the Server to notify it of a change.

This also used some unmanaged P/Invoke calls to obtain a list of network PCs, that a server could be picked from.

cli1.png

cli2.png

Media Library

The same as the Server app

Advertisements

5 thoughts on “ReMp3 : My BSc Project

  1. M Eissa says:

    Hi Sacha Barber
    First I have to say that you are a great developer I admire your work and ideas and think you are some kind of a genius.
    I was trying to create an application similar to the ReMP3 application but for videos than I sow your application on the code project website.
    I really need to have a look at the code it will be a great help to me.
    Again I have to say that I really admire all of your Ideas and glad to know people like you exists in this world

    Please forgive my bad English.

    Best regards
    M Eissa

  2. M Eissa says:

    Dear Sacha Barber;
    Can You Please please send to me the this project in zipped files (the solutions not the MSI installer)

  3. sacha says:

    thanks man. I quite liked this project actually.

    Though I liked my Msc Project better.

    http://sacha.ac68.niris.co.uk/ns/sb54_MscITEC_Proj.htm

    But my hosting is down right now, so you will have to try again later

  4. Siamak says:

    Hi Man
    i think u are a very good developer ,i found u in codeproject with this application ,and i search for the source code but nothing i found ,please let us know about inside the application I mean the source code,
    it can be very usefull for us , i think that u dont disappoint your fans. thank u
    with best regards

  5. sacha says:

    Siamak, I answered this over at codeproject.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: