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.
Recent Posts
11
Other Lossy Codecs / Re: exhale - Open Source USAC encoder
Last post by celona -
With all respect to classical music lovers, classic music isn't representative anymore for development of audio codecs.

With all respect to your opinion, I'm sure that classical listeners would not want to listen music in any of the compressed formats you promote; they might be fine for modern music, and only as long as their ears are not forced to listen to it.

I would like to point out that you should not look at how many albums are released, but how many are sold, and there you would realize that compressing your music is in the interest of those who buy it uncompressed. And classical sells, for the others there is Spotify and the idea that every pleasure can be ruined to save a few cents.

If you then want to look at sales over time you will realize that the music market no longer exists and despite inflation and price increases the turnover of years gone by remains a dream.
12
3rd Party Plugins - (fb2k) / Re: JSplitter (splitter + SMP x64 alternative)
Last post by Defender -
I already answered your last question here, in case it was not clear.
Quote
You have to calculate it by yourself. Either code your own color related functions, check other people's helpers or use an existing framework for that.

Having a method to to extract most frequent colors is just a shortcut/bonus provided by SMP, not that it was required. Obviously it must be done in JS. There are tons of info on the net about color science, JS and CSS related to this. You may also look at other people's code  ;) You already have 2 devs which you know have coded something along those lines. But if you are just expecting a single line of code or method to do what you want, that is not gonna work.

In your examples, I don't really think the text or layout meets my standards of legibility. And I doubt it can be improved with TF alone. It just looks too busy for me, even with text shadows. But ymmv and obviously taste is something personal.
Thx.

I'm not running it this way either. It was just to show the issue. I tone down the alpha quite a lot and only use it on the upper panels.
13
3rd Party Plugins - (fb2k) / Re: JSplitter (splitter + SMP x64 alternative)
Last post by regor -
I already answered your last question here, in case it was not clear.
Quote
You have to calculate it by yourself. Either code your own color related functions, check other people's helpers or use an existing framework for that.

Having a method to to extract most frequent colors is just a shortcut/bonus provided by SMP, not that it was required. Obviously it must be done in JS. There are tons of info on the net about color science, JS and CSS related to this. You may also look at other people's code  ;) You already have 2 devs which you know have coded something along those lines. But if you are just expecting a single line of code or method to do what you want, that is not gonna work.

In your examples, I don't really think the text or layout meets my standards of legibility. And I doubt it can be improved with TF alone. It just looks too busy for me, even with text shadows. But ymmv and obviously taste is something personal.

Quote
I read your post about the methods you can use in SMP and remember seeing some of that stuff also in JS3 documentation.
Cant' check it since it was deleted. But at least JSP2.8.8 has a method named GetColourSchemeJSON for IGdiBitmap interface, according to foobar docs.

