|
![]() |
|
Thread Tools | Search this Thread | Display Modes |
![]() |
#281 |
Forum King
|
Not a whole lot of sudden downloads this time. Must've been only minor bugs this version fixed. Or it could be that people don't pay attention to forums posts at 1am in the morning...
|
![]() |
![]() |
![]() |
#282 |
Senior Member
|
The previous version just works great for me
![]() ![]() What is that gcc library for? |
![]() |
![]() |
![]() |
#283 |
Senior Member
|
So, tested the new build and works well (just as before)
![]() |
![]() |
![]() |
![]() |
#284 |
Forum King
|
I'm assuming it's a shared library dependency from the MinGw compiler they used to compile the new libraries. If I don't distribute and pre-load that DLL before the others, the others won't load. Trust me, I tried. As for what it actually does, I have no idea...
|
![]() |
![]() |
![]() |
#285 |
Join Date: Sep 2003
Posts: 27,873
|
it's only needed for dependencies generated on __moddi3 and __divdi3 according to dependency walker (just for LIBOPUSURL-0.DLL [both] and LIBOPUSFILE-0.DLL [only __divdi3]). at least it's only a 95kb file, but it seems a bit of a waste to have to include that as well just for what are likely simple methods to include natively in the compiles.
|
![]() |
![]() |
![]() |
#286 |
Senior Member
|
Okay...
I also tested it of course and saw that it doesn't load ![]() ![]() Moreover, the other dlls are some KB less in size now. |
![]() |
![]() |
![]() |
#287 |
Senior Member
|
Oh, and I've got the impression that the CPU load is less while decoding .opus files in this new release!
I have an older laptop on which playing OPUS resulted sometimes in stuttering when performing other high-load tasks, as encoding a video or surfing on complex Websites with Firefox. It seems that the new libraries somehow do a better CPU load management in terms of prioritizing their tasks or something like that. Or you optimized something in your decoding dll. It still needs more CPU load than decoding an MP3 file with Winamp's in_mp3.dll, which is rock-solid also on this old machine, but I guess MP3 is just not so complex to decode...... |
![]() |
![]() |
![]() |
#288 | |
Forum King
|
Quote:
libogg loads fine without loading libgcc_s_sjlj first and so does libopus but libopusfile does fail to load without it. Can't say for the libopusurl dependencies because I don't feel like mangling my code to test it. ![]() |
|
![]() |
![]() |
![]() |
#289 |
Forum King
|
Probably because libopusurl and libopusfile now share common code in libgcc_s_sjlj. There was no explanation that I found that explains why they decided to change it to an external dependency instead of just statically including the module in the libraries but I didn't look very hard either. At this point I'm only assuming they did it for size reasons.
I think that was one of the rumored improvements of the new libraries but nothing official. Check the included Readme for official detailed changes. |
![]() |
![]() |
![]() |
#290 | ||
Forum King
|
Quote:
Quote:
. I would think not, however I just tested it out on one of the test vectors I have and it did the same thing you described. However, I've never used the RG features of Winamp before and have no theories why, or even how, it could be happening. This will take time to investigate. |
||
![]() |
![]() |
![]() |
#291 | ||
Join Date: Sep 2003
Posts: 27,873
|
Quote:
Quote:
![]() |
||
![]() |
![]() |
![]() |
#292 | |
Forum King
|
Quote:
![]() |
|
![]() |
![]() |
![]() |
#293 |
Join Date: Sep 2003
Posts: 27,873
|
you're no fun, heh
![]() |
![]() |
![]() |
![]() |
#294 |
Forum King
|
just fyi, you can use audacity to make audiofiles as long as you like. just start with a long song and then paste it over and over to mixdown.
the RG thing is interesting, b/c I don't recall seeing that bug mentioned outside of this thread. Omega X did not say if his files doing so were long or not. the RG plugin is supposedly open source and it used to say that the code for it would be published but that still hasn't happened. perhaps if it were, RG could be both fixed and / or updated to be a better plugin? 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 |
![]() |
![]() |
![]() |
#295 |
Join Date: Sep 2003
Posts: 27,873
|
the percentage bug has been mentioned in another thread or two from memory (i think one of the bug reports - not 100% sure without checking my bug list archive), but it's more from non-forum methods that we've been made aware of it.
as for "the RG plugin is supposedly open source" - it's the library used which is just a straight compile of the source code for that library which is open source and as it's not been modified, there is no need to provide what is already available. unless you're mixing up and expecting ml_rg.dll to be open source as well, if so then that's not possible (and would somewhat defeat the point of Radionomy having just paid to get it and the rest of Winamp's source code). |
![]() |
![]() |
![]() |
#296 |
Forum King
|
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 |
![]() |
![]() |
![]() |
#297 |
Forum King
|
I just stumbled upon a flaw where mono files being played back from libopusurl are played with pre-converted 2 channel audio being sent to an output plugin that thinks it's receiving 1 channel data, which results in the audio sounding twice as low and playing twice as slow. I didn't switch over all the code from my handler thread to libopusurl (oops.)
I also found out the real reason why the file lengths of super-long files are being displayed very improperly: I forgot to implement __fastcall UniString::UniString(__int64 U). Opus File returns the PCM length as a signed 64 bit integer but I was typecasting the result into a 32 bit so I could send it off to the UniCode class string constructor as a 32 bit integer temporarily. I was probably thinking I would implement it later and then forgot to do so. Oops. ReplayGain is getting data from the Transcoder functions of input plugins. I tested in_bpopus's transcoder functions with in_bpxfade and everything seems fine, X-Fade is able to use in_bpopus just fine. However, since the other plugins don't seem effected I'm not giving up. I'll probably put temp code to outchuck the transcoder data to a temp file during the RG playback/calculation and inspect it to see if I can find anything wrong. |
![]() |
![]() |
![]() |
#298 |
Forum King
|
I've gotten a little closer to the problem with RG going 200%. If I make the *_float versions of the transcoder functions inaccessible to Winamp then everything operates normally and the RG window finishes at 100% instead of 200%.
No *_float functions: *_float functions accessible: Note: The resulting suggested gain adjustments are the same between both but the calculated peaks are different. |
![]() |
![]() |
![]() |
#299 |
Join Date: Sep 2003
Posts: 27,873
|
can you send me a copy of the file you're using to test things with please and it'll make it easier to know i'm testing with the same thing, thanks.
|
![]() |
![]() |
![]() |
#300 |
Forum King
|
Gimmie a bit and I'll also pop out two different versions of the plugin with and without the *_float functions as well.
|
![]() |
![]() |
![]() |
#301 |
Join Date: Sep 2003
Posts: 27,873
|
i can disable the float access in winamp.exe as needed, so one version is enough
![]() |
![]() |
![]() |
![]() |
#302 |
Forum King
|
Attached 7z file with a test vector and two versions of the plugin in different folders, one with *_float removed from the def and the other intact.
| Opus Audio Codec plugins 2.0 | Embedded Album Art | DiskWrite | | Save your playlist first! | Live voice-over | X-Fade 2.2 | | More of my stuff... | Last edited by thinktink; 17th April 2014 at 08:26. |
![]() |
![]() |
![]() |
#303 |
Join Date: Sep 2003
Posts: 27,873
|
got it, thanks. will have a play with it once i've triaged an issue from the help site.
|
![]() |
![]() |
![]() |
#304 |
Forum King
|
I figured out what it was. I was calculating my sample-align after calculating the file size with an assumed sample-size of 2 bytes. After moving my sample-align creation to before the file size calculation and then using IT (4 bytes for floats) instead of the assumed 2 bytes it stops at 100% instead of 200%.
Before starting the in-depth investigation I thought maybe it was because I was outchucking the wrong type of float data. But after converting a test vector to MP3 and then viewing the raw contents of what it was outputting and comparing it to what I was outputting I found it was the same format. Therefore, the only other place I could look was at the format information I was passing back to Winamp during open(W)_float. So in lamen's terms, since I was under-reporting the final audio data length by exactly one half, Winamp would hit 200% because it was receiving twice the amount of data than I said it would receive. I'll pop an update soon. |
![]() |
![]() |
![]() |
#305 |
Forum King
|
Release (non-beta) version 1.4.24.89 is now available.
http://bogproghome.hopto.org/downloadwinampopus.html Updates:
At the moment, I still have a cold. ![]() |
![]() |
![]() |
![]() |
#306 |
Forum King
Join Date: Aug 2011
Location: Phoenix, AZ
Posts: 4,775
|
I hope you feel better soon. What you do for your craft is inspiring and a little crazy.
![]() Windows 10 Home 64-bit v20H2 desktop - Logitech Z906 5.1 speaker system |
![]() |
![]() |
![]() |
#307 |
Forum King
|
TT,
that's really interesting. so would the same explanation apply to other formats that DrO said had reported the same thing? perhaps the other formats plugins need checked as well? also, is it possible that what you originally thought is also the case? meaning, even tho u caught the 2 byte/4 byte issue, could it also be the case you are also outchucking the "wrong" type of float data? (just wondering if simultaneous issues have been ruled out?) also, any theory as to why the peak values were different even tho the db was the same? (granted, the peaks were pretty close) your opus plugin is becoming absolutely bulletproof while at the same time your efforts are even improving winamp! kudos. 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 |
![]() |
![]() |
![]() |
#308 | ||||
Forum King
|
Quote:
Quote:
Quote:
Quote:
![]() Not so much yet though. Still need more feedback from the other forum members who reported crash issues with metadata handling. | Opus Audio Codec plugins 2.0 | Embedded Album Art | DiskWrite | | Save your playlist first! | Live voice-over | X-Fade 2.2 | | More of my stuff... | Last edited by thinktink; 17th April 2014 at 18:50. Reason: Fixed image tag. |
||||
![]() |
![]() |
![]() |
#309 |
Forum King
|
your plugin is like, lightyears better,
![]() ![]() but if DrO saw/got reports of the same 200% issue on other formats, than why would you doubt its the same type of cause? I'm not saying it for sure is, but it certainly would be something to look at I would think. 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 |
![]() |
![]() |
![]() |
#310 |
Join Date: Sep 2003
Posts: 27,873
|
the reports were like 1139% on a single file (which were very long files iirc).
and that's good thinktink has sorted out the issue (was running behind so only just in a position to check now, but that doesn't seem needed now ![]() |
![]() |
![]() |
![]() |
#311 |
Forum King
|
indeed, but do u have a theory about the peak values? TT made a good point about the importance of 0 re: audio levels.
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 |
![]() |
![]() |
![]() |
#312 |
Join Date: Sep 2003
Posts: 27,873
|
i don't as i've not looked into it (and hadn't fully read all of the reply).
|
![]() |
![]() |
![]() |
#313 |
Forum King
|
Attached is an opus file inside a zip archive that is 32 hours of silence.
|
![]() |
![]() |
![]() |
#314 |
Forum King
|
I installed Wine on an iMac and installed a stripped down install of Winamp on it. Can't use Modern Skins. Anyways, I also installed the Opus plugin and everything seems fine. Can listen to local files and listen to online streams.
I was surprised it didn't take much doing to get it to work. |
![]() |
![]() |
![]() |
#315 |
Forum King
|
Just as a shot in the dark to try to replicate the reported crash issues with opus files in the media library I created a short opus file and copy/pasta'd a short Chinese text sampler (complete with actual Chinese characters.) When I tried to import it into the library, it crashed. No error report or anything.
What I discovered was the difference between what the Winamp the core considers the length of a null-terminated string and what the Winamp ML expects. When Winamp core reads the metadata, it tells the plugin "I can only hold 512 characters" in the "destlen" field. Here, it does not count the null terminator. If the metadata is longer than 512 characters then I chop it to 512 characters with dest[destlen]==0 and wcscpy it out so that I copy a total of 513 characters which includes the null terminator. No crash. If I go larger, el-crash-o of course. Now when the ML asks for metadata, it says "I can only hold 1024 characters" in the "destlen" field. Here, IT DOES count the null terminator. If I chop it 1024 with dest[destlen]==0 then Winamp crashes when the function call returns. So now I have to Chop(String,destlen-1) for all metadata calls. ![]() I'll publish an update ASAP. |
![]() |
![]() |
![]() |
#316 |
Join Date: Sep 2003
Posts: 27,873
|
the buffer requests from Winamp (wherever it originates from) are meant to be used upto the size provided including the null character. and at times it can just be luck if you go over the buffer size that it won't crash (as some of the commonly crashing areas have a few extra bytes of buffer space to cope with things, but it's not guaranteed and doing anything beyond the buffer is then into unknown territory).
also the 2 crash reports i saw (though not looked at directly) showed you were on build 3512 and not 3516. and what call specifically were you having issues with / wanting to have a larger buffer to work with? |
![]() |
![]() |
![]() |
#317 | ||
Forum King
|
Quote:
Quote:
![]() A larger buffer was not really the issue but more surprised to see a difference between ML and core and the differing behaviors between the two than anything. I don't use the ML so this one basically slipped by me since I hadn't had issues with core, I figured it would be fine throughout. |
||
![]() |
![]() |
![]() |
#318 | ||
Join Date: Sep 2003
Posts: 27,873
|
Quote:
Quote:
|
||
![]() |
![]() |
![]() |
#319 |
Forum King
|
Release (non-beta) version 1.4.25.91 is now available.
http://bogproghome.hopto.org/downloadwinampopus.html Updates:
I still have a cold, but I think I'm coming up on the downswing of symptoms. Maybe. |
![]() |
![]() |
![]() |
#320 |
Forum King
|
By the way, and I keep forgetting to mention this, I actually kinda liked that movie. It's funny (in a morbid sort of way sometimes), it has action, and an actual plot/storyline which more than you can say for some other movies.
|
![]() |
![]() |
![]() |
|
Tags |
opus |
Thread Tools | Search this Thread |
Display Modes | |
|
|