Go Back   Winamp & SHOUTcast Forums > Winamp > Winamp Wishlist

Reply
Thread Tools Search this Thread Display Modes
Old 22nd October 2014, 23:17   #401
PPeti66x
Junior Member
 
Join Date: Jul 2014
Posts: 15
I know. And opus support is resolved for these old systems (Xmplay for Windows, Mpxplay for DOS). But sometimes for backward compatibility is enough to correctly select the target OS or use the older compiler (without changing the source code). If the original code was not written to be compatible with these old systems, then it is impossible to made compatible for reasonable amount of time. Without source code i can not check this.
PPeti66x is offline   Reply With Quote
Old 23rd October 2014, 03:20   #402
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
The best that I could do would be to test an old Winamp 2.x client on a Windows XP machine since my 98se machine died a while back. If it weren't for that death I'd still be developing on Win98se with the latest version of Winamp (if it were possible, which I doubt.)

However, I know I have a Winamp 2.x installer somewhere and wouldn't take much to poke it with the proverbial stick a little bit on an XP machine. However, even if it was a simple matter, there's no guarantee it would work on Win98se OS since I don't have Win98se anymore.

I don't think there's a compatibility issue with the precompiled Opus libraries (I could be wrong on that though) considering the different architectures it is purported to support and I would be more inclined to believe it is the plugin itself that is the issue on Winamp 2.x clients.
thinktink is offline   Reply With Quote
Old 23rd October 2014, 04:31   #403
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
So I just poked it with a stick.

Wow, what a pain in the butt.

I found that Winamp 2.x won't recognize the version of the plugin struct with the Unicode support indicator. Even worse, the main window doesn't exist to be able to check the version code during the call to winampGetInModule2(...) or Init(...) so even if Winamp 2.x did recognize it the plugin still wouldn't work right and would be impossible (from a programatic compatibility with my current workflow) to check the version of Winamp from the API to know when to use certain function types.

It looks like it would require a complete rewrite and recode of a number of major internals to make it 2.x compatible. Unless I can think of something outside the normal API to make things demonstrably easier I don't think I'll be coding for 2.x compatibility.
thinktink is offline   Reply With Quote
Old 23rd October 2014, 16:55   #404
PPeti66x
Junior Member
 
Join Date: Jul 2014
Posts: 15
It's dead end. Not worth for a time. But this fact is now known.
Many thanks for this great plugin.
PPeti66x is offline   Reply With Quote
Old 23rd October 2014, 17:06   #405
DrO
 
Join Date: Sep 2003
Posts: 27,873
i think this just shows why it's generally better to use a newer Winamp client as it makes certain things for plug-ins a lot better than what 2.x was able to do.

as i know why thinktink's plug-in needs to have such information at the stage that it does and is why i'm also thinking of changing things in 6.x so the Winamp version is provided directly to the plug-in instead of needing to do a SendMessage(WM_WA_IPC, IPC_GETVERSION) - as that saves some of the things plug-ins need to do on loading and the less messages sent, the better (is a micro-optimisation which makes things for the plug-in easier).
DrO is offline   Reply With Quote
Old 27th October 2014, 18:17   #406
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
After finally figuring out what the hell a "Q8" value is (I was totally oblivious to the Fixed Point number format) I've got the op_set_gain_offset(...) finally working as one would expect. Basically, I've got a working debug version of the plugin applying Winamp's RG tags to output. Now I just need to find the API way to actively detect Winamp's RG settings, which I'm having difficulty doing at the moment.
thinktink is offline   Reply With Quote
Old 27th October 2014, 18:24   #407
DrO
 
Join Date: Sep 2003
Posts: 27,873
nudge me about this next week (should be a in position to check that side of things for you then).
DrO is offline   Reply With Quote
Old 27th October 2014, 18:28   #408
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Quote:
Originally Posted by DrO View Post
nudge me about this next week (should be a in position to check that side of things for you then).
Thanks.
thinktink is offline   Reply With Quote
Old 29th October 2014, 05:09   #409
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Quote:
Originally Posted by j7n View Post
The plugin doesn't seem to support ReplayGain as written by foobar2000 (global gain – album, R128_TRACK_GAIN metadata value – track, different scale). The album gain is correctly applied, if present, but plugin reports that the gain values aren't present, therefore Winamp applies the "adjustment for files without Replay Gain" (usually negative) in addition to it, leading to unusually low volume relative to music in other formats.

