Skip to main content

Notice

Please note that most of the software linked on this forum is likely to be safe to use. If you are unsure, feel free to ask in the relevant topics, or send a private message to an administrator or moderator. To help curb the problems of false positives, or in the event that you do find actual malware, you can contribute through the article linked here.
Topic: Updated in_mad Winamp MAD MP3 input plugin (Read 300865 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

Updated in_mad Winamp MAD MP3 input plugin

Reply #325
Hi Ivan,

The MAD decoding library (libmad) 0.15.1b is the latest version, the library itself hasn't been updated since early 2004 (I think!). The ID3 tag library (libid3tag) is also at version 0.15.1b, however I had to patch and fix parts which can be found in the source with the plugin.

As far as I know, XM Play should if it takes Winamp input plugins work ok with this, but I've not tested it - so if you could try it and report if it works or not, that'll be great. I had been testing it with MediaMonkey and looking at problems with compatibility.

Cheers



im using MAD with XM Play for quite a long time.
I cant tell much because I didnt make any compares with Winamp.
Plugin can be configured like it should be with winamp.
When a song is played I can see ID3, APE tags and LAME tag (if the audio file is encoded with lame) through the plugin (view plugin file info), so it's obviously doing something. 
But what interests me is behavior of some applied options.
Im not sure that they are really functional.
For example, in "output" tab (in plugins config) option "Enable internal EQ".
Or "Link to Winamp EQ", I suppose that nothing will happen on XM Play because plugin cant detect XMs EQ.
Open Source is the only source!

Updated in_mad Winamp MAD MP3 input plugin

Reply #326
One other interest is using Winamp with aac+ plugins, so that I can listen to stations from sites such as http://www.tuner2.com

Winamp handles shoutcast streams horribly.

In Winamp's options, there is a place to set the 'default extension for unknown file types', the default for this is 'MP3'.  If you set this to 'OGG', when you try to play a typical shoutcast stream (http;//host:8000), in_vorbis will try to decode it, and fail.  Because shoutcasters don't set the stream extension, winamp has no idea what format the stream is in.  The workaround for this problem if you remove 'mp3' from in_mp3's extension list is to create a new fake default extension in its place for unknown/shoutcast streams.  I used "strm" for the defaut extension and added "strm" to in_mp3's extension list.  Then in_mp3 will decode all shoutcast streams.  If the stream has a mountpoint (http;//host:8000/stream.mp3) then the proper mp3 decoder (MAD in this case) will be used instead of in_mp3.  The problem here is that in_mad has problems with icecast2's metadata 

It's a mess
Vorbis-q0-lowpass99
lame3.93.1-q5-V9-k-nspsytune

Updated in_mad Winamp MAD MP3 input plugin

Reply #327
Could you please add option "Ignore ReplayGain info in LAME tag"?

Updated in_mad Winamp MAD MP3 input plugin

Reply #328
MoSPDude, you're a damn genius, I love your work.
It is indeed the best decoder of all (until now I used the old one though O.O)!!
You changed the way I listen to music, so thanks, really!

Waiting for new updates \ news.

Cheers ^^

Updated in_mad Winamp MAD MP3 input plugin

Reply #329
I can't take all credit, I only decided something had to be done with it being heavily out of date, and combined a lot of best bits from other sources with fixes. The main credit goes with the author of libmad and libid3tag. As for a "Ignore ReplayGain info in LAME tag" option, it'll be in the new plugin.

I'm currently working on the GUI section of the new plug-in, and in the interest of internationalisation I'm thinking of making the plugin read strings in UTF-8 format for the GUI from a "in_mad.lng" or "in_mad.ini" file for each language if its present. Is this a good idea? or is there a better way, rather than having to rebuild the plugin with growing resources in the DLL?

Other than that, the new C++ code is using some blocks from the old C (especially the playback) and decodes files and streams quite happily. New sections have be written to handle Unicode only from scratch and libid3tag seems ok with it at the moment. I'm hoping to have more time now to push things along.

Opinions and comments are always welcome 

Updated in_mad Winamp MAD MP3 input plugin

Reply #330
I'm having problems with Last.fm scrobbling system, is the actual MAD plugin fully compatible with it and it's my problem or it's not (and maybe you can manage to add compatibility with it)?

Greetz ^^

Updated in_mad Winamp MAD MP3 input plugin

Reply #331
The plug-in should be compatible, though I've not tested if Unicode characters work with it. I use last.fm now regularly and seem to have no problem with scrobbling. There was a problem with it a while ago, but that was solved. What kind of problem is occuring, and what winamp and last.fm version are you using?

Updated in_mad Winamp MAD MP3 input plugin

Reply #332
Solved, I was using the last vv of both Last.FM and MAD, but there was something very wrong with my hardware, actually, guess my motherboard is ** up.

Don't know exactly how it managed to compromise scrobbling, but, e.g. I notice d that "something" was checking  the Floppy each time a song was played.
And somehow this + other random things [read: the ghost in the machine] prevented from scrobbling -.-

I know that with this post your consideration of me may be nuked, but I swear I have no way for explaining how my PC escapes from my control, lol

Updated in_mad Winamp MAD MP3 input plugin

Reply #333
MoSPDude wouldt there be any way of fixing that annoying OK promth that comes up when winamp drops connection to a stream, so i dont have to click ok.

I just want it to skip to next number without me having to click ok, since there is really no need for me to click ok to it :-)

The OK box just says the following:

Error Reading Data
An unknown error occurred.

and then there is an clickbox with OK in it thats all

Great work you are doing on this plugin, keep it up ;-)

