Re: VB6 - Monoton Audio Lib
Although I downloaded it, I haven't taken a look yet.
However, judging by the size of your zip file and the time spent on development and research, it looks like you put a lot of effort into this and it is appreciated. :thumb:
Fine job!
Re: VB6 - Monoton Audio Lib
Thanks Hack, yep, it took me about 5-6 months :)
Re: VB6 - Monoton Audio Lib
Monoton v2. Probably the first audio player written in VB which shows a little of the staggering work behind Winamp.
It's not a DLL anymore, it's a real player. w00t.
screenies:
http://actorics.de/rm_code/code/monoton/monoton.jpg
http://actorics.de/rm_code/code/monoton/monoton2.jpg
http://actorics.de/rm_code/code/monoton/monoton.zip (4 MB)
For those who can't get MP3/WMA to work:
http://actorics.de/rm_code/code/monoton/wmfsdk.zip (3.8 MB)
There are some binaries in the package, for those who can't compile
C(++) or even Monoton.
libs used:
- WMF SDK (wma, mp3)
- libsamplerate (resampling)
- libsndfile (support for snd/au/aif/aifc)
- ogg vorbis (well, the ogg format)
- monkey's audio (ape format)
- lame (mp3 encoder)
ax used:
- VBAccelerator SGrid 2 (playlist)
- SSubTmr6 (used by the SGrid)
Features are:
- readable formats: wav, ape, au, snd, aiff/aif, aifc, voc/vox, ogg, wma, mp3, cda
- writable formats (encoders!): wav, ape, wma, mp3, ogg
- read/writable playlists: m3u, pls
- Play/StopPause (!!)
- setable volume/pan
- Windows Mixer directly controlable
- repeat modes: whole playlist, single, nothing, random
- visualisation: frequency spectrum (FFT), amplitudes
- 8 band graphical equalizer (with a nice visualisation of the spectrum amplifier curve, like in Winamp), save and load presets
- effects: reverb (or is that called "echo"?), channel swap, phase shift, normalization
- rip audio CDs, with FreeDB support (supports ASPI, SPTI and IOCTLs), normalization, downmixing and resampling
- transcoder, converts from readable to writable formats, with normalization, downmixing and resampling
- record from WaveIn, line to be recorded from can be selected.
Re: VB6 - Monoton Audio Lib
This is by far the best open source project I've seen written in VB classic. I have run into one problem with it though. When I try to change increase the EQ to more than the default 8 bands I receive nothing but distortion during playback. Is the constant EQ_BANDS the only variable controlling the number of bands?
Re: VB6 - Monoton Audio Lib
As always rm_03, a very nice example! I'm particularly interested in the ripping aspects, and am struggling with the Lame MP3 codec. Using the monoton app. in the bin folder, I can rip to MP3 - but in the project I get 'Encoder Not Initialised'.
The lame encoder DLL is in the project directory, so I don't understand why this is behaving this way. Can you shed some light on this please? :)
Oh, there's also a bug in the FreeDB library, I'll try and fix that when I can in your project and let you have the results - but right now have it working in my own separate library.
Re: VB6 - Monoton Audio Lib
Quote:
Originally Posted by VorTechS
As always rm_03, a very nice example! I'm particularly interested in the ripping aspects, and am struggling with the Lame MP3 codec. Using the monoton app. in the bin folder, I can rip to MP3 - but in the project I get 'Encoder Not Initialised'.
The lame encoder DLL is in the project directory, so I don't understand why this is behaving this way. Can you shed some light on this please? :)
Oh, there's also a bug in the FreeDB library, I'll try and fix that when I can in your project and let you have the results - but right now have it working in my own separate library.
Try copying the lame dll to your windows system directory when running from the IDE. Also I'm not sure what bug your referring to in the FreeDB class, I have yet to encounter any problem.
Re: VB6 - Monoton Audio Lib
Okay, rather than copy to the system32 directory, I modified LoadDLL to specify the app.path - and that looks to have resolved my immediate problem loading the DLLs.
I have a new CD set here 'Helter Skelter vs Raindance: Hardcore 2007' and the data returned by the FreeDB class is not read correctly.
The DiscID is: 52123717
Here are two links to images showing the differences returned by my hacked up Flamed and the release Monoton:
Monoton FreeDB Results
PhatHack Media Manager FreeDB Results
At least unlike Flamed it was actually able to identify track info. if the CD is a mixed Audio/Data CD as this CD set is!
Re: VB6 - Monoton Audio Lib
It must be the CD entry in FreeDB itself. I've tested both Flamed and Monoton on about 12 mixed data CDs and have never had it crop off the track titles. Both projects use the same FreeDB class from vbaccelerator.com. I will try it on some more of my Mixed data CDs this week.
Re: VB6 - Monoton Audio Lib
Nope, it's not the FreeDB entry, that returns fine. I've located the problem and fixed it. If the freeDB track entries return across more than one line, ie:
TTITLE1=Fedde La Grand / Put Your Hands Up For Detroit (Slipmatt & Billy 'Danie
TTITLE1=l' Bunter Remix)
...the code in AddTitle doesn't cope with this. It's a simple change, entire procedure is pasted below:
VB Code:
Private Sub AddTitle( _
ByVal sLine As String _
)
Dim iPos As Long
Dim iNextPos As Long
Dim sTrack As String
Dim lTrack As Long
iPos = InStr(sLine, "TTITLE")
iNextPos = InStr(iPos + 6, sLine, "=")
If (iNextPos > iPos) Then
sTrack = Mid(sLine, iPos + 6, iNextPos - iPos - 6)
If IsNumeric(sTrack) Then
lTrack = CLng(sTrack) + 1
If (m_iTrackCount < lTrack) Then
m_iTrackCount = lTrack
ReDim Preserve m_sTitles(1 To m_iTrackCount) As String
ReDim Preserve m_sExtended(1 To m_iTrackCount) As String
End If
'Fixed by VorTechS - multi-line track info only resulted in last line being accounted for
'm_sTitles(lTrack) = Trim(Mid(sLine, iNextPos + 1))
m_sTitles(lTrack) = m_sTitles(lTrack) & Trim(Mid(sLine, iNextPos + 1))
End If
End If
End Sub
Essentially it's only this line that was wrong:
VB Code:
m_sTitles(lTrack) = Trim(Mid(sLine, iNextPos + 1))
And the same problem exists with the extended info:
VB Code:
Private Sub AddExtendedDetails( _
ByVal sLine As String _
)
Dim iPos As Long
Dim iNextPos As Long
Dim sTrack As String
Dim lTrack As Long
iPos = InStr(sLine, "EXTT")
iNextPos = InStr(iPos + 4, sLine, "=")
If (iNextPos > iPos) Then
sTrack = Mid(sLine, iPos + 4, iNextPos - iPos - 4)
If IsNumeric(sTrack) Then
lTrack = CLng(sTrack) + 1
If (m_iTrackCount < lTrack) Then
m_iTrackCount = lTrack
ReDim Preserve m_sTitles(1 To m_iTrackCount) As String
ReDim Preserve m_sExtended(1 To m_iTrackCount) As String
End If
'Fixed by VorTechS - multi-line track info only resulted in last line being accounted for
'm_sExtended(lTrack) = Trim(Mid(sLine, iNextPos + 1))
m_sExtended(lTrack) = m_sExtended(lTrack) & Trim(Mid(sLine, iNextPos + 1))
End If
End If
End Sub
Re: VB6 - Monoton Audio Lib
I never realized track title entries could contain more than one line. Thanks for pointing that out!
Re: VB6 - Monoton Audio Lib
No problem! ;)
I've also got a problem at the moment with ID3 tags - but that might be because I've been debugging and can't delete tracks because the file stream wasn't closed. When I can reboot the O/S I'll confirm this.
Re: VB6 - Monoton Audio Lib
hey, i tried running monoton_ds_en in VS 2008, it gave an upgrade error sayin dx8vb.dll needed.. i got the file and put it in my system dir but it still didnt work.. anyway so i tried opening it with VB6 . how do i get it to run?? i know this might seem silly but im basically a java programmer... due to the lack of proper sound facilties in JMF ive shifted to VB and C#... also when i run monoton v2 in vb6 it gives up an error saying method show of frmMain failed... any suggestions??
Re: VB6 - Monoton Audio Lib
Does this do audio only? OR can it RAW READ ANY DATA BITS on a CD. I would prefer it if there were a way to read anything from a data track or audio track. A dumb "bit reader" so to speak, that would ignore what type of track it was reading, and just send the raw bits to my software, so my software could handle them as I need to for my own custom uses.
Re: VB6 - Monoton Audio Lib
These links can not open, you can upload to this site? Thank you
Re: VB6 - Monoton Audio Lib
Do you mean the links for the stuff in Post #4?
http://web.archive.org/web/200608250.../code/monoton/
All the files are downloadable as of this post.
Thanks for bumping to ask by the way, I had never seen this wonderful project before :)
Re: VB6 - Monoton Audio Lib
I can't download the Monoton Audio Lib V2 files (the stuff in Post #4).
Re: VB6 - Monoton Audio Lib
The links are 11 years old, websites come and go.
Did you check the link given by fafalone in the post above yours???
Re: VB6 - Monoton Audio Lib
Quote:
Originally Posted by
Arnoutdv
The links are 11 years old, websites come and go.
Did you check the link given by fafalone in the post above yours???
Sorry for my late reply. I have checked the link given by fafalone, but the link can't be opened. A lot of websites are blocked in our country, such as Google.
Re: VB6 - Monoton Audio Lib
if google is blocked, then the web archive is surely blocked. :/
Re: VB6 - Monoton Audio Lib
That's a real bummer :mad: