Skip to main content
Topic: foo_wave_seekbar (Read 558885 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

foo_wave_seekbar

Changelog:
Component release changelog

Description:
It's an UI element for both the Default UI and Columns UI that provides seekbar functionality (seeking, position indicator) on top of a pretty image of the waveform of the currently playing song, drawn using either Direct3D 9.0c, Direct2D 1.0 or GDI.
The Direct3D 9.0c mode requires a PS2.0 capable card, and has some support for strange cards like the Intel 945. The HLSL effect can be modified with the embedded text editor to further customize the look.
To avoid having to scan tracks on the fly, the component can extract the waveform signature of a song in advance through a context menu item. The process works in the background and resumes after closing foobar2000. It will automatically analyse the currently playing song and other tracks that are likely to be used soon, which should give an appearance of always having the visuals available.
The seekbar has three frontends and some per-instance customizable settings accessible through the UI element context menu, as well as seeking functionality if you click and drag, like the regular seekbar.
If your machine is not capable of running the Direct3D9 or Direct2D modes, the GDI mode should work as a fallback on any machine that foobar2000 can run on, as it only requires Windows XP and GDI.

Links:
foo_wave_seekbar component page

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.

Versions above 0.2.45 require the Visual Studio 2010 SP1 (x86) runtime once again as I value XP and Wine compatibility. From 0.2.45.3 and onward, I attempt to bundle it in the component to avoid upgrades causing the component to stop working due to added requirements.

Installation:
- Download the .fb2k-component file from the components page.
- Install the dependencies needed as per the Links section above.
- Doubleclick the file or drag it onto the foobar2000 components pane in the preferences or navigate to it with the Install button as with any other component.

Usage:
- Highlight one or more files in your playlist. Rightclick on them and use the context menu items to "Extract Seekbar Signature"
- Add UI element to the Default UI or Columns UI as normal
- The backing storage does not know or care about file operations like moving, renaming and such. In order to remove dead items from the storage or compact the storage, there are menu items for that under the Library main menu.

Future changes:
- Lots.

Bio:
I'm a software developer in northern Sweden. I like electronic cats and writing software that occasionally does what it should.
If all you want to do is shout good or bad things at me about this component, there's always this thread to post in.
If you for some reason feel a reason to give me money I can spend irresponsibly on beer and Red Bull, you can use this shiny PayPal button -
Zao shang yong zao nong zao rang zao ren zao.
To, early in the morning, use a chisel to build a bathtub makes impatient people hot-tempered.

foo_wave_seekbar

Reply #1
Fix 120 DPI mode!

foo_wave_seekbar

Reply #2
BIG UP
stimulating the audio nerve directly

foo_wave_seekbar

Reply #3
Yaay!

foo_wave_seekbar

Reply #4
It doesn't seem to like Windows 7, presumably because it's on DX 10 -

"Failed to load DLL: foo_wave_seekbar.dll
Reason: This component is missing a required dependency, or was made for different version of foobar2000."

And I was looking forward to seeing this, too :-(

foo_wave_seekbar

Reply #5
Works fine for me on Windows 7, and it's DX 11.

One question. Where's the database kept?

Thanks.
Windows 10 Pro x64 // foobar2000 1.3.10

foo_wave_seekbar

Reply #6
"Failed to load DLL: foo_wave_seekbar.dll
Reason: This component is missing a required dependency, or was made for different version of foobar2000."


The same here on XP incl. SP3 (beta 6).

foo_wave_seekbar

Reply #7
Quote
"Failed to load DLL: foo_wave_seekbar.dll
Reason: This component is missing a required dependency, or was made for different version of foobar2000."


same here, win7 x64


foo_wave_seekbar

Reply #9
Thanks for horrible Intel on-board support 
I sent crash report and back to fast 0.27

foo_wave_seekbar

Reply #10
@people getting "Failed to load DLL: foo_wave_seekbar.dll"
The Direct3D 9.0c mode requires a PS2.0 capable card, and has some hacks to support horrible cards like the Intel 945. The HLSL effect (in the effects directory) can be modified using any text editor to customize the look further. Furthermore, it requires installation of the DirectX August 2009 runtime redistributable.

foo_wave_seekbar

Reply #11
Could somebody please post a screenshot?

foo_wave_seekbar

Reply #12
It doesn't seem to like Windows 7, presumably because it's on DX 10 -

"Failed to load DLL: foo_wave_seekbar.dll
Reason: This component is missing a required dependency, or was made for different version of foobar2000."

And I was looking forward to seeing this, too :-(

The D3D9 mode works on all OSes, albeit a silly typo may prevent the component from loading in XP currently.
Ensure that you have the August 2009 DXredist installed.

One question. Where's the database kept?

The database is stored in your foobar2000 profile directory as wavecache.db.

Could somebody please post a screenshot?

Zao shang yong zao nong zao rang zao ren zao.
To, early in the morning, use a chisel to build a bathtub makes impatient people hot-tempered.

foo_wave_seekbar

Reply #13
If you were one of the beta testers prior to the public release you must also remove foo_wave_cache.dll from your components directory as this is no longer needed and will conflict with the built-in wave cache component of foo_wave_seekbar.dll.


foo_wave_seekbar

Reply #15
thanks saivert, that was it
looks great

foo_wave_seekbar

Reply #16
awesome, thanks so much but "extrack seekbar signature" should be automatic.

foo_wave_seekbar

Reply #17
awesome, thanks so much but "extrack seekbar signature" should be automatic.

It is, it extracts the track you play and the next track too.

foo_wave_seekbar

Reply #18
oh right my bad, sorry.

foo_wave_seekbar

Reply #19
thanks for this. i'll have to switch to DUI to use it though. it looks totally out of place in my CUI config.

foo_wave_seekbar

Reply #20
Note that you can customize the colors used in the configuration dialog from the context menu, if the global ones are not suitable.
Zao shang yong zao nong zao rang zao ren zao.
To, early in the morning, use a chisel to build a bathtub makes impatient people hot-tempered.

foo_wave_seekbar

Reply #21
This is really nice, works smoothly on my old Pentium D machine. I just want to ask for a tooltip that shows the bars' time when I drag it, like the standard seekbar so I can replace it completely.

Great component, thanks Zao

Quick thing I noticed: when in Direct3D mode, if I maximize the window, the played part of the waveform is no longer highlighted.
we was young an' full of beans

 

foo_wave_seekbar

Reply #22
Quick thing I noticed: when in Direct3D mode, if I maximize the window, the played part of the waveform is no longer highlighted.

The "shade played" feature has known bugs.

foo_wave_seekbar

Reply #23
Thank You for this awesome component.

foo_wave_seekbar

Reply #24
Shade played will stick properly when resizing in next version.
Zao shang yong zao nong zao rang zao ren zao.
To, early in the morning, use a chisel to build a bathtub makes impatient people hot-tempered.

 
SimplePortal 1.0.0 RC1 © 2008-2018