Quote
GetColourSchemeJSON(max_count) (string)
      /*
      Returns a JSON array in string form so you need to use JSON.parse() on the result.
      Each entry in the array is an object which contains colour and frequency values.
      Image is automatically resized during processing for performance reasons so there's no
      need to resize before calling the method.
Since my JSP3 to SMP wrapper doesn't have any notes about other methods or this one being deleted, I suppose it's also present on JSP3. I don't see a GetColourScheme equivalence though. Find it funny that I coded a wrapper for a component which was going to be nuked weeks later xdxd now even it seems useful.
15
3rd Party Plugins - (fb2k) / Re: Columns UI
Last post by Defender -
EDIT: Enable the logging folder. Loaded current FCL without first destroying the layout, which resulted in the expected instant crash. I have dumpfiles which I attached.
That crash is related to foo_uie_webview. All I can do is post the most recent calls from the call stack with Microsoft debug symbols loaded:
OK. I can drop webview. It's buggy and I don't use it anyway.

Quote
I don't see weird things when running fooBar playing music.
I think the conclusion is the same. The layout preferences page itself creates a copy of your layout in memory. And as I said, copying panels uses more memory. If your FCL file is that large, that is all going to add up.
So the procedure I'm now using (drop everything below the main splitter, restarting fooBar) and then loading the FCL makes sense?
16
3rd Party Plugins - (fb2k) / Re: Columns UI
Last post by musicmusic -
EDIT: Enable the logging folder. Loaded current FCL without first destroying the layout, which resulted in the expected instant crash. I have dumpfiles which I attached.
That crash is related to foo_uie_webview. All I can do is post the most recent calls from the call stack with Microsoft debug symbols loaded:

Code: [Select]
00 00737ea4 7ae6a12e     0x0
01 00737f10 7ae6ea2e     foo_uie_webview+0x1a12e
02 00737f6c 5c2a83f3     foo_uie_webview+0x1ea2e
03 00737fd4 5c2a82ab     EmbeddedBrowserWebView!EventSource<ICoreWebView2BrowserProcessExitedEventHandler>::InvokeAll<embedded_browser_webview_current::internal::EBWebViewEnvironment,ICoreWebView2BrowserProcessExitedEventArgs *>+0xe5
04 00737ffc 5c2e9905     EmbeddedBrowserWebView!embedded_browser_webview_current::internal::EBWebViewEnvironment::RuntimeProcessesCollectionExited+0x61
05 00738030 5c37fa89     EmbeddedBrowserWebView!embedded_browser_webview_current::internal::RuntimeProcessesCollectionTracker::OnObjectSignaled+0x115
06 00738048 5c37fad4     EmbeddedBrowserWebView!base::win::ObjectWatcher::Signal+0x29
07 00738064 5c39b49c     EmbeddedBrowserWebView!base::internal::Invoker<base::internal::FunctorTraits<void (base::win::ObjectWatcher::*const &)(base::win::ObjectWatcher::Delegate *) __attribute__((thiscall)),const base::WeakPtr<base::win::ObjectWatcher> &,base::win::ObjectWatcher::Delegate *>,base::internal::BindState<1,1,0,void (base::win::ObjectWatcher::*)(base::win::ObjectWatcher::Delegate *) __attribute__((thiscall)),base::WeakPtr<base::win::ObjectWatcher>,base::internal::UnretainedWrapper<base::win::ObjectWatcher::Delegate,base::unretained_traits::MayDangleUntriaged,0> >,void ()>::Run+0x44
08 007380bc 5c302d6f     EmbeddedBrowserWebView!base::TaskAnnotator::RunTaskImpl+0x12c
09 007380f0 5c302c5b     EmbeddedBrowserWebView!base::TaskAnnotator::RunTask<>+0x4f
0a 007381a8 5c302526     EmbeddedBrowserWebView!embedded_browser_webview::internal::AppTaskRunner::DoWork+0x14b
0b 007381e4 5c302e04     EmbeddedBrowserWebView!embedded_browser_webview::internal::AppTaskRunner::MessageCallback+0x36
0c 00738208 5c3801bc     EmbeddedBrowserWebView!base::internal::Invoker<base::internal::FunctorTraits<bool (embedded_browser_webview::internal::AppTaskRunner::*const &)(unsigned int, unsigned int, long, long *) __attribute__((thiscall)),embedded_browser_webview::internal::AppTaskRunner *>,base::internal::BindState<1,1,0,bool (embedded_browser_webview::internal::AppTaskRunner::*)(unsigned int, unsigned int, long, long *) __attribute__((thiscall)),base::internal::UnretainedWrapper<embedded_browser_webview::internal::AppTaskRunner,base::unretained_traits::MayNotDangle,0> >,bool (unsigned int, unsigned int, long, long *)>::Run+0x34
0d 00738250 5c37fc78     EmbeddedBrowserWebView!base::win::MessageWindow::WindowProc+0x16c
0e 00738290 755f7463     EmbeddedBrowserWebView!base::win::WrappedWindowProc<&base::win::MessageWindow::WindowProc>+0x48

Quote
I don't see weird things when running fooBar playing music.
I think the conclusion is the same. The layout preferences page itself creates a copy of your layout in memory. And as I said, copying panels uses more memory. If your FCL file is that large, that is all going to add up.
17
3rd Party Plugins - (fb2k) / Re: Columns UI
Last post by Defender -
I don't have sudden crashes when running fooBar.
I'm referring to crashes while juggling around in Layout mode. Those crashes are direct and do not create crash reports.
Considering the FCL size and the way foobar2000 is crashing, you are probably hitting the memory limit for a 32-bit process. Note also that copying a panel is similar to creating an FCL file for that bit of the layout in memory. You can check the Commit size column in Task Manager for foobar2000.exe to get a more accurate view of how much memory the process is using. (You can also check or monitor private bytes in Process Explorer.)
I don't see weird things when running fooBar playing music.
18
3rd Party Plugins - (fb2k) / Re: Columns UI
Last post by musicmusic -
I don't have sudden crashes when running fooBar.
I'm referring to crashes while juggling around in Layout mode. Those crashes are direct and do not create crash reports.
Considering the FCL size and the way foobar2000 is crashing, you are probably hitting the memory limit for a 32-bit process. Note also that copying a panel is similar to creating an FCL file for that bit of the layout in memory. You can check the Commit size column in Task Manager for foobar2000.exe to get a more accurate view of how much memory the process is using. (You can also check or monitor private bytes in Process Explorer.)
19
3rd Party Plugins - (fb2k) / Re: Columns UI
Last post by Defender -
I've been struggling for a long time with random crashes while being in the Layout when adding, removing, copying and moving panels.
I have reviewed every crash submitted where Columns UI 3.0.0 alpha 3 was the UI. Apart from one, seemingly relating to a bug on Windows 8.1, they are all caused by other components or factors. If you don't know which component is causing your crashes, then I'd start a new thread containing the crash reports.

Last issue is that sometimes some splitters with everything underneath are not loaded.
Best approach to solve it to switch positions of the main splitters. Then it mostly works.
If you are using the built-in splitters then post some screenshots or a video. If they are third-party splitters, then the question belongs in the relevant thread.
I don't have sudden crashes when running fooBar.
I'm referring to crashes while juggling around in Layout mode. Those crashes are direct and do not create crash reports.

Also it has nothing todo with 3.0.0 as such. Crashes were there in 2.1.0 and they are still there in 3.0.0.

I use a lot of splitters/panels. Splitters are either Panel Stack Splitter or JSplitter. FCL is some 2250MB, it contains 160 elements.

EDIT: Enable the logging folder. Loaded current FCL without first destroying the layout, which resulted in the expected instant crash. I have dumpfiles which I attached.
20
3rd Party Plugins - (fb2k) / Re: JSplitter (splitter + SMP x64 alternative)
Last post by Defender -
For ex. which one do you think looks better?
In this case the first.

I do something similar.
I have a standard routine that paints all panels/bars with a dark/transparant top bezel, an accent under the bezel and around the outer parts and a blur/meshed image of the cover of the playing track inside with a gradient inside on top of the mesh/blur. All are optional.

The alpha of the blur/mesh can be set by user for the bars and separate panels.

On top of the resulting paint, art for the current playing artist can be displayed (namelogo / bandlogo / flag / recordlabel / artistpic / cover /genrelogo). In the end the plugin will be run in this in transparent mode. Text in these plugins use dropshadows to stand out.

In the included screenshots (I added separation between bars/panels and padding inside the panels to make it stand out a bit more) you can see it works well as long as the cover is not too bright. Of course you can tone down the alpha by clicking some buttons but in that case the darker cover based mesh/blur just fades in the background.

Since pretty much everything is TF based I have no clue yet how to get something like a number that represents the brightness of the cover so I can adjust the alpha to use for this particular cover based blur/mesh.
But first things first what methods are available in JSplitter/SMP or JSP3 (I checked all the docs but found nothing) to get such a number?