I have a site under development that allows bands to showcase themselves (like myspace music) and allows fans to find new music. We want to integrate a flash based music player into our site that is similar to the one found at isound (see band page: [url removed, login to view]). The player will be integrated into the website and convert Mp3s to flash for play. I need functionality to allow the player to be embedded like YouTube videos on other websites as well. The winning bidder of this project will build the player and assist with integration. Full project specs available upon request.
The Audio Player
The audio player will work in a very similar fashion to the iSOUND Player found on [url removed, login to view] band pages and the MySpace “Standalone Player” found on MySpace band pages. When a site member logs into their band manager page they need to be presented with some sort of user friendly interface that allows them upload, delete and moderate their audio files. Here are the major functions of the band manager interface that will allow a site user to control their music:
Upload New Song. We don’t necessarily have a preference whether the band manager piece is written in Flash or not but we would like the user to be able to see a status bar indicating the amount of data that has been transferred during an mp3 upload. The user will define certain attributes such as song title, song album, etc that will be inserted into the MySQL database and associated with the file. After the song is uploaded, the file will need to be first archived into a large file store in its raw MP3 format and then renamed to [url removed, login to view] and converted to flash. The id will be made available through a backend MySQL call provided by our site operators. The flash file is then copied to a local file share (i.e. /media/audio/) and made available for play by site members who visit the band’s page.
Remove Song. This feature allows the band manager to remove specific songs from the public player. It is probably best not to DELETE files off of the server but to rather “disable” them in the database.
Edit Song. Simple feature that allows a band manager to edit song attributes such as title, album and additional track information. The band manager should also be able to edit each track’s position (song_order) in the player to allow them to showcase specific tracks in the player.
The band manager page will also allow the band manager to disable song commenting, but this feature may be built by site operators(need to discuss best option).
Here is the proposed structure for the audio table that will contain user song attributes and information:
song_id | song_name | song_album | song_ext | song_bid | song_mid |song_datetime | song_flagged | song_active | song_order | song_times_played
As mentioned previously, the player itself will appear very similar to the flash based music players found on [url removed, login to view] and myspace. The player should be easy to use and feature large play, pause, back track, next track, ffwd, rwd and stop buttons. There should be a basic volume control and large display with current played song information like song name, album, status (i.e. paused) and duration. A list of available tracks should be displayed underneath or besides in the main control panel of the player and each track can be played if double-clicked. We’d like to prominently show our site’s branding on the player (logo) and possibly leave an area for advertising. The player should also include links to special functions next to each track like “comments” and “rate” that will open up new windows to URLs opening up features developed by site operators.
site operators should also have some sort of control panel or configuration file that allows us to set parameters for specific users or user groups. The parameters would include: file types allowed for upload, track time restrictions and mp3 file size limits. When a site member uploads a file, the system must check this table or configuration file and adhere to the specifications defined. This will allow us to prevent users from uploading 20 minute songs and large files (i.e. 1GB)