HydrogenAudio

Hydrogenaudio Forum => Validated News => Topic started by: MoSPDude on 2008-01-12 11:44:11

Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-12 11:44:11
Hi, this is a long awaited (although not fully finished) conversion and improvement of my previous updated in_mad plug-in.

The notable new features/fixes (that I can remember from notes) include,
* Re-written/ported to C++ to 'enable' better WA5 compatibility
* Fully Unicode GUI
* Icecast mp3 streaming fixed
* WA5 Global Configuration supported
* Improved basic and advanced editing
* Slightly improved ID3v2.3 support
* 32 bit output uses full internal 28 bit representation
* Advanced-style Basic formatting for WA2
* Non-Unicode backward compatible for WA2 (not fully tested)
* Multi-lingual dialogs (once someone translates!)
* Re-designed APE tag support including Unicode

The playback and EQ backend is mostly the same except ported through to C++ and into a class structure.
However some things are incomplete,
* New Binary editor disabled
* EQU2 tag editing and writing disabled

The latest DLL can be downloaded from http://www.zen23652.zen.co.uk/in_mad_2b.zip (http://www.zen23652.zen.co.uk/in_mad_2b.zip).
Source code is now separate from http://www.zen23652.zen.co.uk/in_mad_2b_src.zip (http://www.zen23652.zen.co.uk/in_mad_2b_src.zip)
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: j7n on 2008-01-12 21:47:52
This version is great, most importantly special characters are now displayed properly. Thank you.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-12 23:00:54
As a note, I've only tested this on Windows XP SP2. With the new Unicode interface, I don't know how it will behave on Windows 98. I'd recommend deleting the previous plug-in settings from the registry (after backing them up in case you want to use the previous version) from HKCU\Software\Winamp\MAD Plug-in. There are also now 2 files in the package, both are needed. The in_mad.ini file is actually a file of strings for the dialogs saved in UTF-8 format.

If you used the previous plug-in and don't delete the settings, you'll need to change the Basic title formatting setting back to the new default by deleting whats there in the settings, or copying
Code: [Select]
[%artist% - ]$if2(%title%,$filepart(%filename%))
into it.

Other than that, I've been sat on this for a while now - just having no time to work on it really. I've been using the Debug version for some time and I hope it will have mostly no problems.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Kjn_Wds on 2008-01-14 15:02:44
Great work, as usual : ) !
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Maggi on 2008-01-14 15:21:55
If you used the previous plug-in and don't delete the settings, you'll need to change the Basic title formatting setting back to the new default by deleting whats there in the settings, or copying
Code: [Select]
[%artist% - ]$if2(%title%,$filepart(%filename%))
into it.

Other than that, I've been sat on this for a while now - just having no time to work on it really. I've been using the Debug version for some time and I hope it will have mostly no problems.


Hi Mo,

first off, thanx a lot for maintaining the plugin ...


Now, I seem to struggle with your new title formatting.

My purpose is to check whether a given tag field is present and print it with additional characters for enhanced formatting and better readability.

With your previous release, I used this syntax:

Code: [Select]
%?1<%1 - >%?0<%0. >%?2<%2|%8>%?3< - %3>%?4< - %4>


resulting in playlist entries like this:

[/i]

where the first numbers are representing their playlist position

...

trying to translate it into the new syntax, I ended up with using $if(A,B,C):

Code: [Select]
$if(%artist%,%artist% - ,)$if(%track%,%track%. ,)$if2(%title%,$filepart(%filename%))$if(%album%, - %album%,)$if(%year%, - %year%,)



for easier trouble shooting, we could just focus on the first entry:

Code: [Select]
$if(%artist%,%artist% - ,)


I expect this to check for a valid artist tag and only if one is found, it prints the artist tag, followed by " - ".

If no tag is found, it shouldn't print anything at all, but unfortunately I get something like this:
[/i]

so effectively all queried and existing tags get printed twice

Would you be so kind and give me a pointer how to solve this or what I'm misunderstanding ?

TIA,
Maggi
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-14 17:08:05
OK, that one bug already!    I'm uploading a fixed version now.
May I recommend using,
Code: [Select]
[%artist% - ][%track%. ]$if2(%title%,$filepart(%filename%))[ - %album%][ - %year%]

as its a shorter syntax.

Thanks for spotting that! I might get round to finishing other parts soon.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: j7n on 2008-01-14 17:10:43
I tried to run Winamp 5.35 under Win98. UTF characters found in the current codepage are displayed correctly, others are replaced with question marks. File Info box is nonfunctional. Preferences box behaves as if the lang pack in_mad.ini would not be there, Prefs dialog is also nonfunctional.

I have not set the Winamp installation directory anywhere, just copied all the files. For some reason winamp can't find whatsnew.txt too. UniCows v1.1.3790.0 is present.

I think compatibility is important with Winamp. If you take that away there is little point using winamp.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-14 17:21:58
True, I was hoping Windows 98 wouldn't have a problem with the Unicode if Unicows was there. When I get chance I'll fire up a virtual machine to have a look. Thanks for testing it, I've not had chance too on other systems.