...
It appears as foobar2000 is fubar on handling gain adjustments and procedures on this one. For the time being, it might be a good idea to totally not rely on foobar2000 as a standard for behavior on Opus media. In fact, if you're looking for actual consistency of playback loudness, I'd stay away from foobar2000 concerning Opus files for a while. Very far away, at least for 3 years. Playing around with foobar2000 shows that its storing the R128 gain adjustment in the file header's OutputGain field, which overides the original encoder's arbitrary post-encoding level adjustment which has nothing to do with replay gain adjustments. The libopus library decoder automatically (by default) applies the header's output gain adjustment internally (not the player using the decoder) and if you think about it, foobar's behavior is very incorrect. Neither R128_* nor REPLAYGAIN_* should ever be put into the file's header gain adjustment field. Not ever. Well, if you're worried about or expecting cross-player interoperability/consistency. Just don't be surprised if you find everything whacked out when you transfer a foobar2000 R128 adjusted Opus file to another platform or player that's programmed to the intended Opus file specs. Yikes...

They're long reads but you kinda have to read most, if not all of it, to understand why.
http://comments.gmane.org/gmane.ietf.codec/19
http://permalink.gmane.org/gmane.ietf.codec/26



Quote:
Originally Posted by DrO View Post
er, as Winamp doesn't support R128, it's probably better that it doesn't get told the values to use as you're then applying a value which is not correct for the replaygain option that Winamp uses. but that's just my thought on thnigs.
After doing a bit more research I believe your thought is correct.
thinktink is offline   Reply With Quote
Old 30th October 2014, 23:19   #410
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Quote:
Originally Posted by DrO View Post
nudge me about this next week (should be a in position to check that side of things for you then).
I found this thread:
http://forums.winamp.com/showthread.php?t=275371

Implementing it now, or at least most of it. ReplayGain is all done, but I want to see if I can also get in the Force Mono, 24bit (not likely), and Allow Surround parameters as well before pushing out.

If yours is easier though then I will incorporate it afterwards.
thinktink is offline   Reply With Quote
Old 31st October 2014, 04:19   #411
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
New Version

Version 1.6.32.131 available.
  • Added full support for Winamp's native ReplayGain functions (foobar2000 failzorz lulz).
  • Disabled R128_* processing to ensure full compatibility with Winamp's native ReplayGain support.
  • Integrated Winamp's ReplayGain configuration control.
  • Integrated Winamp's dither configuration control.
  • Integrated Winamp's playback thread priority configuration control.
  • Added file's average bitrate to the format information in the UFIP editor.
  • Added file's output gain header to the format information in the UFIP editor.
  • Added ability to change the file's output gain header information ("Gain" button on the "Advanced" tab, please don't mess with it unless you are the person that encoded the file.)
  • Added ability (from the configuration window) to disable the output gain adjustment on the decoder (playback) and the transcoder functions. It's use is not recommended, it's for advanced users only.

Download

[EDIT/]
Ack! About half the time I forget something.

The installer includes libopusfile 0.6 as before but replaces libopus with version v1.1-138-g8dc91de that I built with MSVC locally that incorporates a number of fixes, adjustments, and functionality additions, one of which is a bug for the encoder. When the new release of the libopus(file) get's pushed you can replace the old libraries and the changes will hold.
thinktink is offline   Reply With Quote
Old 4th November 2014, 17:47   #412
DrO
 
Join Date: Sep 2003
Posts: 27,873
Quote:
Originally Posted by thinktink View Post
I found this thread:
http://forums.winamp.com/showthread.php?t=275371

Implementing it now, or at least most of it. ReplayGain is all done, but I want to see if I can also get in the Force Mono, 24bit (not likely), and Allow Surround parameters as well before pushing out.

If yours is easier though then I will incorporate it afterwards.
it's the same thing so that saves me some time, just couldn't remember if it had already been mentioned or not.

