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.
Topic: foo_wave_seekbar (Read 799477 times) previous topic - next topic
0 Members and 2 Guests are viewing this topic.

foo_wave_seekbar

Reply #1300
Heyo! I've got an odd issue, not sure if anyone else has seen this yet. How come when I have foobar set to downmix recordings to mono in the Preferences > Advanced > Tools > Waveform Seekbar panel, waveforms get displayed half-width? As in, the seekbar functions normally, seeking to the right side of the pane scrolls to the appropriate part of the song, but the waveform appears scaled to only 50% of the window's width?

foo_wave_seekbar

Reply #1301
I've noticed that too, but only with Direct2D.

There are other problems with the other frontends: with GDI, the waveform is not drawn at all for many tracks (but not all), and with Direct3D, the result depends of the script, but scripts that work well with most tracks display nothing with other tracks.

Something has changed too.  Previously, when a track that has not already been scanned was selected, the display was originally blank, and after a few seconds, the right waveform was displayed.  Now, the waveform of the previous track remains in the display during the scanning of the new track, and often, it remains for ever, or it just disappears when the scan is finished.  Playing another track of the same album then again the track that does not shows up correctly does nothing: the waveform of the first track remains in the display.

Also, it seems that Rescan All Waveforms do not work any more.  I've tried to delete the wavecache.db file and rebuild all waveforms, just to be sure that the problem was not caused by a corrupted db, but I cannot do it.  Rescan All Waveforms does nothing and nothing appears in the log.

I have also tried to revert to v0.2.29 that I had in a backup, and it seems to work better, but the Rescan All Waveforms problem persists.

Not sure why I have so many problems.  I have never noticed that bugs previously, but I've installed Windows 8 x64 recently.  Could it be the reason?

foo_wave_seekbar

Reply #1302
Direct2D mode seems to be broken as of latest version, D3D and GDI works properly


Heyo! I've got an odd issue, not sure if anyone else has seen this yet. How come when I have foobar set to downmix recordings to mono in the Preferences > Advanced > Tools > Waveform Seekbar panel, waveforms get displayed half-width? As in, the seekbar functions normally, seeking to the right side of the pane scrolls to the appropriate part of the song, but the waveform appears scaled to only 50% of the window's width?


I've noticed that too, but only with Direct2D.

There are other problems with the other frontends: with GDI, the waveform is not drawn at all for many tracks (but not all), and with Direct3D, the result depends of the script, but scripts that work well with most tracks display nothing with other tracks.

Something has changed too.  Previously, when a track that has not already been scanned was selected, the display was originally blank, and after a few seconds, the right waveform was displayed.  Now, the waveform of the previous track remains in the display during the scanning of the new track, and often, it remains for ever, or it just disappears when the scan is finished.  Playing another track of the same album then again the track that does not shows up correctly does nothing: the waveform of the first track remains in the display.

Also, it seems that Rescan All Waveforms do not work any more.  I've tried to delete the wavecache.db file and rebuild all waveforms, just to be sure that the problem was not caused by a corrupted db, but I cannot do it.  Rescan All Waveforms does nothing and nothing appears in the log.

I have also tried to revert to v0.2.29 that I had in a backup, and it seems to work better, but the Rescan All Waveforms problem persists.

Not sure why I have so many problems.  I have never noticed that bugs previously, but I've installed Windows 8 x64 recently.  Could it be the reason?


This is the issue I am having.

Here's a screenshot to compate between GDI and D2D for me right now:



System:
Windows 8 x64
latest stable fb2k
ATI Radeon HD 4870 X2 with 13.1 AMD legacy drivers (latest)

foo_wave_seekbar

Reply #1303
Curse you, exotic users with settings I don't use.

The best configuration to have as an end user is the one that I use. Anything else will get less testing, and as you've seen, more bugs 

Use CUI? More bugs.
Use D2D? More bugs.
Downmix-on-scan? More bugs.
Use media library? More bugs.
Not on my machine? Tons of bugs!

Direct2D is especially annoying, as I can't launch that from a debugger at all.
Stay sane, exile.


foo_wave_seekbar

Reply #1305
Curse you, exotic users with settings I don't use.

The best configuration to have as an end user is the one that I use. Anything else will get less testing, and as you've seen, more bugs 

Use CUI? More bugs.
Use D2D? More bugs.
Downmix-on-scan? More bugs.
Use media library? More bugs.
Not on my machine? Tons of bugs!

Direct2D is especially annoying, as I can't launch that from a debugger at all.


Too bad D2D is the fastest so IMHO = best 

If you need anything, ask away.

foo_wave_seekbar

