IPB

Welcome Guest ( Log In | Register )

4 Pages V   1 2 3 > »   
Reply to this topicStart new topic
in_mad v2 Winamp MAD MP3 input plugin
MoSPDude
post Jan 12 2008, 12:44
Post #1





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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.
Source code is now separate from http://www.zen23652.zen.co.uk/in_mad_2b_src.zip

This post has been edited by MoSPDude: Jan 12 2008, 12:44
Go to the top of the page
+Quote Post
j7n
post Jan 12 2008, 22:47
Post #2





Group: Members
Posts: 813
Joined: 26-April 04
Member No.: 13720



This version is great, most importantly special characters are now displayed properly. Thank you.
Go to the top of the page
+Quote Post
MoSPDude
post Jan 13 2008, 00:00
Post #3





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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
[%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.
Go to the top of the page
+Quote Post
Kjn_Wds
post Jan 14 2008, 16:02
Post #4





Group: Members
Posts: 16
Joined: 11-June 07
Member No.: 44246



Great work, as usual : ) !
Go to the top of the page
+Quote Post
Maggi
post Jan 14 2008, 16:21
Post #5





Group: Members
Posts: 122
Joined: 31-May 07
Member No.: 43892



QUOTE (MoSPDude @ Jan 13 2008, 01:00) *
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
[%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 ... smile.gif


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
%?1<%1 - >%?0<%0. >%?2<%2|%8>%?3< - %3>%?4< - %4>


resulting in playlist entries like this:

    01. Deep Purple - 01/10. Money Talks - Rapture Of The Deep - 2005
    02. Yello - 11/14. Unreal - The Eye - 2003


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
$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
$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:
    01. Deep PurpleDeep Purple - 01/1001/10. Money TalksRapture Of The Deep - Rapture Of The Deep2005 - 2005
    02. YelloYello - 11/1411/14. UnrealThe Eye - The Eye2003 - 2003


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
Go to the top of the page
+Quote Post
MoSPDude
post Jan 14 2008, 18:08
Post #6





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



OK, that one bug already! tongue.gif I'm uploading a fixed version now.
May I recommend using,
CODE
[%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.

This post has been edited by MoSPDude: Jan 15 2008, 00:49
Go to the top of the page
+Quote Post
j7n
post Jan 14 2008, 18:10
Post #7





Group: Members
Posts: 813
Joined: 26-April 04
Member No.: 13720



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.

This post has been edited by j7n: Jan 14 2008, 18:13
Go to the top of the page
+Quote Post
MoSPDude
post Jan 14 2008, 18:21
Post #8





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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.
Go to the top of the page
+Quote Post
MoSPDude
post Jan 15 2008, 00:46
Post #9





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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.

This post has been edited by MoSPDude: Jan 15 2008, 00:46
Go to the top of the page
+Quote Post
Maggi
post Jan 15 2008, 10:41
Post #10





Group: Members
Posts: 122
Joined: 31-May 07
Member No.: 43892



QUOTE (MoSPDude @ Jan 14 2008, 19:08) *
OK, that one bug already! tongue.gif I'm uploading a fixed version now.
May I recommend using,
CODE
[%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 ... smile.gif

Kudos to you and keep up the good work !
Maggi
Go to the top of the page
+Quote Post
BtEO
post Jan 16 2008, 05:07
Post #11





Group: Members
Posts: 1
Joined: 16-January 08
Member No.: 50532



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 (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. tongue.gif
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.

This post has been edited by BtEO: Jan 16 2008, 05:40
Go to the top of the page
+Quote Post
MoSPDude
post Jan 16 2008, 08:55
Post #12





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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. smile.gif

This post has been edited by MoSPDude: Jan 16 2008, 15:05
Go to the top of the page
+Quote Post
Domin
post Jan 16 2008, 22:13
Post #13





Group: Members
Posts: 14
Joined: 19-September 06
Member No.: 35366



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 biggrin.gif
Go to the top of the page
+Quote Post
MoSPDude
post Jan 17 2008, 00:46
Post #14





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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.
Go to the top of the page
+Quote Post
kerimcem
post Jan 18 2008, 13:12
Post #15





Group: Members
Posts: 6
Joined: 7-September 07
Member No.: 46862



turkish character I,İ,Ş,Ğ ID3V2 not display plase !! thankyou...
Go to the top of the page
+Quote Post
MoSPDude
post Jan 22 2008, 20:08
Post #16





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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.
Go to the top of the page
+Quote Post
j7n
post Jan 22 2008, 21:29
Post #17





Group: Members
Posts: 813
Joined: 26-April 04
Member No.: 13720



The latest in_mad now fails to load under Win98. I tried to use WA 2.95 and WA 5.35.
Go to the top of the page
+Quote Post
MoSPDude
post Jan 22 2008, 21:51
Post #18





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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.

This post has been edited by MoSPDude: Jan 22 2008, 21:55
Go to the top of the page
+Quote Post
[JAZ]
post Jan 22 2008, 22:06
Post #19





Group: Members
Posts: 1783
Joined: 24-June 02
From: Catalunya(Spain)
Member No.: 2383



QUOTE (MoSPDude @ Jan 22 2008, 22:51) *
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.

This post has been edited by [JAZ]: Jan 22 2008, 22:10
Go to the top of the page
+Quote Post
robert
post Jan 22 2008, 22:08
Post #20


LAME developer


Group: Developer
Posts: 788
Joined: 22-September 01
Member No.: 5



QUOTE (j7n @ Jan 22 2008, 21:29) *
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.
Go to the top of the page
+Quote Post
zipr
post Jan 25 2008, 16:54
Post #21





Group: Members
Posts: 180
Joined: 13-September 05
From: Baltimore
Member No.: 24445



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?
Go to the top of the page
+Quote Post
MoSPDude
post Jan 25 2008, 18:11
Post #22





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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) 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. 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.

This post has been edited by MoSPDude: Jan 25 2008, 18:13
Go to the top of the page
+Quote Post
benski
post Jan 25 2008, 18:40
Post #23


Winamp Developer


Group: Developer
Posts: 670
Joined: 17-July 05
From: Brooklyn, NY
Member No.: 23375



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.

QUOTE (MoSPDude @ Jan 25 2008, 12:11) *
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 smile.gif I'm not purposefully trying to eliminate its usefulness smile.gif
Go to the top of the page
+Quote Post
MoSPDude
post Jan 26 2008, 11:40
Post #24





Group: Members
Posts: 175
Joined: 24-July 06
From: Sheffield, UK
Member No.: 33249



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.
Go to the top of the page
+Quote Post
lvqcl
post Jan 27 2008, 14:50
Post #25





Group: Developer
Posts: 3382
Joined: 2-December 07
Member No.: 49183



QUOTE (benski @ Jan 25 2008, 20:40) *
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.
Go to the top of the page
+Quote Post

4 Pages V   1 2 3 > » 
Reply to this topicStart new topic
1 User(s) are reading this topic (1 Guests and 0 Anonymous Users)
0 Members:

 



RSS Lo-Fi Version Time is now: 18th September 2014 - 09:27