EF Media Player 2

Motivation
EF Player was successfully built in July. It is a media player tool which makes use of the JW Player and the ideas from YouTube Re-Player (Desktop). Because of EF Player, I now can view FLV and MP4 video files easily. Whatever videos that I watched on YouTube and Tudou can be easily converted into FLV files from the browser cache folder. Hence, EF Player provides an alternative to view and store YouTube or Tudou videos locally.

After the creation of EF Player, I started storing many interesting videos that I watched on YouTube and Tudou to my local hard disk. Soon, I found that I did not have too much space to store other stuff in my local machine. This led to the birth of the EF Media Player 2 with a new feature which allows it to connect to SkyDrive.

The following diagram illustrates the idea of having EF Media Player 2 to work together with YouTube from Google and SkyDrive from Microsoft.

EF Media Player 2

EF Media Player 2

Stream Videos From SkyDrive Easily
In order to implement the feature of viewing videos stored on SkyDrive, the EF Media Player 2 requires the Windows Live username and password of the user. After the username and password are varified to be correct, the user can then view the videos stored on the SkyDrive. The videos can be either shared or private. Because of this new feature, the users of the EF Media Player 2 are in fact allowed to share their videos with their friends.

One of the serious problems that YouTube Re-Player series has is that even though the basic info of the YouTube videos, such as their name, description, URL and so on, are stored in the database, their content is not kept locally. Hence, if the videos are removed by the YouTube online, then the videos will no longer be available in YouTube Re-Player as well. EF Media Player solves this problem by transfering the YouTube or Tudou video files to the SkyDrive so that the user can manage the videos without worrying the videos being deleted away on YouTube site.

Actually, there are a few big challenges for implementing this feature. Firstly, the URL of the files in SkyDrive is not fixed. The file URL will be changed every eight hours. So, having a fixed link point to the URL is not a solution at all. Hence, EF Media Player 2, unlike YouTube Re-Player, does not store any URL in local machine. So, the user needs to copy-and-paste the URL of the SkyDrive video file and then pastes it to the File Path textbox in EF Media Player 2 for each time he or she wants to watch the video.

Secondly, it is currently impossible for me to actually pass the username and password to the Windows Live server with the auto-login code. Actually, auto-login has been successfully achieved last month. However, recently Microsoft changed the UI of the login page, so the auto-login function can no longer work. Eventually, the webBrowser control is used to temporarily solve the problem of logging in to Windows Live.

Windows Live Login Page in EF Media Player 2

Windows Live Login Page in EF Media Player 2

Playlist Implementation
In EF Media Player 2, the user is able to play not only a single video file each time, but also a playlist which contains more than one video. This is actually the feature offered by the JW Player. Hence, what EF Media Player 2 does is taking in the XML file which contains the list of videos in the playlist and then pass it to the JW Player.

Because of the implementation of playlist, EF Media Player 2 can loop both single video file and playlist. Hence, instead of listening to a song over and over again (like what is done in YouTube Re-Player), now it allows listening to a set of songs and musics over and over again.

Playlist feature also allows me to watch video series and anime series without keep dragging and dropping the files to the player. The playlist feature enables the player to automatically play from the first episode until the last episode of the video series.

Since the playlist files must always stay in the same folder as the JW Player, playing playlist files which are on the SkyDrive is theorectically alright as long as the JW Player file is also on the SkyDrive. However, I have not tried this because the playlist files normally do not occupy too much space on my hard disk. Hence, I am now still keeping the playlist files in local machine.

Future Work
Streaming video from SkyDrive is not that easy actually. Also, Microsoft is still going to improve the Windows Live services in a rapid speed. Hence, I should always keep track of the new updates available, especially the SkyDrive API, in order to make EF Media Player eventually able to work with SkyDrive in a more advanced way.

There is still room for GUI improvement in EF Media Player 2. For example, adding a progress bar to display the progress of the login process. In addition, the username and password validation is actually not yet implemented. Now it always assume the user to give correct username and password for the Windows Live login. Hence, all these will be done in the future version.

Advertisements

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