As another note, as I changed to C++, the development environment I moved to is now Microsoft Visual Studio 2005 C++ Express Edition with the Platform SDK, if anyone wants to have a look in the mean time and feedback.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-14 23:46:07
I just checked to see if Unicows was linked with the DLL, and it wasn't. I've rebuilt it and uploaded it, so maybe now the Windows 98 problem is solved - I've still not had time to test. The current DLL version number is 0.2.0.2.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Maggi on 2008-01-15 09:41:22
OK, that one bug already!    I'm uploading a fixed version now.
May I recommend using,
Code: [Select]
[%artist% - ][%track%. ]$if2(%title%,$filepart(%filename%))[ - %album%][ - %year%]

as its a shorter syntax.

Thanks for spotting that! I might get round to finishing other parts soon.


Thanx a lot, Mo !

I wasn't aware, that I could add random characters into those angled brackets ...

Kudos to you and keep up the good work !
Maggi
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: BtEO on 2008-01-16 04:07:01
Winamp 5.51 on Windows XP.

The new version of this plugin never uses ID3v2 tags for title formatting, it does not matter whether you're using Advanced or Basic. The tags are displayed fine in the info dialog however. It does not make any difference which order the tags are listed

I've created a few test files (http://bteo.jellystyle.com/TagReading.rar) (15KiB) so this can either be confirmed or I can be told where I'm going wrong. In these files I've set the artist, album, and track title fields to the name of the tag format used; in addition the track number on ID3v2 tags is padded with a 0 which the ID3v1 tags won't have. There are five files in the RAR:
No Tag  — Control, Winamp should display the filename, and does.
ID3v1 Only — Winamp should use the ID3v1 tag, and does.
ID3v1 & ID3v2 — Winamp should (under the plugin defaults) use the ID3v2 tag, but the ID3v1 tag is used instead.
ID3v2.3 Only — Winamp should use the tag, but instead displays the filename.
ID3v2.4 Only — In case the problem was in the ID3v2.3 support. Winamp should use the tag, but instead displays the filename.

It's important to not that under ATF mode Winamp will use the media library info in preference to the plugin, which is why the problem may not have been noticed yet, and why I created these tests to remove the media library from the equation.

I've not found any bugs elsewhere yet, keep up the good (and very much appreciated) work.

Edit: More bugs.
The input buffer field accepts 5 characters, but only seems to save the first four.

Also, would it be possible to unlock the file once it's fully buffered (I usually have a buffer large enough for this to always happen straight away) as I'm often cleaning tags on a new batch of MP3s while listening to them and it's a pain having to stop Winamp every time I apply changes.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-16 07:55:11
I've uploaded a fix for the tag reading problem. It was to do with the tag order preferences, under my setup it wasn't showing! I'll fix the buffer dialog later and it should be possible to close the input once the file has been buffered.

Edit: I've also had chance to test Windows 98 compatibility with this last upload, and in my virtual machine it now works fine.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Domin on 2008-01-16 21:13:04
Would there be a way to fix it so when streaming music and the stream fails winamp wont hang ?

Ohh and keep up the good work, this is a great plugin 
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-16 23:46:06
Hi Domin, in what way does it crash when the stream fails - winamp completely stops responding? I've been testing it by playing back then pulling the network cable out and it goes to the next track silently leaving a message in the File Info box as to why it failed.

I'm slowing messing with it. Cheers for feedback on problems and improvements. I've implemented the file unlock once its been read too and improved the tag read opening/closing files per query, that will be in the next release.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: kerimcem on 2008-01-18 12:12:24
turkish character I,İ,Ş,Ğ  ID3V2 not display plase !! thankyou...
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-22 19:08:38
I've uploaded another update, this adds support for Winamp new Unified file information box. I've also been messing with other bits and pieces - files are now unlocked once fully buffered and maybe streaming will work better.

Has anyone tried the new format Advanced editors? you click on the field you want to edit and type directly into it. I'm also interested in if the new Unified info box will work properly.

Cheers for all feedback. The version now is 0.2.0.10 .

@kerimcem, can you check that the titles are saved in UTF-16 or UTF-8 format and make sure your using a Unicode compatible winamp.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: j7n on 2008-01-22 20:29:21
The latest in_mad now fails to load under Win98. I tried to use WA 2.95 and WA 5.35.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-22 20:51:57
Under my virtual machine on WA 5.35 it works well. I've got Windows 98SE with the UNOFFICIAL Windows98 Second Edition Service Pack 2.1a. Perhaps the question is what processor is it running on?

EDIT: I can't see any processor specific options under Visual C++ 2005 Express Edition. I'm probably missing them - i'll keep looking.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: [JAZ] on 2008-01-22 21:06:31
EDIT: I can't see any processor specific options under Visual C++ 2005 Express Edition. I'm probably missing them - i'll keep looking.


Select the project file (i.e. not a source file) in the tree view, then menu : " project - properties "

In the new window, unfold "Configuration properties, C++ , code generation".

The option related to processor is  "Enable enhanced Instruction set"....  Errm...

That's not the option... looks like they removed it.. indeed.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: robert on 2008-01-22 21:08:30
The latest in_mad now fails to load under Win98. I tried to use WA 2.95 and WA 5.35.

Maybe there is some DLL missing on your system? Here you'll find a dependency checker. (http://www.dependencywalker.com/)
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: zipr on 2008-01-25 15:54:55
Where can I find out exactly what this plugin is supposed to do?  I find lists of added features, but is there anywhere that summarizes what it is for, for those of us who haven't been following its development?
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-25 17:11:16
This plug-in is an alternative mp3 decoder plug-in for Winamp, using libmad and libid3tag.