Updated in_mad Winamp MAD MP3 input plugin

Reply #334
is there a way to synchronize bitrate display with current position in file? on my system bitrate display is delayed by the length of output buffer (i'm using dsound output plugin).

for example if you set buffer length to 20 seconds (max) then winamp will show bitrate of current position + 20 sec in file. it's very annoying to me.

Updated in_mad Winamp MAD MP3 input plugin

Reply #335
I'll remove that OK prompt completely, and leave a notice on the Statistics page of the stream info box with a reason for the stream error. As for the bitrate display at current output position I'll have a look into it.

I'm making a change to the advanced ID3v2 tag editor. Rather than have the fields for the frame appear in one Edit box, I'm hoping for it to open a dialog box with a list of the fields and one Edit box for changes to be made per field. I'm also testing having multiple file info boxes open at once, and allowing Winamp Playlist Editor to continue when one is open.

Its getting near to being complete, its just time consuming 'wiring' up these bits of code to do individual things that the old plug-in code did.

Thanks for your interest still. 

Updated in_mad Winamp MAD MP3 input plugin

Reply #336
I'll remove that OK prompt completely, and leave a notice on the Statistics page of the stream info box with a reason for the stream error



Your the best 

Updated in_mad Winamp MAD MP3 input plugin

Reply #337
I've just recently stumbled on this plugin, so far I really like it.

I have tried to look through this entire post and I don't see any reference to someone requesting the ReplayGain options below.

I use Rockbox on my IAudio X5L mp3 player.  Rockbox has the awesome option below for applying ReplayGain settings:

Quote
Track Gain if Shuffling.
    Maintains a constant volume between tracks if Shuffle is set to Yes. Reverts to album mode if Shuffle is set to No.
Source -> Rockbox Manual (see Section 7.1 Playback -> ReplayGain.)

Is that a possible addition to the in_mad plugin?  I don't think it is possible with the Winamp ReplayGain plugin either.  I've looked in foobar2000 as well, couldn't figure it out there either.

I've been using Mp3Gain for years to manage my ReplayGain values, but I would really like to fully switch over to LAME ReplayGain tags and undo/then remove the Mp3Gain APE tags from my files. 

Any thoughts?

Updated in_mad Winamp MAD MP3 input plugin

Reply #338
I've been using Mp3Gain for years to manage my ReplayGain values, but I would really like to fully switch over to LAME ReplayGain tags and undo/then remove the Mp3Gain APE tags from my files.
IIRC, the Lame header does not provide for album gain.

Updated in_mad Winamp MAD MP3 input plugin

Reply #339
I've been using Mp3Gain for years to manage my ReplayGain values, but I would really like to fully switch over to LAME ReplayGain tags and undo/then remove the Mp3Gain APE tags from my files.
IIRC, the Lame header does not provide for album gain.

True. Adding ReplayGain values to ID3v2 tags is a much better choice using foobar's scanner. They can hold both track and album gain infos and are much more widely supported than LAME's internal solution. Besides, this course of action wouldn't implicitly require undoing the MP3Gain modifications, given the fact that album gain had been applied to the files before. If all of them were equally loud, due to having applied track gain to the data, then scanning the files without undoing the changes first would be pointless, of course.

Updated in_mad Winamp MAD MP3 input plugin

Reply #340
IIRC, the Lame header does not provide for album gain.


Maybe I'm just confused about the "other" ReplayGain implementations.  I know that Mp3Gain writes APE tags to the mp3's.  I thought Foobar/Winamp used the LAME ID3v2 tags to store the ReplayGain analysis info.

When I view the tag details via in_mad of a Foobar/Winamp processed file the ReplayGain info shows up in the LAME ID3v2 Tab under the fields below:
Type: TXXX
1: ISO 8859
2: replaygain_album_gain / replaygain_album_peek / mp3gain_undo

Viewing the same files in Mp3Gain shows nothing, as expected.


Either way, I would still like to see if MoSPDude can comment on whether or not "Track Gain if Shuffling" option is possible.

Updated in_mad Winamp MAD MP3 input plugin

Reply #341
I thought Foobar/Winamp used the LAME ID3v2 tags to store the ReplayGain analysis info.
The Lame header is a different animal from ID3v2 tags.


Updated in_mad Winamp MAD MP3 input plugin

Reply #343
It should be possible to add an option so that Track ReplayGain is applied when shuffle is on, and Album ReplayGain when shuffle is off. I think I'll put it in the drop down list next to the enable checkbox. I'm also adding a "Ignore ReplayGain info in LAME tag" option from a previous request by nemoW.

I'm sidetracking myself from getting tag writing running, and looking into improving the ID3v2.3 tag support by playing with the Winamp 5.3 global configuration. I think I might omit the graphical EQU2 editor and work on improving it as well. Unicode is both a blessing and a curse  .

Updated in_mad Winamp MAD MP3 input plugin

Reply #344
I'm also adding a "Ignore ReplayGain info in LAME tag" option from a previous request by nemoW.
I'd avoid the term LAME tag.  It's more properly described as a header.

This might help stem future misconceptions.

Updated in_mad Winamp MAD MP3 input plugin

Reply #345
awesome news, glad to hear your considering the option.

Updated in_mad Winamp MAD MP3 input plugin

Reply #346
I'm sidetracking myself from getting tag writing running, and looking into improving the ID3v2.3 tag support by playing with the Winamp 5.3 global configuration.

While you're at it, you could also have a look at a possible bug in the ID3v2.3 handling of the "Year" tag. TYER is completely ignored by Winamp 5.35's Advanced Title Formatting. I just tested this line...
Quote
[%artist% - ]['['%year%']'] [%album% - ][$num(%tracknumber%,1) - ]$if2(%title%,$filepart(%filename%))

... in the settings, which should look like this:
Quote
Amon Amarth - [2006] With Oden on Our Side - 1 - Cry of the Black Birds

I noticed that the [2006] is only displayed if a ID3v1 "Year" or APEv2 "Date" tag exists. With nothing but ID3v2.3 tags found in a file, Winamp leaves an empty space instead.

Besides, some more extensive research revealed that the corresponding "Recording time" TDRC information in ID3v2.4 works well, this issue obviously only relates to ID3v2.3's TYER type.

Update: Adding TDRC to ID3v2.3 works too. Problem is, any application I use writes TYER tags instead. The whole lot of different ID3 standards is a serious mess.

Updated in_mad Winamp MAD MP3 input plugin

Reply #347
Yes, there are some issues with TYER frame handiling.
I've tagged a file with mp3tag 2.39 and built-in WinAmp 5.35 tag editor using UTF-16 ID3v2.3, writing only "Year" info.
In both cases, mad plugin showed 2 frames in that file: ZOBS (obsolete frame) with values TYER and the actual year a wrote in the tag and TDRC frame with the ISO encoding and year I entered.

BTW, TDRC is not defined in ID3v2.3. So it looks like a bug.

EDIT: Ah, it seems that everything is fine. There is one option in the plugin's Title/Tags tab that I've missed! "Prevent ID3v2.3 to v2.4 conversion" prevents libid3tag from upgrading v2.3 to v2.4. When checked, the plugin shows only TYER tag.
If age or weaknes doe prohibyte bloudletting you must use boxing

Updated in_mad Winamp MAD MP3 input plugin

Reply #348
In both cases, mad plugin showed 2 frames in that file: ZOBS (obsolete frame) with values TYER and the actual year a wrote in the tag and TDRC frame with the ISO encoding and year I entered.

This happens with ID3v2.3 tags, when "Enable ID3v2.3 tag writing" and "Prevent ID3v2.3 to v2.4 conversion" are unckecked. Checking them causes the TYER frame to be displayed correctly inside the advanced ID3v2 editor, but Winamp still fails at reading it.

Updated in_mad Winamp MAD MP3 input plugin

Reply #349
I'm not sure, but maybe Advanced Title Formating works only with built-in MPEG decoder?

Have you tried to use the title formating in the mad plugin? Although it has only if-then-else.



EDIT: Yes, I've just reproduced all the issues you mentioned. There's something wrong with v2.3 tag handling...
If age or weaknes doe prohibyte bloudletting you must use boxing