Go Back   Winamp & SHOUTcast Forums > Winamp > Winamp Wishlist

Reply
Thread Tools Search this Thread Display Modes
Old 17th August 2012, 04:08   #1
roytam1
Member
 
Join Date: Aug 2003
Posts: 81
Opus support? {Implemented with a 3rd party plug-in by thinktink)

foobar2000 1.1.4 supports Opus decoding. How about Winamp?
http://www.opus-codec.org/
roytam1 is offline   Reply With Quote
Old 18th August 2012, 16:33   #2
amano
Major Dude
 
amano's Avatar
 
Join Date: Apr 2003
Location: where the llamas come from!
Posts: 951
Opus will be the next big thing!

It is accapted as a standard now.

I hope that support is already in the works...

eeeee eeeeeee eeeee eeeee eeeee
8 8 8 8 8 8 8 8 8 8 88
8eee8 8e 8 8 8eee8 8e 8 8 8
88 8 88 8 8 88 8 88 8 8 8
88 8 88 8 8 88 8 88 8 8eee8
amano is offline   Reply With Quote
Old 18th August 2012, 16:44   #3
DrO
Winamp & SHOUTcast Team
 
DrO's Avatar
 
Join Date: Sep 2003
Posts: 26,746
there's nothing stopping someone creating a plug-in to allow it to be supported... (as i'm not aware of any impetus to do this officially but i will heavily note that i could be wrong on what is or isn't planned). and the impression i get is this is trying to take over from Ogg Vorbis for the streaming side of things (not sure on where it's positioned for local files) which we know is used but pails into insignificance against the main streaming formats.

-daz
DrO is offline   Reply With Quote
Old 28th August 2012, 22:30   #4
Kaminari
Junior Member
 
Kaminari's Avatar
 
Join Date: Mar 2003
Location: Paris, France
Posts: 48
Install the K-Lite codec pack, add OPUS to your Winamp in_dshow.dll configuration, you're done.

I expect Ogg Opus to gain much more momentum for online usage than Ogg Vorbis ever did.
Kaminari is offline   Reply With Quote
Old 11th September 2012, 22:49   #5
Omega X
Forum King
 
Omega X's Avatar
 
Join Date: Feb 2003
Location: A Parallel Dimension
Posts: 2,250
Send a message via AIM to Omega X Send a message via Yahoo to Omega X
Opus is now a published standard.
http://xiph.org/press/2012/rfc-6716/

According to the Hydrogenaudio listening tests, it outperforms current proprietary codecs @64kbps. I suspect that it does just as well at higher bitrates.
http://listening-tests.hydrogenaudio...c/results.html
Omega X is offline   Reply With Quote
Old 16th September 2012, 00:24   #6
Kaminari
Junior Member
 
Kaminari's Avatar
 
Join Date: Mar 2003
Location: Paris, France
Posts: 48
The only issue with my in_dshow.dll suggestion above is that Winamp can't read the Vorbis comments.

Now that Opus is a standardized Web audio format, I hope Winamp will come to support it natively (sooner than later).
Kaminari is offline   Reply With Quote
Old 22nd September 2012, 09:13   #7
MrX_1980
Senior Member
 
Join Date: Mar 2003
Location: Germany - NRW
Posts: 109
Send a message via ICQ to MrX_1980
To have OPUS natively as decoder and encoder would be really nice.
With in_dshow.dll I have a bad and heavy noise. All other dshow players sounds fine.
Thanks
MrX_1980 is offline   Reply With Quote
Old 22nd September 2012, 13:44   #8
kzuse
Senior Member
 
kzuse's Avatar
 
Join Date: Oct 2005
Location: (D)
Posts: 458
Send a message via ICQ to kzuse Send a message via Skype™ to kzuse
Also a "+1" for me for the wish of having a native in_opus.dll bundled with Winamp itself. Would be a great thing to advertise as it's the upcoming standard for HTML5 etc.

As it is also delivered in OGG container, there would have to be some mechanism to decide whether it is a vorbis or an opus file - maybe in_vorbis should also handle Opus then (and then be renamed to in_ogg or something like that). So no separate in_opus would be necessary.

But - until now, only a dream of a wish...
kzuse is offline   Reply With Quote
Old 22nd September 2012, 14:06   #9
DrO
Winamp & SHOUTcast Team
 
DrO's Avatar
 
Join Date: Sep 2003
Posts: 26,746
from what i've read up (only out of interest and not with a means to implement anything), there is a variation in the header which allows opus to be detected that way. though being in an OGG container is a down-side rather than a plus with things.

-daz
DrO is offline   Reply With Quote
Old 22nd September 2012, 15:33   #10
kzuse
Senior Member
 
kzuse's Avatar
 