Reply #1306
PeteG: I don't have enough structure in any of my music directories to benefit from the ML, so any code working with the ML is written against what's promised in the API documentation and may contain misconceptions or errors. I rely on my trusty team of pre-release testers to find bugs in the areas of the component that they give a hoot about.

As for all these bugs cropping up lately, the codebase is a stale legacy clusterhug of bad design and decisions which breaks miserably as soon as you try to change anything in it. It could use a good rewrite, but I don't really want to touch it too much while I'm still on the inferior compilers with XP support.

Long story short, XP compatibility requires me to use the VC++ 2010 compiler, which has plenty of legacy stupidity in it. (And no, v110_xp is not an alternative, due to lack of support in third party build systems like Boost's.)
Stay sane, exile.

foo_wave_seekbar

Reply #1307
Yup, the D2D is definitely the root here. I haven't fiddled with any other FX or anything to make it look as simple and straightforward as I like it in my layout... so my temp fix works just fine for now.

Think you'll be dropping the XP support anytime soon, Zao?

foo_wave_seekbar

Reply #1308
Sadly no.

There will be a day where I cannot keep installing legacy compilers anymore. By that time, I hope to have a stable-enough version of the component that I can call "Classic", and make something more awesome to take its place.
Due to that I can't split the cache/scan logic out into a separate component is a bit annoying, as it's then impossible to reliably share it. I used to have it split out, but no-one was able to keep it up to date, insisting on running mismatched versions with amusing crashes as a result.
Stay sane, exile.

foo_wave_seekbar

Reply #1309
Zao: then don't use Boost and program the required functionality by yourself!

BTW in .34 I still got problems when using D2D and storing stuff in mono (waveforms not changing, waveforms being half size)...

Can't someone just write a shader which would make D3D look like D2D (simple look, no fill in the waveform)?

foo_wave_seekbar

Reply #1310
I've got my own line effect that in my eyes looks better than the D2D look, as it's a bit more smoothed.

I make piece-wise linear segments out of the waveform samples around the current fragment and compute the closest distance to those line segments and color accordingly.
An early attempt at this and my current personal effect are available at your own risk.

You'd be surprised if you knew how many Boost libraries I've removed over the lifetime of the component. It's not much more than PropertyTree, SmartPointer and Asio left nowadays.
Stay sane, exile.

foo_wave_seekbar

Reply #1311
Apologies if this has been covered but I can't seem to search for "windows 8" in this forum.

Today's project is bringing up a windows 8 machines (l need it to test my software on) and I installed waveform seekbar but it never shows any waveforms.

The blue highlight moves across the screen but there is no waveform shown.

One unusual thing I did was to copy my foobar theme.ftl file from another computer to bring the layout over.

On my windows 7 machine, waveform seekbar is set to direct 3D 9C. That setting won't stick, or allow config (i'm guessing there's no directX in windows 8). It's set on GDI and the frontend settings are grayed out.

It will also "stick" on  direct2d 1.0, but there is still no waveform showing.

Any ideas?

foo_wave_seekbar

Reply #1312
Apologies if this has been covered but I can't seem to search for "windows 8" in this forum.

Today's project is bringing up a windows 8 machines (l need it to test my software on) and I installed waveform seekbar but it never shows any waveforms.

The blue highlight moves across the screen but there is no waveform shown.

One unusual thing I did was to copy my foobar theme.ftl file from another computer to bring the layout over.

On my windows 7 machine, waveform seekbar is set to direct 3D 9C. That setting won't stick, or allow config (i'm guessing there's no directX in windows 8). It's set on GDI and the frontend settings are grayed out.

It will also "stick" on  direct2d 1.0, but there is still no waveform showing.

Any ideas?


FYI windows 8 has directx 11 installed by default.

foo_wave_seekbar

Reply #1313
from the opening post.

The Direct3D 9.0c mode requires the DirectX end-user runtime dated earliest February 2010, which can be installed through use of the DirectX end-user Runtime Web Installer (make sure to not accidentally install the Bing Bar they try to force on you).
Note that the DirectX redistributable is required on all OSes no matter whether you think you "have DirectX installed already, lol" or not.
The Direct2D 1.0 mode requires either Windows Vista SP2 or Windows 7 and up. For Vista SP2 it requires installation of the Platform Update.



foo_wave_seekbar

Reply #1314
"The Direct2D 1.0 mode requires either Windows Vista SP2 or Windows 7 and up"

So that should work, but it's not.

I downloaded from the "end-user runtime web Installer" link. Now I can it to stick on DirectX 9c, but it still doesn't work on any setting.


foo_wave_seekbar

Reply #1315
Sounds like you have wrong channels enabled in the "Channel display order" configuration. IMO best look is obtained by setting "Downmix display" to "mix-down to mono", with this you only need to tick "Front center (mono)" channel. With other settings you need at least "Front left" and "Front right".

foo_wave_seekbar

Reply #1316
I have a similar problem with W8, but also with W7 (both x64).  See here.

foo_wave_seekbar

Reply #1317
Also, it seems that Rescan All Waveforms do not work any more.  I've tried to delete the wavecache.db file and rebuild all waveforms, just to be sure that the problem was not caused by a corrupted db, but I cannot do it.  Rescan All Waveforms does nothing and nothing appears in the log.

I was wrong.  Rescan All Waveforms works, but it rescan only the waveforms that have already been scanned and are present in the wavecache.bd.  I thought it was supposed to scan all tracks of the library and add them in the db.
BTW, it would be nice to add the possibility to add a tool to verify if all tracks of the library are already in the db, and when it's not the case, scan them.  With a big library, that may take a while, but at least, after the operation, we'll sure that the waveform of any track will be displayed immediately.

I have tried to replace the current version of the plugin with a very old version (v0.2.12) I had with an old portable version of Foobar.  That version works well with all frontends, and I have none of the problems I have reported here.  (That version still uses the "effect" folder, and has not the D3D script editor integrated in the GUI.)
Is it possible to download the old versions somewhere?  I would like to check in what version the bugs have been introduced.  That may help Zao to fix them, and anyway, I would prefer to use the most recent version that has not that bugs.  Thanks!

foo_wave_seekbar

Reply #1318
I'm quite aware of the assorted problems with Direct2D, but as long as I'm physically unable to debug them, I can't say I give too many hoots about resolving them.
Stay sane, exile.

foo_wave_seekbar

Reply #1319
Yes, but it might be easy to locate the bug by comparing what has changed in the first version that has introduced it.  I can check that for you if I can download the old versions.  Is it possible?
And there are bugs in D3D and in the way the waveform are displayed after a track change too.

foo_wave_seekbar

Reply #1320
I haven't really touched the D3D and D2D frontends at all in the recent series of versions.
It's all side effects from changing the analysis and retrieval paths. The problem is that it has never really been correct, it just haven't happened to be visibly wrong for the majority in the past.
Stay sane, exile.

foo_wave_seekbar

Reply #1321
Previously, when a track that has not already been scanned was selected, the display was originally blank, and after a few seconds, the right waveform was displayed.  Now, the waveform of the previous track remains in the display during the scanning of the new track

I'm also seeing this. The waveform also stays after the playback has been stopped. Is it supposed to be like this or is it a bug?

foo_wave_seekbar

Reply #1322
Sounds like you have wrong channels enabled in the "Channel display order" configuration. IMO best look is obtained by setting "Downmix display" to "mix-down to mono", with this you only need to tick "Front center (mono)" channel. With other settings you need at least "Front left" and "Front right".


No, but the whole windows 8 thing turned out to be a red herring. On my freshly installed windows 8 machine I didn't have any music, so I was using audio CDs. As soon as I checked out a flac file everything worked as normal.

I don't recall having the audio cd problem in windows 7 however.

By the way I work with surround music, and very much want to see all the waveforms, up to 7.1, so I wouldn't be using any mixdown.

foo_wave_seekbar

Reply #1323
Audio CDs are on the ignore list, as they're not a format that isn't possible to scan in the background or concurrently. Be happy, as it'd kill your optical drive if it still was, not to mention that it would ruin your playback by eternal underruns.

Code: [Select]
return match_pi("(random|record):.*") ||
       match_pi("(http|https|mms|lastfm|foo_lastfm_radio|tone)://.*") ||
       match_pi("(cdda)://.*");


As for Windows 8, I've got several testers on it, and I run it as my primary OS. If there's any OS that will break, it's the ones before 7, as I don't have anyone running them.
Stay sane, exile.

foo_wave_seekbar

Reply #1324
Audio CDs are on the ignore list, as they're not a format that isn't possible to scan in the background or concurrently. Be happy, as it'd kill your optical drive if it still was, not to mention that it would ruin your playback by eternal underruns.

Code: [Select]
return match_pi("(random|record):.*") ||
       match_pi("(http|https|mms|lastfm|foo_lastfm_radio|tone)://.*") ||
       match_pi("(cdda)://.*");


As for Windows 8, I've got several testers on it, and I run it as my primary OS. If there's any OS that will break, it's the ones before 7, as I don't have anyone running them.


OK, thanks for clearing that up!

And thanks for the great component!