I have seen many folks here and other fora struggling with Window Media Player, the MMControl, and MPI Api calls to create decent Mp3/Wav apps. After a few years working with the Bass library, I'm convinced it is the way to go. Bass was created by Ian Luck at http://www.un4seen.com. The basic package contains the binaries and examples for several languages, including VB. The VB apps all work fine and will give you an idea of how to use the library. The class in this project (cBass.cls) just serves as a wrapper to make it easier to use Bass.
This app is designed for those who have a large collection of music files. It uses an ADO Access database (Music.mdb) to store the info about each mp3/wav file added. When adding music files, it uses the audiogenie3.dll to gather info if the mp3 files have tags. If not you can edit files to store things like album, composer, genre, year, comment, etc in the DB.
If you have your music files centrally located, such as ITunes, it is best to load the entire folder, which can be time comsuming, and then delete such items as desired, but this is not necessary, as you can add files at any time.
Features:
· Select music by category (Artist, Album, Composer, Genre, Year)
· Search for music in the database or in the currently playing list
· Load random lists of music
· Create Playlists that are stored in the database. (There is also a utility under Options to manage/edit/delete Playlists.)
· Add album art to your mp3 files, which is stored in the file's ID3 V2 tag, bmp, jpg, tif, gif, png are supported.
Startup:
At startup, the database is empty and you will be prompted to Use Options/Add Music to enter mp3/wav files to the database. Once you have added music to the database, you will be able to access the players features.
Keyboard controls:
Playback:
The Right and Left keys advance/backup the music stream by 5 seconds when the Listview has focus. You can also change
the songs position using the scroll bar.
Ctrl P Play the previous song
Ctrl S Start/Restart the currently selected song
Ctrl Space Pause/Resume the currently playing song
Ctrl X Stop the currently playing song
Ctrl N Play then next song
(Note you can scroll up & down with the arrow keys and play a song by pressing the Return key on the desired item, or you can Double Click an item to play it)
Others:
Ctrl G Go to the currently playing song (i.e. the playing song has been scrolled out of view)
Ctrl A Select all songs in the list
Ctrl C Clear the list
Ctrl R Remove all selected songs in the list
About Crossfading:
Many people like the music to fade out at the end and start the next song in the list. I have found that about 5 seconds of crossfade/fadeout works pretty well, but you can change this with Options|Preferences. Note that this does not work well with a song that has too much silence at the end. I use Mp3 Trim Pro from http://www.mptrim.com/, which can trim the silence from both the beginning and end of an mp3.
Binaries:
Bass:
http://www.un4seen.com/ Click on 'Bass' at the top left of the page. This will take you to the download page. At the top of the page under the word 'Platform', click on the left most Download link. In this download there are two versions of bass.dll. One is in the root folder and the other in a folder called mp3-free.
If you use the "mp3-free" version, you won't need a license since it uses the OS's MP3 decoder rather than including its own MP3 decoder. It's the same as bass.dll, just without the internal MP3 decoder. As long as Windows Media Player is installed, you will have mp3 codecs installed and the mp3-free version should work fine. If you are not developing a commercial product that uses bass, it doesn't matter and you can use either version. I have the mp3-version in my (XP) System32 folder, but you can put it in the app folder or wherever, as long as windows can find it in its Path.
Audiogenie:
http://sourceforge.net/projects/audiogenie/?source=dlp. This gives you the audiogenie3.dll (also in my System32 folder). The clsAudioGenie in this project is a trimmed down version of the full class which reads/writes tags to many different music file formats. You can get the full class here:
http://en.sourceforge.jp/projects/sf...udioGenie.cls/
The attachment has the VB Files without the binaries.
http://normcook.net/Index.html has this readme file as well as the zip for all the VB files, plus the binaries.
Hope you enjoy it.
Comments/critiques welcome.
![Name: ScreenShot.JPG
Views: 62
Size: 67.6 KB]()
This app is designed for those who have a large collection of music files. It uses an ADO Access database (Music.mdb) to store the info about each mp3/wav file added. When adding music files, it uses the audiogenie3.dll to gather info if the mp3 files have tags. If not you can edit files to store things like album, composer, genre, year, comment, etc in the DB.
If you have your music files centrally located, such as ITunes, it is best to load the entire folder, which can be time comsuming, and then delete such items as desired, but this is not necessary, as you can add files at any time.
Features:
· Select music by category (Artist, Album, Composer, Genre, Year)
· Search for music in the database or in the currently playing list
· Load random lists of music
· Create Playlists that are stored in the database. (There is also a utility under Options to manage/edit/delete Playlists.)
· Add album art to your mp3 files, which is stored in the file's ID3 V2 tag, bmp, jpg, tif, gif, png are supported.
Startup:
At startup, the database is empty and you will be prompted to Use Options/Add Music to enter mp3/wav files to the database. Once you have added music to the database, you will be able to access the players features.
Keyboard controls:
Playback:
The Right and Left keys advance/backup the music stream by 5 seconds when the Listview has focus. You can also change
the songs position using the scroll bar.
Ctrl P Play the previous song
Ctrl S Start/Restart the currently selected song
Ctrl Space Pause/Resume the currently playing song
Ctrl X Stop the currently playing song
Ctrl N Play then next song
(Note you can scroll up & down with the arrow keys and play a song by pressing the Return key on the desired item, or you can Double Click an item to play it)
Others:
Ctrl G Go to the currently playing song (i.e. the playing song has been scrolled out of view)
Ctrl A Select all songs in the list
Ctrl C Clear the list
Ctrl R Remove all selected songs in the list
About Crossfading:
Many people like the music to fade out at the end and start the next song in the list. I have found that about 5 seconds of crossfade/fadeout works pretty well, but you can change this with Options|Preferences. Note that this does not work well with a song that has too much silence at the end. I use Mp3 Trim Pro from http://www.mptrim.com/, which can trim the silence from both the beginning and end of an mp3.
Binaries:
Bass:
http://www.un4seen.com/ Click on 'Bass' at the top left of the page. This will take you to the download page. At the top of the page under the word 'Platform', click on the left most Download link. In this download there are two versions of bass.dll. One is in the root folder and the other in a folder called mp3-free.
If you use the "mp3-free" version, you won't need a license since it uses the OS's MP3 decoder rather than including its own MP3 decoder. It's the same as bass.dll, just without the internal MP3 decoder. As long as Windows Media Player is installed, you will have mp3 codecs installed and the mp3-free version should work fine. If you are not developing a commercial product that uses bass, it doesn't matter and you can use either version. I have the mp3-version in my (XP) System32 folder, but you can put it in the app folder or wherever, as long as windows can find it in its Path.
Audiogenie:
http://sourceforge.net/projects/audiogenie/?source=dlp. This gives you the audiogenie3.dll (also in my System32 folder). The clsAudioGenie in this project is a trimmed down version of the full class which reads/writes tags to many different music file formats. You can get the full class here:
http://en.sourceforge.jp/projects/sf...udioGenie.cls/
The attachment has the VB Files without the binaries.
http://normcook.net/Index.html has this readme file as well as the zip for all the VB files, plus the binaries.
Hope you enjoy it.
Comments/critiques welcome.