Hello all,<br><br>Im Pranav Agarwal currently pursuing MSc Maths & BE Computer Science from BITS, Pilani, India. I have an idea which i'd like to implement on the VLC Media Player as a part of the GSoC 2010.<br><br>
<b><u> Idea: </u></b><br><br>The objective is to develop an application that creates a playlist of audio/video files based on User’s Mood and the first song chosen to play, by extracting certain attributes of music files automatically through Signal Classification techniques or an Online metadata search procedure.<br>
<br><b><u> Concept</u></b>:<br><br>Say a user has 100 songs in a directory that he adds to the media player as a potential playlist. Assuming the directory has songs of different Genre, a user might not be interested to listen to all the songs but a few which suits his mood. The application does so by finding the similarity between the songs on the basis of several features like frequency spectrum, zero-crossing rate, tempo, beat strength etc through Signal Processing techniques and help identify a potential playlist for the user depending on the mood.<br>
Moreover, the application depends on what according to user is Rock, Classical or any other genre as according to one particular user, the song could be a soft rock and according to someone else it could be a classical one and since, there is no standard way of finding the Genre of the song, User Perception plays an important role in categorizing songs. This kind of a plugin to VLC could be added as another mode(something similar to the Random Mode).<br>
<br>The first part of the project involves using the Signal Processing techniques to find the attributes such as the spectral centroid, zero crossing rate(both mean and standard deviation), beats per minute, beat strength(both mean and standard deviation), tempo to find the hidden attributes of the song and thereby calculate its distance from the other songs in the list. By putting in a threshold, we can put the songs in an order and thereby create an playlist depending upon the users's mood.<br>
The second part will be to integrate it with the VLC Media PLayer.<br><br><b><u>What I've done till now?</u></b><br><br>I have presently written the code for finding the attributes (as mentioned above) for any particular song in Matlab. I'd like to extend my project so that it gets implemented on VLC and thereby relieve user's of constantly clicking on a song from a list of songs.<br>
the project that i have implememted has one limitation which is "extracting the attributes for a mp3 file with size greater than 4MB."<br>I'm currently working on this part.<br><br>I intend to participate in GSoC and work with the VLC community and hope to implement this feature on VLC. My programming skills are C, Ruby, Shell Scripting. If this idea looks good, i'd like to know, what are the programmable skills required?<br>
<br>Waiting for a reply, so that someone can guide me through as to how can i go about working with it and take up this idea further.<div><br>Thanks,</div><div><br></div><div><br>Regards,<br>Pranav Agarwal<br>+91-9772975433<br>
<a href="mailto:meetpranav123@gmail.com">meetpranav123@gmail.com</a><br><br><br><br><br><br></div>