I've updated the post to provide all of the other options which are present as of the current 5.666 (i doubt there'll be any changes to such things for 6.x but you never know).
DrO is offline   Reply With Quote
Old 5th November 2014, 02:28   #413
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Quote:
Originally Posted by DrO View Post
it's the same thing so that saves me some time, just couldn't remember if it had already been mentioned or not.

I've updated the post to provide all of the other options which are present as of the current 5.666 (i doubt there'll be any changes to such things for 6.x but you never know).
OmNomNom thanks!

However, it looks like the new notes need adjustment as some of the config items don't work unless you ::GetUnsigned() instead of ::GetInt(). Trying to GetInt() doesn't work on certain ones. Had to investigate those by trial-and-error under the debugger.

"bits" == GetUnsigned();
"replaygain_source" == GetUnsigned();
"replaygain_mode" == GetUnsigned();

I also noticed ::GetType() didn't work at all although I suspect because the global option types will never change and therefore would be hardcoded to a type with prexisting type knowledge for each one.

Anyways, good to know I don't have to recode to the correct API method to get the global config stuff.
thinktink is offline   Reply With Quote
Old 5th November 2014, 02:36   #414
DrO
 
Join Date: Sep 2003
Posts: 27,873
post updated.
DrO is offline   Reply With Quote
Old 13th November 2014, 05:26   #415
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
lol, this is what happens when you get bored thinking; or you get thinking bored.

Anyways, attached 48 hours of extremely high-fidelity silence encoded to Opus in a zip file.

The neat thing is, the file itself is 8,663 KB but compressed to zip (with 7z) it's only 1.388 KB.
Attached Files
File Type: zip 48 hours of silence.zip (1.36 MB, 208 views)
thinktink is offline   Reply With Quote
Old 28th April 2015, 05:59   #416
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Finally, the latest version of the Opus plugin now has more download hits than the previous...
Quote:
...
BogProgOpus1_5_30_112Install.zip=306
BogProgOpus1_6_32_131Install.zip=396
...

Hooray!
thinktink is offline   Reply With Quote
Old 24th May 2015, 11:32   #417
foxyshadis
Member
 
Join Date: May 2002
Location: The deserts of California
Posts: 60
Send a message via AIM to foxyshadis Send a message via Yahoo to foxyshadis
thinktink, any mirror of your plugins? Your whole site has been down for a while, and this opus plugin is pretty awesome.
foxyshadis is offline   Reply With Quote
Old 24th May 2015, 14:18   #418
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
No, there are no mirrors.

However, the site should be back up in about 5 minutes.
thinktink is offline   Reply With Quote
Old 24th May 2015, 22:16   #419
foxyshadis
Member
 
Join Date: May 2002
Location: The deserts of California
Posts: 60
Send a message via AIM to foxyshadis Send a message via Yahoo to foxyshadis
Thank you! It works quite well.
foxyshadis is offline   Reply With Quote
Old 28th October 2015, 17:37   #420
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
There are days I wish I were a moderator so that I could help clean up all the spam...
thinktink is offline   Reply With Quote
Old 28th October 2015, 23:15   #421
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Version 1.6.33.132 available.
  • Fixed a C++ issue (pure virtual function call) that only appeared when another plugin (X-Fade) was installed.

Download
thinktink is offline   Reply With Quote
Old 28th October 2015, 23:19   #422
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Dear Lord, 800 downloads for the previous version! That's gotta be a spammer or something...
thinktink is offline   Reply With Quote
Old 10th November 2015, 01:50   #423
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
I've just completed the first hurdle to removing the VCL framework from the plugin, which is the hardest part [I think], replacing all the VCL Forms with standard windows resource dialogs.

Yuk, I've gone crosseyed.
thinktink is offline   Reply With Quote
Old 13th November 2015, 04:52   #424
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Yup, replacing all of the VCL Forms was definitely the hard part. I've got a new version compiled already in debug mode and running without any VCL dependencies.

During this process I've found some minor bugs:

Internationalized Resource Identifiers (IRI) processing was a bit mangled. It was bringing in the port number (if specified) for stream sources and if the last part of the host name (i.e. ".com") needed to be processed then the port number got included in the processor. Whoops. So far I don't think there are any top-level domains that require processing so I don't think anybody was effected by it.

I also found that some HTTP server implementations weren't accepting properly URL encoded tildes ("~") so I added it to the already very long list of characters to skip encoding.

Replacing the VCL's handler of TCP/IP sockets with my own custom handler seems to have stopped the temporary hangs when playing streams without libopusurl-0.dll available. Of course anybody who installs the plugin from the installer will probably never see the improvement unless they delete libopusurl-0.dll but that's not expected. However, I know at least one user who refuses to run the installer and manually extracts the DLLs and doesn't use libopusurl-0.dll so he might see an improvement.


v2.0 should be out pretty soon if everything tests out ok.
thinktink is offline   Reply With Quote
Old 13th November 2015, 04:54   #425
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
CRAP!!!!






I forgot about the encoder.






/sigh...
thinktink is offline   Reply With Quote
Old 14th November 2015, 19:33   #426
kzuse
Senior Member
 
kzuse's Avatar
 
Join Date: Oct 2005
Location: (D)
Posts: 480
Send a message via ICQ to kzuse Send a message via Skype™ to kzuse
Quote:
However, I know at least one user who refuses to run the installer and manually extracts the DLLs and doesn't use libopusurl-0.dll so he might see an improvement.
Are you by any chance talking about me?

Thanks in advance and thanks for all your effort. I'm looking forward to the new build to see what it brings. At this moment, I'm still at version 1.5.31.122 as it works very well without any additional helper DLLs apart from libgcc, libogg, libopus and libopusfile.

Thanks again & best regards!
kzuse is offline   Reply With Quote
Old 16th November 2015, 21:58   #427
Omega X
Forum King
 
Omega X's Avatar
 
Join Date: Feb 2003
Location: A Parallel Dimension
Posts: 2,252
Send a message via AIM to Omega X Send a message via Yahoo to Omega X
Quote:
Originally Posted by thinktink View Post
Dear Lord, 800 downloads for the previous version! That's gotta be a spammer or something...
Probably not. Opus is slowly gaining traction. Especially now that Android has support.
Omega X is offline   Reply With Quote
Old 17th November 2015, 05:05   #428
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Version 2.0 would be out by now if host-ed.net wasn't blocking the installer on a false-positive virus detection! I just checked on virus total and none of my plugins are showing up.

Stupid host.
thinktink is offline   Reply With Quote
Old 17th November 2015, 06:23   #429
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
I just tried to upload an older installer archive that was made a while back and it's now doing a false-positive on that one now where as it didn't before. It might be detecting on the NSIS installer package. I'm going to see if I can make a self-decrypting package to get around it.