It started off as an improvement of the original in_mad project code (found here (http://www.mars.org/home/rob/proj/mpeg/mad-plugin/)) which hadn't been touched since 2001, and lacked some, now basic, functions. The improved code, plug-in and it's details can be found in the thread titled
Updated in_mad Winamp MAD MP3 input plugin (http://www.hydrogenaudio.org/forums/index.php?showtopic=46824). It was more an exercise for me to practise GUI programming, and learn a mp3 decoder - but I added ID3v2 support, APEv2 support, a more advanced tag editor etc. but struggled to get Unicode working.

This new plug-in, is pretty much "new" in terms of the same basic GUI but a re-written C++ backend, giving more chance to support Unicode and making it easily expandable. However, as the latest Winamp is starting to support APEv2 tags I am starting to wonder about its usefulness other than for legacy Winamp versions.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: benski on 2008-01-25 17:40:29
Quote
Where can I find out exactly what this plugin is supposed to do? I find lists of added features, but is there anywhere that summarizes what it is for, for those of us who haven't been following its development?


In much older versions of Winamp (before 2.7), the built-in MP3 decoder was not standards-compliant.  It cut quite a few corners to be able to run on low-end systems that were the norm in 1997-1998 when Winamp was first being developed.  Alternative plugins based on MAD and MPG123 become widely used due to numerous decoding bugs in Winamp.  From 2.7 (November 2000), Winamp uses an MP3 decoder created based on Fraunhofer's source code.  The alternative plugins lived on because they implemented features not present in Winamp's implementations, such as gapless playback and replay gain.
Since these features are important to me, I started to implement them when I took over maintenance of the product.

However, as the latest Winamp is starting to support APEv2 tags I am starting to wonder about its usefulness other than for legacy Winamp versions.


Sorry  I'm not purposefully trying to eliminate its usefulness
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-01-26 10:40:59
Its nice for the latest Winamp versions to have these features for the people who might not necessarily know what they are or how to enable them, but their encoders provide it and the music is tagged with the information. It all aims to make Winamp sound and function better in the long run.

A new update has been uploaded, mainly GUI bug-fixes for the moment. The version is 0.2.0.12.

@j7n, did you manage to get it working under Win98 on your machine? I'm interested in why its having problems. I've tweaked a few settings in this build but I don't think there is much else I can do. I might dig out the old 400MHz computer from the garage with Win98 on it to test on the real thing.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: lvqcl on 2008-01-27 13:50:31
The alternative plugins lived on because they implemented features not present in Winamp's implementations, such as gapless playback and replay gain.
Since these features are important to me, I started to implement them when I took over maintenance of the product.


By the way: can I disable dithering in standard in_mp3 plugin? 'Use dither' checkbox does nothing with mp3.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: nemoW on 2008-01-27 20:30:55
Thanks for Unicode file/pathname support!

Strange behavior with ReplayGain (plugin versions 0.2.0.4, 0.2.0.12):
MAD can't see (or use) ReplayGain in most files. File contain ReplayGain info (checked in File info->APE->advanced), but nor ReplayGain gain nor Preamp not applied.
Screenshots:
File info->APE->advanced (http://ipicture.ru/uploads/080127/JbuC31TiOi.png)
File info->Statistics (http://ipicture.ru/uploads/080127/wq4Ft5hDTU.png)
MAD Plugin properities (http://ipicture.ru/uploads/080127/7EU3CHwTj9.png)
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: j7n on 2008-01-29 19:51:49
@j7n, did you manage to get it working under Win98 on your machine? I'm interested in why its having problems. I've tweaked a few settings in this build but I don't think there is much else I can do. I might dig out the old 400MHz computer from the garage with Win98 on it to test on the real thing.

FILEVERSION 0,2,0,12. I tried Dependency Scanner and it said something about KERNEL32.DLL. Then I installed KernelEx update and now it loads and plays properly. Service Pack v2.1 was installed before but it apparently does not include KernelEx, 48bitLBA, NUSB and some other useful stuff.

Special characters present in active 8-bit codepage are displayed, others are replaced with question marks. This is very nice, cos now that APE is supported I can just upload some of my files managed in Foobar to users who are only familiar with Winamp, and have proper metadata.

Thanks to the updates at MSFN you can have proper Win98 installation on up to i915 at 2.66 GHz and a modern video adapter.

EDIT: Tried again on another computer. Plugin didn't load until KernelEx was installed. No other changes were performed to the system during the test.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: nonreality on 2008-01-30 03:02:37
I set it up in Mediamonkey and it seems to work fine and sounds great.  This may a dumb question but what does resolution do and what should it be set at?
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Sylph on 2008-02-01 17:13:48
Hey, MoSPDude,

thank you so much for the plugin! Great work!

I just have two questions: when I installed the plugin that can be downloaded here (http://www.zen23652.zen.co.uk/in_mad.zip) I could pick a 24 bits resolution, now with this new version I cannot! Where is the problem?

Also, why can't ReplayGain be enabled and should I delete these files from the Plugins directory that came in that previous version archive:

(http://img27.picoodle.com/img/img27/4/2/1/f_Capture9gm_b10183e.jpg)

Thanks!
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-02-01 18:13:40
Hey, I've uploaded an update to fix the ReplayGain in APE tags. The new version is 0.2.0.14.

The resolution is just the decoder output bit depth - its best left on 16 bit if you use DSP plug-ins, otherwise you can experiment with high bit depths especially if you've got a good soundcard.

@Sylph, are you using WA5.x? If so, you can enable the 24 bit and ReplayGain globally for Winamp playback under Winamp General Preferences -> Playback - or you can disable in_mad from using the playback configuration on in_mad General preference page. Those files can be deleted as well, as they are development files and not needed to use the plug-in, only the 2 files in the main zip.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Sylph on 2008-02-01 18:20:32
Hey, I've uploaded an update to fix the ReplayGain in APE tags. The new version is 0.2.0.14.


Are they a part of the .zip file that can be downloaded from the link given above?

The resolution is just the decoder output bit depth - its best left on 16 bit if you use DSP plug-ins, otherwise you can experiment with high bit depths especially if you've got a good soundcard.


Well, I use DFX Audio Enhancer 8.360. Do you think I should leave the depth on 16?

@Sylph, are you using WA5.x? If so, you can enable the 24 bit and ReplayGain globally for Winamp playback under Winamp General Preferences -> Playback - or you can disable in_mad from using the playback configuration on in_mad General preference page. Those files can be deleted as well, as they are development files and not needed to use the plug-in, only the 2 files in the main zip.


Thank you, MoSPDude, that fixed the problem.

So to install the plugin correctly I should just copy the .dll and .ini files to Plugins directory?
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-02-01 18:40:27
The first link on the main page contains the latest DLLs - it should be two files only, in_mad.dll and in_mad.ini - just copy these to the Winamp plugin folder.

Most DSP plug-ins only support 16 bit resolution and are tuned for that, so I'd leave it at 16 bit. I don't know if DFX Audio Enhancer would support higher.

Cheers for all feedback - and I'll try to fix the bugs that come up  .
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Sylph on 2008-02-01 19:07:44
The first link on the main page contains the latest DLLs - it should be two files only, in_mad.dll and in_mad.ini - just copy these to the Winamp plugin folder.

Most DSP plug-ins only support 16 bit resolution and are tuned for that, so I'd leave it at 16 bit. I don't know if DFX Audio Enhancer would support higher.

Cheers for all feedback - and I'll try to fix the bugs that come up  .


Thank you for keeping this great plugin/decoder alive!

DFX's site says this:

Quote
One important factor contributing to the exceptional sound quality is the fact that DFX performs all audio processing with 32-bit floating point precision, yielding truly professional audio quality. Since Internet audio playback systems currently only support 16-bit audio playback, as a final processing step DFX carefully re-dithers the audio signal to the final 16-bit resolution using Power Technology's proprietary high quality dithering technology. Re-dithering allows a dynamic range in the playback signal that actually exceeds the theoretical limit of a 16-bit playback system.


so I guess they do support 32-bit... 
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: _Raziel-BG on 2008-02-03 04:54:00
It acts kinda strange here. On some MP3s it shows the artist and track name twice. Unfortunately I couldn't even come close to finding a common characteristic between the files, so I could have any idea what's causing it. It actually seems to copy each value of the following fields of the ID3v2 tag twice: title, artist, album, year, track # and genre. I'm using WinXP Pro SP2, Winamp 5.35 with a classic skin.

Edit: as far as plugins go, DFX isn't even close to Ozone concerning both quality or features but has the same (or was it even just a bit higher) price tag. I also prefer the free Enhancer 0.17 over DFX any day. To me it sounds better, is lighter and is more flexible. Oh, and price is unbeatable.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Orochi7777 on 2008-02-07 04:58:24
MoSPDude I love what you have done with this plugin. However I have a little request and I am not sure if you could implement it in your next update.
I noticed that In_mad stores its configurations in the registry. I use in_mad in a portable version of a player I use. Is it possible to make in_mad save its configuration settings inside INI file rather than registry.

Thank You...
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: -sanb- on 2008-02-07 17:22:01
Orochi7777
Quote
I noticed that In_mad stores its configurations in the registry. I use in_mad in a portable version of a player I use. Is it possible to make in_mad save its configuration settings inside INI file rather than registry.

MoSPDude
I'm to using this plugin with another "portable" player and want that he had not kept his settings in the registry
if it will do will be very grateful
thanks! with respect
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: BSOD2600 on 2008-02-09 22:47:20
Has anyone else noticed 'stuttering' with the latest version (0.2.0.14) ?  I'm on XP, Winamp 5.52, out_asio (v0.67 SSE2), and E-MU 0404 card.  Since switching from your older in_mad plugin to your newer one, I notice that through songs, the music will occasionally stutter / stop.  I'm quite sure it's not my computer (quad core), etc.  I can play the same song with your old plugin and it works fine, then play it again with your newer v2 plugin and there is stuttering.  These are all mp3s.  The statistics tab doesn't show any errors either.

Any ideas?
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Trainwreck56 on 2008-02-10 01:13:06
Has anyone else noticed 'stuttering' with the latest version (0.2.0.14) ?  I'm on XP, Winamp 5.52, out_asio (v0.67 SSE2), and E-MU 0404 card.  Since switching from your older in_mad plugin to your newer one, I notice that through songs, the music will occasionally stutter / stop.  I'm quite sure it's not my computer (quad core), etc.  I can play the same song with your old plugin and it works fine, then play it again with your newer v2 plugin and there is stuttering.  These are all mp3s.  The statistics tab doesn't show any errors either.

Any ideas?

I am also noticing this stuttering. Mine seems to only happen when Winamp is displaying the tag info in the playlist. I am running winamp 5.52 on xp using the default direct sound output.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: CromagDK on 2008-02-11 12:55:33
Hey there

im wonderering a bit, when i play a stream, not an ordinary mp3, only streams, my mouse marker shifts between standard mouse marker and marker with timeglas.
It changes 2 times a second i believe.

Do you need specific info from me ?

/Cromag

edit: At the same time, it looks for me like it has a mem leak ( Maybe just on my box, dont know) . With my normal mpeg decoder winamp take around 8 megs ram. With the mad plugin it runs with 200kb pr second upwards, doesnt end till i kill it.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-02-12 10:22:42
I'm hoping to get chance to have a play this coming weekend - but I need a bit more information, and a few things for people to try....

@CromagDK - The plug-in could be working hard, possibly in that memory leak situation, and windows will be changing it to busy and back. I need you to disable any DSP and stop any Visualisation first, then see if the situation remains. If it does, please could you make a note of your configuration settings and then delete HKEY_CURRENT_USER\Software\Winamp\MAD Plug-in (if your comfortable - I don't hold any responsibility if you damage the registry!) with Winamp closed, and see if the problem remains after. If it does, then I'm at a loss for ideas on where to start. In all cases - get back to me! 

@BSOD2600 and Trainwreck56 - are you using the plug-in with the Winamp global playback config enabled? If so - what is your plug-in priority set to? If not - try setting it to both Highest and Normal. Are you using extras like last.fm or audioscrobbler software?

@_Raziel-BG - First make sure your using the latest plug-in currently 0.2.0.14. Are you using basic or advanced title formatting? I need to know the formatting string in either case. As a start, you could try changing the tag lookup order in the config to see if that changes the situation.

Finally, I was using some XP only commands in the last version to do the input suspend - explaining why KernelEx was needed in Win98 for this version, I've removed and changed the code ready for the next. I have tested it with no KernelEx on my Virtual Machine, and again it works now    I'll look into a portable configuation, probably a separate INI.

Cheers all for feedback 

EDIT:spelling....
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Trainwreck56 on 2008-02-12 12:50:37
@BSOD2600 and Trainwreck56 - are you using the plug-in with the Winamp global playback config enabled? If so - what is your plug-in priority set to? If not - try setting it to both Highest and Normal. Are you using extras like last.fm or audioscrobbler software?


Yes, I am using with Winamp global playback enabled and priority class for Winamp is set at high and your plugin is set to the highest. I am not using any extras as such.


On a side note, although i have updated your plugin it still displays as being 0.15.1 (beta) in the input list. Is this correct? I have tried deleting the in_mad.dll and replacing it with the newest version but to no avail.

Thank you very much for your work, I greatly appreciate it.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: -sanb- on 2008-02-12 14:39:12
MoSPDude
I'm using AIMP player (http://www.aimp.ru/) for listening music and your plugin, sound very good.
But for the normal work of the player with your plugin first step is to turn off the "Use Winamp 5.5 unified file information box," and "Enable unicode supporte".
  Please make the next version of these default parameters for a more universal use of the plugin with another players
as a picture
(http://ipicture.ru/uploads/080212/thumbs/vRK7tas4Ro.gif) (http://ipicture.ru/Gallery/Viewfull/546677.html)
Thanks!

Quote
I'll look into a portable configuation, probably a separate INI.

be very nice
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Orochi7777 on 2008-02-12 18:27:09
Quote
I'll look into a portable configuation, probably a separate INI.


MosPDude, it was a long reply but I it was worth it.

Thanks again for your time 
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: BSOD2600 on 2008-02-12 22:33:36
@BSOD2600 and Trainwreck56 - are you using the plug-in with the Winamp global playback config enabled? If so - what is your plug-in priority set to? If not - try setting it to both Highest and Normal. Are you using extras like last.fm or audioscrobbler software?

Yes, I've got both "use winamp 5 playback config" and "use winamp 5.5 unified file info box" enabled.  The priority is set to Highest and greyed out, so I can't change it.

Yes, I'm using the Last.fm plugin too, gen_audioscrobbler.dll v1.1.11p7-DrO internal build.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Cybermutant on 2008-02-15 18:29:47
Like a previous poster, I'm also using a large file input buffer so that the whole MP3 is cached in memory. However, contrary to MoSPDude's post that he has added the feature to release the file as soon as buffering is finished, the file handle doesn't get closed and the file cannot be tagged, edited, deleted, etc. But, if you press Pause during play, the handle gets closed, and then you can continue playback from the memory buffer and do whatever you like with the file.

I'm using Winamp 5.52 on Vista x64. No extra audio plugins.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-02-15 22:55:05
Hi, the 0.15.1 (beta) is correct - its an old name referring to the libmad version used. The actual file version is displayed in the title of the About box.

I assumed that people would be tagging the files in Winamp. When you pause, stop, or open the file information boxes for tag editing it will close the main tag file handle that remains when anything in Winamp (other plugins etc) query the file for tag information. The playback handle will be closed as soon as it has buffered. It was done mainly to speed up the process of reading artist, album etc from one file, rather than closing, opening, and seeking for tags in the same file repeatedly. The problem when I made it close both handles on buffering is that something else would then query it - needing it to be reopened etc. slowing it down again. If its a definite problem, I was thinking about putting it on a timer so the handle will close if nothing asks for file info after a couple of seconds.

Thanks for the reply about the stuttering. I'll have to try a few things to better determine the cause of it. On the memory leak issue, I can't seem to trace a problem down on the internet streaming side - I'll have a better look into it soon, it could be a metadata related issue.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: gameplaya15143 on 2008-02-16 18:06:18
I figured out that the unicode support option has to be unchecked for it to work with winamp 2.9x.  After I replaced the title formatting string, everything seems to be fine.  Meta-data from VBR mp3 streams from icecast works nicely.    Great job!

I noticed the 'choppy' sound thing myself.  It seems the output plugin gets starved sometimes when beginning playback.    Only happens rarely on streams, I have yet to have it happen on a local file.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Domin on 2008-02-17 13:55:27
Hi Domin, in what way does it crash when the stream fails - winamp completely stops responding? I've been testing it by playing back then pulling the network cable out and it goes to the next track silently leaving a message in the File Info box as to why it failed.



It usualy hangs for a few minutes, but latest version seems to fixe it, and i have no of the problems with studdering or mem leaks others mention.

Running on Vista X64 Ultimate.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-03-03 19:57:46
Hi folks,

I've put up another update - this version is now 0.2.0.20. I hope this addresses some of the previous issues. I've had a look into the memory leak and changed a possible cause. Support for configuration file is included, place it into the plugins folder with everything else - if the file is present it uses that - if not it uses the registry.

I've been too busy lately to do any serious changes. Cheers for your feedback, I hope to get some time over Easter to play!
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Orochi7777 on 2008-03-03 20:07:50
MoSPDude you are my HERO. 
Thank you very much for your hard work, the configuration file is simply awesome.

Thanks Again....

Cheers !!! 
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Emre on 2008-03-03 22:52:39
@MoSPDude

did you drop FPM_64BIT compile switch for libmad with new version? which switch did you use? FPM_INTEL or FPM_DEFAULT
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: -sanb- on 2008-03-03 23:08:23
MoSPDude
BIG THANKS!!!
MY MAN!!!

with respect!
and thank you from the AIMP community
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-03-04 08:19:24
Hi Emre,
I've dropped back to FPM_INTEL (as in my previous in_mad) mainly to see if this helps with peoples problems. As far as I know VS2005 does support 64bit signed int properly however. I kept OPT_ACCURACY on in both cases. I personally didn't notice a difference in speed, though I'd need to test it further. In mad.h, it strongly recommends against FPM_DEFAULT.

If anyone has noticed any major differences as such (eg. improved the stuttering) please feedback.
Cheers 

Edit: As this is the first time I've tried FPM_INTEL in Visual Studio, it appears to not take account of OPT_ACCURACY as it did using GCC. I'll have a look into it.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Emre on 2008-03-05 03:03:41
Hi Emre,
I've dropped back to FPM_INTEL (as in my previous in_mad) mainly to see if this helps with peoples problems. As far as I know VS2005 does support 64bit signed int properly however. I kept OPT_ACCURACY on in both cases. I personally didn't notice a difference in speed, though I'd need to test it further. In mad.h, it strongly recommends against FPM_DEFAULT.

If anyone has noticed any major differences as such (eg. improved the stuttering) please feedback.
Cheers 

Edit: As this is the first time I've tried FPM_INTEL in Visual Studio, it appears to not take account of OPT_ACCURACY as it did using GCC. I'll have a look into it.


Hi MoSPDude,

I did some tests with ffdshow's libmad component. i get source code via svn (rev 1882) and i did some modifications in libmad project files. i compiled ff_libmad.dll with vc2005 express and vc2008 express.

for speed test i used foobar2000 with haali's foo_input_ds plugin.
directshow filter chain: source mp3 in matroska container -> haali splitter -> ffdshow audio decoder (libmad)

test results with foobar2000's decoding speed test plugin (cpu core2duo e6550~2.8ghz):

FPM_INTEL VC8 : 115,674x
FPM_INTEL VC9 : 116.268x
FPM_64BIT VC8 : 76.676x
FPM_64BIT VC9 : 77.104x
clsid's build (rev 1882) FPM_INTEL ICL10 (SSE) : 124.217x
xxl's build (rev 1878) FPM_INTEL VC7 : 113.877x

i can't sure about this test accuracy but it seems FPM_64BIT ~%34 slower than FPM_INTEL.

cheers...
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: j7n on 2008-03-05 12:14:13
Hi, MoSPDude.

The last version (with ini-file) interrupts playback every time when I call the file info box. It walks the MPEG stream and updates average bitrate number. And when it does so, playback stops for half a second. Does not matter if I have opened infobox before on that given mp3.

Also, although I have selected "fast playtime calculation" and display "file average rate", it does not display bitrate from the Xing frame. Instead average bitrate of frames played so far is shown.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Emre on 2008-03-06 18:19:50
...interrupts playback every time when I call the file info box...


unchecking "Link to Winamp EQ" and "Apply ID3v2 EQU information" check boxes will fix this.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: j7n on 2008-03-06 20:22:10
I can confirm that disabling EQ solves the problem.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: BSOD2600 on 2008-03-09 06:18:53
1) I'm still getting occasional short pauses in the playback.

2) After copying/overwriting the existing in_mad* files in my Winamp plugin directory, I launched winamp 5.  Went to it's settings, to check things out.  Closed the properties.  Then played a song. While it was playing, I got the file info (alt+3).  Below is what I saw:
(http://home.comcast.net/~bsod2600/winamp5_inmad_02_prop.png)

3) Closed winamp, reopened. played a track, now I see the old config window:
(http://home.comcast.net/~bsod2600/winamp5_inmad_02_oldprop.png)

4) Closed winamp, again. Deleted in_mad_cfg.ini.  Reopen winamp.  Now I see the newer file properties
(http://home.comcast.net/~bsod2600/winamp5_inmad_02_newprop.png)

5) Another problem with the in_mad_cfg.ini deleted, the in_mad plugin config now disables a bunch of options. Nothing was disabled when I had the in_mad_cfg present. For example:
(http://home.comcast.net/~bsod2600/winamp5_inmad_02_pluginconfig_decoder.png)

6) Winamp should write a new in_mad_cfg file, if one wasn't present when it closes, IMO. Currently it does not.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: -sanb- on 2008-03-09 07:05:33
BSOD2600
Try to delete this section
Quote
HKEY_USERS\s-x-x-xx-...\Software\Winamp\MAD Plug-in
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: BSOD2600 on 2008-03-09 09:24:51
BSOD2600
Try to delete this section
Quote
HKEY_USERS\s-x-x-xx-...\Software\Winamp\MAD Plug-in


You mean to use the v2 in_mad plugin, right?

If these keys are no longer going to be used, the plugin should be smart enough NOT to use them at all anymore...
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: k.eight.a on 2008-03-09 15:58:55
BSOD2600 Try to delete this section
Quote
HKEY_USERS\s-x-x-xx-...\Software\Winamp\MAD Plug-in
You mean to use the v2 in_mad plugin, right?
I assume his idea is to delete this entry from the Windows registry. Start > Run > regedit < Then search for this string... ;)
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-03-09 23:20:05
Hi guys,

Sorry for the confusion of it all, I really need to make a bit of a readme.txt up or clarify the settings.

The registry settings still exist by default and are used if the config file doesn't exist - currently a config file isn't made - I plan to add this soon. The reason a lot of settings are disable in the other config tabs is because the option to use Winamp Global configuration is enabled in the General tab and these settings are coming from the Winamp Playback preferences. I also need to add a reminder that when the Unicode option is changed, Winamp needs to be restarted for it to take effect otherwise you get garbled messages and 'Cannot connect to media'. The option to enable the newer unified file properties is also on the General config tab.

I'll also look into the EQ stuttering problem, and I think I will stick with FPM_INTEL even though OPT_ACCURACY isn't used for MSVC.

Cheers guys for the feedback - I have some free time now and will get it sorted. 
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: BSOD2600 on 2008-03-10 01:38:19
The reason a lot of settings are disable in the other config tabs is because the option to use Winamp Global configuration is enabled in the General tab and these settings are coming from the Winamp Playback preferences.

Ahh, that bit of info would be very helpful to have documented along with the distribution of the in_mad.dll file.

Do you think it would make sense for the plugin to reflect the global winamp settings which are set, but still leaving it grayed out?  Would be easier instead of having to dig through winamps prefs to local all those various settings which the plugin has pulled together into a few tabs.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: _Raziel-BG on 2008-03-12 23:11:06
@_Raziel-BG - First make sure your using the latest plug-in currently 0.2.0.14. Are you using basic or advanced title formatting? I need to know the formatting string in either case. As a start, you could try changing the tag lookup order in the config to see if that changes the situation.

Sorry for the late response. Here's the info. Version 0.2.0.20. Basic title formating string is:
[%artist% - ]$if2(%title%,$filepart(%filename%)) (the default one)
Tried messing with the tag preference options and if ID3v1 is before (higher preference) ID3v2, info is displayed fine. However, if ID3v2 is before ID3v1, then tags are messed up. I can't recall if I had tried ID3v1 before ID3v2 in 0.2.0.2 but I do remember that I did SOME form of preference re-ordering and it didn't help.
Just to remind again: the problem with the formating occurs on some songs/albums, not all.

Added: Otachan's input plugin displays everything fine with ID3v2 -> APE -> ID3v1 preference.

Added again: enabling Unicode suppord freezes/crashes Winamp on begin of playback.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: John Clement on 2008-03-25 18:53:38
Are there any plans to add the unsynced Lyrics tag?  or the cover Artwork tag?  At present Winamp supports the artwork, but none of the existing Winamp plugins support the unsynced Lyrics tag.  Or if they do, I have not been able to coerce them to work.  Your tag plugin certainly finds tags that standard Winamp misses.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Yashu on 2008-03-31 00:41:47
I am somewhat new here, but I was wondering, I have been following the development from the first in_mad mod and now this second version, and my question is, has anyone any link to where testing has been done on the noise shaping and dithering options?

I don't want to ask "what sounds better", I am curious if any serious ABX testing has been done on this plugin, in particular, not against other decoders, but the various options of just this one, perhaps with mpg123, or some other (well documented) one as a control.

I am not really equipped to do the tests myself, but it would be interesting to see the results of noise shaping vs. non, and also the three dither options, and then combinations of them both. I suppose the results could be put on a spreadsheet, and if enough people participated, it would be a really cool experiment.

I don't know if this has been addressed anywhere else, and I am not trying to find out what is "better" per se, but it would be an interesting experiment and I have been wanting to know ever since those options became part of the plugin. Everywhere I have gone to look for information, mostly people are only talking about tagging or replaygain, basically only one mention of some testing done with someone's family, but nothing more than that.

EDIT: Application to mp3 would be interesting, especially if several bitrates are tested. It would be interesting to see if dithering would have an audible effect, and if so, would it be less or more depending on the encoded bitrate. If I were to venture a guess, I would say the noise shaping would not be noticed either way (doesn't LAME employ an LP filter? If the noise shaping algorithm uses freq. above the LP filter, would that make things worse?), but if the dither *was* audible, the preference would be towards triangular weighting. That is my guess. I have toyed with the settings with V0 and 320k LAME, and I can tell you my preference, but that would be against the TOS?

Has this been discussed somewhere else, and if not, what test tones/sounds do you guys use to test?
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Sylph on 2008-04-23 14:16:25
When can we expect an update? 
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Slipstreem on 2008-04-26 03:15:41
I'm currently running version 0.15.1b published on the 25th of April (2008) as grabbed from the Winamp website (http://www.winamp.com/plugins/details/221520) only twenty minutes ago.

Keep up the fine work, MoSPDude.

Cheers, Slipstreem. 
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: BSOD2600 on 2008-04-26 19:11:41
I'm currently running version 0.15.1b published on the 25th of April (2008) as grabbed from the Winamp website (http://www.winamp.com/plugins/details/221520) only twenty minutes ago.

Umm that would be his old/first version. Not the current v2 one this thread is about...  I too am using it since v2 is too buggy.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: SkripT2 on 2008-05-06 23:18:32
Thanks a lot @MoSPDude for this new version. I have an Auzen X-Fi Prelude (Creative X-Fi Pro). I use Mad V2 input plugin with the resolution set to 32 bits and Direct Sound v2.2.6 SSRC output plugin (I like the fadings) with Hardware Acceleration allowed and resampling to 44100 with 24 bits per sample enabled and dithering with no noise shaping and noise distribution in triangular. Could please anyone tell me if that's the best configuration? Should I use the resampling option in the Direct Sound plugin with 24 bits for get a better sound even if Mad is working in 32 bits? Thanks.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: BSOD2600 on 2008-07-21 09:09:55
This yet another dead mp3 project?
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Sylph on 2008-07-21 10:20:35
I wonder, too...
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: MoSPDude on 2008-07-24 20:22:51
Hi guys,

I think it's safe to say that for the moment it is a dead project. I've not had any time to make progress on hunting down bugs and issues - been too involved with finishing one large project and starting a new job. If anyone else wishes to have a go at improving the code, then I'm happy to help them understand my messy code.

Other than that, I'm sorry guys! I may pick it up again but it'd have to be once I'm settled back in to a new personal routine 

Cheers for your support and bug finding - this is a great forum 
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: lvqcl on 2008-07-24 22:48:46
MoSPDude, in_mad adds tags in ISO 8859 encoding. Non-english characters change to dots. Can this plugin create tags as UTF 16?

added: I downloaded code & replaced 'field->number.value = ID3_FIELD_TEXTENCODING_ISO_8859_1;' by 'field->number.value = ID3_FIELD_TEXTENCODING_UTF_16;' in function id3_field_init(). Don't know is it good, but works.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Mits2008 on 2008-09-15 15:42:01
I have been lurking in this forum for years, and I just registered to say a BIG THANKS to MoSPDude for his hard work. I have been using MAD since its inception and I just discovered this new version.

All I can from the first hours of listening is WOW.

My modest 30 year experience in mid-fi tells me that the decoded sound I am experiencing (via SPDIF + external receiver) is crisp, transparent and has definitely an improved sound stage imaging. I am not in the position of making AB tests, but my intuition tells me that this plugin is a real breakthrough and definitely needs  both serious testing and ironing of the (not so important for me) details re tagging, streaming etc.

This is NOT another dead mp3 project. As somebody mentioned above, the automatic clipping attenuation alone is worth 50% of mad's value. Since it is virtually impossible for us to replace all those old mp3s with new ones (taking advantage of all the latest Lame features), mad is necessary for the optimal mp3 experience.

Thanks again, and I really pray for the emergence of new developers to pursue this noble cause!
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Sylph on 2008-10-01 14:44:31
This is NOT another dead mp3 project.


Yes it is. No one is developing this anymore.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: shakey_snake on 2008-10-01 16:04:51
My modest 30 year experience in mid-fi tells me that the decoded sound I am experiencing (via SPDIF + external receiver) is crisp, transparent and has definitely an improved sound stage imaging. I am not in the position of making AB tests, but my intuition tells me...

Wrong to LOL?
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: deinlandel on 2008-10-03 07:18:19
Version from Winamp site has serious issues with Russian ID-3 tag support. Some titles appear as empty or as in "wrong encoding"... Was this problem fixed in this release?
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: Karolinger on 2008-10-04 01:25:19
Thanks again, and I really pray for the emergence of new developers to pursue this noble cause!


Indeed, friend, I also hope the same.
Title: in_mad v2 Winamp MAD MP3 input plugin
Post by: aighard on 2015-06-13 13:44:56
Anybody still here?
First of all thanx for the plugin. Now here comes my problem:
i use mad plugin 0.1501 beta and also the classic spectrum analyzer, it happens that the spectrum always starts 2 seconds before the song and it's really annoying, it doesn't make sense using it anymore but i really like it and i've already tried all kind of combinations with no result. The spectrum works fine with flac files or another mp3 plugin so i'm pretty sure the problem is mad plugin. any idea?