Join Date: Oct 2005
Location: (D)
Posts: 458
Send a message via ICQ to kzuse Send a message via Skype™ to kzuse
I think they can also appear in raw bitstream format, then of course lacking metadata (although I really like the thought of having a raw bitstream opus file with an ID3v2 header, as possible in Winamp e.g. with .aac files

Moreover, I've heard that the matroska container is also one of the possible file formats for opus.

MP4 container is technically possible but it ist not standardized from MPEG/ISO's side (yet - who knows....).
kzuse is offline   Reply With Quote
Old 14th November 2012, 05:23   #11
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
On it, plugin half complete...
http://www.hydrogenaudio.org/forums/...howtopic=97856
thinktink is offline   Reply With Quote
Old 14th November 2012, 20:30   #12
MrSinatra
Forum King
 
MrSinatra's Avatar
 
Join Date: Dec 2004
Location: WKPS, State College
Posts: 4,784
Send a message via AIM to MrSinatra
TT is the man, although i don't know what i'd need this for? i.e. whats the content that i'd want this for? and i wouldn't broadcast something that has little native support.

can't you just transplant the fb2k plugin into winamp?

regardless, seems like at least a good addition to the essentials pack.

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 15th November 2012, 00:11   #13
DrO
Winamp & SHOUTcast Team
 
DrO's Avatar
 
Join Date: Sep 2003
Posts: 26,746
the better place would be taking in_vorbis and using that (though that's obviously not viable) since the container format is the same, it's just the bits that go into it which is the opus codec that's different.

as for why, etc, supposedly it's the new thing (like webm) and will do the same thing that ogg vorbis was claimed to do of being a free streamable format, etc. though really the only thing i can see it possibly helping with is the html5 mess with the <audio> tag and as a decent royalty free codec it has potential, it's just having content created to use it that's the issue (and the fact it uses the horrible ogg container *shrugs*).


as from a broadcasting view of things, getting ogg vorbis stream support in the SHOUTcast tools would easily allow opus support... just leaving that image for people.

-daz

If you have issues with Winamp or still want to get it, ensure
you get v5.666 build 3516 and the required plug-in updates
DrO is offline   Reply With Quote
Old 15th November 2012, 01:22   #14
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
The only issue I'm having at the moment is figuring out how to feed the stream to a compatible decoder in the library. Local file reading is fine. I've even got the transcoder functions working already.
thinktink is offline   Reply With Quote
Old 15th November 2012, 01:33   #15
DrO
Winamp & SHOUTcast Team
 
DrO's Avatar
 
Join Date: Sep 2003
Posts: 26,746
i'm having a blonde moment, what do you mean by "how to feed the stream to a compatible decoder in the library" ?

as normal playback and transcoder support is pretty much what's needed (along with metadata support and where possible using the unified alt+3 dialog stuff).

-daz

If you have issues with Winamp or still want to get it, ensure
you get v5.666 build 3516 and the required plug-in updates
DrO is offline   Reply With Quote
Old 15th November 2012, 02:41   #16
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
There are several API functions from the library to decode opus data from different source types: File, URL, and In-Memory (like data loaded from resource.) The URL ones seem totally disabled (and won't give me metadata anyways) and the in-memory ones only work if the data has a definite stop and end all in memory. The file one works fine, in-fact, it's the only one I've been able to get working.
thinktink is offline   Reply With Quote
Old 15th November 2012, 02:44   #17
DrO
Winamp & SHOUTcast Team
 
DrO's Avatar
 
Join Date: Sep 2003
Posts: 26,746
/me bangs head on desk

opus library not Winamp library, durr (and with that stupidity on my part, sleep)

-daz

If you have issues with Winamp or still want to get it, ensure
you get v5.666 build 3516 and the required plug-in updates
DrO is offline   Reply With Quote
Old 20th November 2012, 07:43   #18
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Work In Progress - Translation: Doesn't all work.

Local file playback and metadata reading (not writing) support is solidly working. However, streamplaybacknotsomuch...

Attached in a 7z archive. Because it's a W.I.P. there's no installer so you'll need to extract the plugin -->and the DLLs from this archive downloadable here (just the three .DLL files, not everything)<-- directly into the Plugins folder of Winamp to try it out.

Last edited by thinktink; 24th November 2012 at 22:43.
thinktink is offline   Reply With Quote
Old 21st November 2012, 06:19   #19
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Hooray! I just got streaming working right finally. Now to work out all the little nooks and crannies for the other Winamp Modern features. Hopefully should have a release within this week.
thinktink is offline   Reply With Quote
Old 24th November 2012, 22:13   #20
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Bingo! Have at ya'! Full modern everything support.

Attached, same instructions as before.

Now I just need to make the encoder plugin. Yikes!

[EDIT/]
Forgot to mention, to force Winamp to use my plugin for opus streaming with URLs that don't end in ".opus" replace the "http://" part of the URL with "opus://".

Last edited by thinktink; 26th January 2013 at 21:36.
thinktink is offline   Reply With Quote
Old 11th December 2012, 15:07   #21
AlexFolland
Junior Member
 
Join Date: Aug 2008
Posts: 2
Quote:
Originally Posted by thinktink View Post
Bingo! Have at ya'! Full modern everything support.

Attached, same instructions as before.

Now I just need to make the encoder plugin. Yikes!

[EDIT/]
Forgot to mention, to force Winamp to use my plugin for opus streaming with URLs that don't end in ".opus" replace the "http://" part of the URL with "opus://".
Hi, thinktink. It's great that you made this plugin! However, when I put it in my plugins directory and try to start Winamp, Winamp crashes on startup. I'm using Winamp 5.63 32-bit with the Modern skin in Windows 7 64-bit.

Edit: Never mind! I'm dumb! I hadn't extracted libogg-0.dll, libopus-0.dll, and libopusfile-0.dll from the previous archive since I'd only looked at your last post! Once I did that, it worked just fine and now I'm playing a .opus file in Winamp!
AlexFolland is offline   Reply With Quote
Old 14th December 2012, 22:44   #22
Kaminari
Junior Member
 
Kaminari's Avatar
 
Join Date: Mar 2003
Location: Paris, France
Posts: 48
Thanks TT — great plugin! It even supports metadata.

For future versions, may I suggest Unicode and out_ds.dll support? The former is needed to play files with Unicode names (or located in folders with Unicode names), the latter for proper fadeout control. Right now, the plugin seems to have its own sound output.
Kaminari is offline   Reply With Quote
Old 14th December 2012, 22:48   #23
AlexFolland
Junior Member
 
Join Date: Aug 2008
Posts: 2
I agree. Proper integration is ideal. Also, what is your plugin's license? Is there a public source repository somewhere?
AlexFolland is offline   Reply With Quote
Old 15th December 2012, 00:44   #24
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
The Opus tags specification doesn't layout a methodology for Unicode tags support, at least that I could find. If I am amiss in that statement please point it out to me and it will be remedied quickly.

The plugin itself is closed source but the libraries that it depends on for decoding are open source and available here:
http://www.opus-codec.org/

If there's a question you have about the plugin coding and how I did certain things please feel free to ask and I will give you a quick theory of operation for what the code is doing.
thinktink is offline   Reply With Quote
Old 15th December 2012, 04:11   #25
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Quote:
Originally Posted by Kaminari View Post
...out_ds.dll support? ...for proper fadeout control. Right now, the plugin seems to have its own sound output.
I'm sorry, I failed to address this point. I am seeing the same thing as you are, only however, it is using the currently selected Output plugin. I am trying to resolve that issue. It is pre-feeding out_ds.dll like one would expect but for some reason something I'm doing is not allowing the crossfades. I still do not understand why. I am working on it.
thinktink is offline   Reply With Quote
Old 7th January 2013, 20:46   #26
Kaminari
Junior Member
 
Kaminari's Avatar
 
Join Date: Mar 2003
Location: Paris, France
Posts: 48
Hi TT,

About Unicode support, I wish I could point you to specific docs/specs. All I know is that Vorbis comments in Vorbis and Flac files definitely support Unicode characters.

My question was not only related to Unicode tags, but to Unicode filenames as well. The Nullsoft plugins in_flac and in_vorbis can correctly parse such filenames to Winamp, but in_bpopus refuses to load/play any audio file which filename (or filepath) includes Unicode characters (like macrons or kanjis).

About metadata support in in_bpopus, is it really functional? I have tagged some Opus files with TagScanner (which supports Opus since November), and they are properly detected as Vorbis comments in XMPlay and Foobar, but they don't appear at all in Winamp with your plugin.
Kaminari is offline   Reply With Quote
Old 8th January 2013, 20:07   #27
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Can you attach a short opus file I can bang on for a while to test with?
thinktink is offline   Reply With Quote
Old 8th January 2013, 23:23   #28
Kaminari
Junior Member
 
Kaminari's Avatar
 
Join Date: Mar 2003
Location: Paris, France
Posts: 48
Sure: Opus_Unicode_Test.7z

The archive contains two files, one encoded with libopus 1.0.1 and another with 1.0.2. I've noticed that tags in the 1.0.1-encoded file are not displayed by in_bpopus. Maybe it's intentional on your part, although they do work in TagScanner, XMPlay, Foobar and MediaInfo.
Kaminari is offline   Reply With Quote
Old 9th January 2013, 00:09   #29
ayoubabakrim
Junior Member
 
Join Date: Jan 2013
Posts: 1
ok thanx
ayoubabakrim is offline   Reply With Quote
Old 12th January 2013, 15:43   #30
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Files received. Will begin testing.
thinktink is offline   Reply With Quote
Old 12th January 2013, 18:00   #31
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
I have found the issue. It's with libopus-file's file handling being pure Ansi and the mindless conversion of input filenames I was doing. Hopefully I'll have something out soon.
thinktink is offline   Reply With Quote
Old 14th January 2013, 15:49   #32
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Try this one out. Attached.

[EDIT /]
In the meantime, I'm going to fix my hex editor so I can open those unicode named files and have a look-see as to what I can do to support true-form unicode tag support. May take a little time.

Last edited by thinktink; 4th March 2013 at 07:07.
thinktink is offline   Reply With Quote
Old 16th January 2013, 20:15   #33
Omega X
Forum King
 
Omega X's Avatar
 
Join Date: Feb 2003
Location: A Parallel Dimension
Posts: 2,250
Send a message via AIM to Omega X Send a message via Yahoo to Omega X
Nevermind.

Last edited by Omega X; 16th January 2013 at 20:18. Reason: already found issue
Omega X is offline   Reply With Quote
Old 3rd March 2013, 03:56   #34
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
I think I have it. The tags aren't actually Unicode but a form of MBCS (is what it looks like) and I have Winamp displaying the same characters in the playlist and the info box as my LFS does. It is however a debug version and only partly integrated so it'll take a little bit of time to complete but it does seem I'm on the correct path.
thinktink is offline   Reply With Quote
Old 4th March 2013, 07:02   #35
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Blammo! Unicode tag support. I even tested it with Unicode named files with Chinese metadata.

Attached.

[EDIT/]
Point of note: There's a new version of the opus codec libraries from the website linked to earlier.
https://ftp.mozilla.org/pub/mozilla....-0.2-win32.zip
Update to the DLLs not required for operation but recommended to update anyway. To update you will need to shut Winamp down first, remove the old DLLs and drop the new versions to the same folder as before. The streaming functions also now supports IRI resources,
http://en.wikipedia.org/wiki/Interna...rce_Identifier

Last edited by thinktink; 4th March 2013 at 08:58.
thinktink is offline   Reply With Quote
Old 4th March 2013, 07:06   #36
MrSinatra
Forum King
 
MrSinatra's Avatar
 
Join Date: Dec 2004
Location: WKPS, State College
Posts: 4,784
Send a message via AIM to MrSinatra
i'm not following... i thought u already had unicode, and the problem tags were MBCS and you were going to add MBCS?

what actually changed?

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 4th March 2013, 07:18   #37
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Quote:
Originally Posted by MrSinatra View Post
i'm not following... i thought u already had unicode, and the problem tags were MBCS and you were going to add MBCS?

what actually changed?
I exported the Unicode versions of the extended metadata support in the original and last release but the tag support in Opus was pure Ansi. I just assumed that the tag support was only Ansi. I hadn't realized that the Unicode metadata was being translated to and from MBCS which "looks" like regular Ansi if you're not paying close attention. So in the previous versions of the plugin the MBCS data was being sent out as Unicode re-encoded from AnsiStrings instead of as UTF-8 from MBCS and the metadata was garbled and butchered (i.e. "Yuji Ono" instead of "Yūji Ōno" and some other weirdness.)
thinktink is offline   Reply With Quote
Old 4th March 2013, 07:25   #38
MrSinatra
Forum King
 
MrSinatra's Avatar
 
Join Date: Dec 2004
Location: WKPS, State College
Posts: 4,784
Send a message via AIM to MrSinatra
my kudos to you for being able to track down an issue like that. the hardest ones are the ones where the difference is something so slight, hard to see.

so the lesson to be learned here by other plugin devs is to carefully check to see that you are implementing true unicode all the way through the process, and not something less than that, right? (it almost sounds like a music traders nightmare of an analog stage somewhere in the distribution tree )

how would you phrase it to other devs, or is what you have already said enough? (meaning, to warn them from making the same mistakes?)

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 4th March 2013, 07:36   #39
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Actually is was just half ignorance about MBCS and the other half bad assumptions.
thinktink is offline   Reply With Quote
Old 4th March 2013, 08:58   #40
thinktink
Forum King
 
thinktink's Avatar
 
Join Date: May 2009
Location: Somewhere on this planet.
Posts: 2,605
Send a message via Skype™ to thinktink
Ack, I uploaded the wrong version. Previous one had some debug code in it that blocked metadata re-writing for non-unicode named files. Removed bad version.

Last edited by thinktink; 4th March 2013 at 18:58.
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