This might take a while.
thinktink is offline   Reply With Quote
Old 19th November 2015, 00:54   #430
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Version 2.0 now available. This installer package includes updates for both the decoder and encoder.
  • Removed Borland VCL (Borland's RAD IDE Framework)
  • Fixed IRI parsing issues.
  • Improved internal handler for live streams (only applicable when libopusurl-0.dll is not present.)
  • Improved performance of [Advanced] tab in the UFIP by hiding METADATA_BLOCK_PICTURE resources.
  • Improved performance of the UFIP by caching header output gain changes and passing it to the tags writer instead of a separate update function that caused the file to be written twice on UFIP updates.
  • Fixed a tag writing error causing blank tags in file header (was a work-around for an earlier version of libopusfile, fixed permanently)
  • All tag values (including MBCS encoded UTF-8 tags) now displayed properly on all windows/dialogs.
  • Localization support added. Language files attached.
Attached Files
File Type: zip BogProgOpus2_0LanguageFiles.zip (4.0 KB, 105 views)
thinktink is offline   Reply With Quote
Old 21st November 2015, 02:04   #431
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Wow, not a lot of activity on this. Where'd everybody go?
thinktink is offline   Reply With Quote
Old 21st November 2015, 04:35   #432
MrSinatra
Forum King
 
MrSinatra's Avatar
 
Join Date: Dec 2004
Location: WKPS, State College
Posts: 5,381
Send a message via AIM to MrSinatra
i'm not an opus guy. would love an ALAC m4a encoder tho.

where are the opus net streams?

PENN STATE Radio or http://www.LION-Radio.org/
--
BUG #1 = Winamp skips short tracks
Wish #1 = Multiple Column Sorting
Wish #2 = Add TCMP/Compilation editing
MrSinatra is offline   Reply With Quote
Old 21st November 2015, 13:45   #433
kzuse
Senior Member
 
kzuse's Avatar
 
Join Date: Oct 2005
Location: (D)
Posts: 480
Send a message via ICQ to kzuse Send a message via Skype™ to kzuse
Will test probably on next weekend, don't have the time before.

And I can make a German language file if anybody is interested... or let's say... well... at least I myself am interested, so I will create one and then I'll give it to you so you may include it in future installers. It's not so many strings as I saw now (just had a quick glance in the resources files you attached).

I'll write when I found the time for anything of the above-mentioned.

Have a nice weekend!
kzuse is offline   Reply With Quote
Old 22nd November 2015, 04:35   #434
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Quote:
Originally Posted by MrSinatra View Post
...

where are the opus net streams?
There's a number of them on the Icecast directory. http://dir.xiph.org/by_format/Opus



Quote:
Originally Posted by kzuse View Post
...

And I can make a German language file if anybody is interested...
Looking forward to it.
thinktink is offline   Reply With Quote
Old 22nd November 2015, 17:47   #435
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
v2.0.1.2 Update available.
  • Fixed issue with changing tags from the UFIP with certain versions of Winamp.

Recommended update for all users.

Download
thinktink is offline   Reply With Quote
Old 23rd November 2015, 06:00   #436
zephalis
Junior Member
 
Join Date: Jul 2015
Posts: 4
Will you be working on the encoder? I remember using Winamp for mp3 encoding when there was no other decent encoders around and finding reliable opus encoders brings back memories of those days 8o). Keep up the great work! Long live the Llama!!
zephalis is offline   Reply With Quote
Old 23rd November 2015, 06:09   #437
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Quote:
Originally Posted by zephalis View Post
Will you be working on the encoder? I remember using Winamp for mp3 encoding when there was no other decent encoders around and finding reliable opus encoders brings back memories of those days 8o). Keep up the great work! Long live the Llama!!
whu? The Opus encoder is already done. It's in the installer package. Been in there for a while now.
thinktink is offline   Reply With Quote
Old 23rd November 2015, 06:19   #438
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Quote:
Originally Posted by zephalis View Post
Will you be working on the encoder? I remember using Winamp for mp3 encoding when there was no other decent encoders around and finding reliable opus encoders brings back memories of those days 8o). Keep up the great work! Long live the Llama!!
Quote:
Originally Posted by thinktink View Post
whu? The Opus encoder is already done. It's in the installer package. Been in there for a while now.
I've attached an example file.
Attached Files
File Type: zip Final Fantasy VII - Victory Fanfare Acapella.zip (858.5 KB, 65 views)
thinktink is offline   Reply With Quote
Old 23rd November 2015, 14:52   #439
sahartech
Banned
 
Join Date: Nov 2015
Posts: 14
Install the K-Lite codec pack, add OPUS to your Winamp in_dshow.dll configuration, you're done.



sahartech is offline   Reply With Quote
Old 23rd November 2015, 16:33   #440
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: On the streets of Kings County, CA.
Posts: 2,970
Send a message via Skype™ to thinktink
Quote:
Originally Posted by sahartech View Post
Install the K-Lite codec pack, add OPUS to your Winamp in_dshow.dll configuration, you're done.
Except for metadata handling, stream handling, encoding, tag updating and a slew of other things you can't do with the K-Lite codec pack.
Attached Thumbnails
Click image for larger version

Name:	Not_facebook_dislike_thumbs_down.png
Views:	656
Size:	45.7 KB
ID:	52087  
thinktink is offline   Reply With Quote
Reply
Go Back   Winamp & SHOUTcast Forums > Winamp > Winamp Wishlist

Tags
opus

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump