BASS_SFX v2.4.2.1 for winamp, sonique, bassbox, & WMP visual plugin support!

Started by RevG,

i00

I will donate $100 AUD towards this project if you can get it working properly in VB.net ...

see my post here:
http://www.un4seen.com/forum/?topic=10550.0

Otherwise this control is useless to me - it seems issue when you have a lot of other drawing stuff happening in the app.

Thanks
Kris

RevG

Quote from: i00I will donate $100 AUD towards this project if you can get it working properly in VB.net ...

see my post here:
http://www.un4seen.com/forum/?topic=10550.0

Otherwise this control is useless to me - it seems issue when you have a lot of other drawing stuff happening in the app.

Thanks
Kris

Hi I really appreciate your offer to donate, but I will help you for free :) Based on your post it looks like you are  using the old code. Instead of getting the device context by using hVisDC = frm.CreateGraphics().GetHdc() instead use the code below and your problem should be solved. Let me know if this works.

Private Declare Function GetDC Lib "user32.dll" (ByVal hWnd As Int32) As IntPtr

 Private Declare Function ReleaseDC Lib "user32.dll" (ByVal hWnd As Int32, ByVal hDC As IntPtr) As Int32

...

hVisDC = GetDC(m_oVisPanel.Handle)
hVisDC2 = GetDC(m_oVisPanel2.Handle)
hVisDC3 = GetDC(m_oVisPanel3.Handle)
...

 Private Sub frmMain_FormClosed(ByVal sender As System.Object, ByVal e As System.Windows.Forms.FormClosedEventArgs) Handles MyBase.FormClosed
        ReleaseDC(m_oVisPanel.Handle, hVisDC)
        ReleaseDC(m_oVisPanel2.Handle, hVisDC2)
        ReleaseDC(m_oVisPanel3.Handle, hVisDC3)
    End Sub

i00

Thanks works like a charm ... I know you said that you would give me advice for free ... but i really appreciate you sure you don't want a beer to help the cause?

Kris

Knight_Rider

RevG

Quote from: Knight_RiderHey,
well, there isn't a 64-bit version of sfx available yet, is it :-(

I will make this for you :) won't take long

RevG

Quote from: i00Thanks works like a charm ... I know you said that you would give me advice for free ... but i really appreciate you sure you don't want a beer to help the cause?

Kris

Great to hear that it is now working! As much as I appreciate your generosity I will have to respectfully decline :)

I am glad to take care of this library for free for everyone. If anyone has any problems or requests I will definitely do my best to keep up with them. You can be sure that my library will not just disappear like some others have. I realize that people's projects have come to rely on certain libraries and that is why mine is opensource.

Cheers,
Greg

Ian @ un4seen

Quote from: Knight_Riderwell, there isn't a 64-bit version of sfx available yet, is it :-(

Unfortunately, I don't think that will be possible, or rather not much use. Note that the vis plugins would need to be 64-bit too, and I'm not sure any of them are?

Patrice Terrier

QuoteNote that the vis plugins would need to be 64-bit too

Yep, as long as i can speak for the BassBox plugins, they are currently only 32-bit  :)

...

RevG

Quote from: Ian @ un4seen
Quote from: Knight_Riderwell, there isn't a 64-bit version of sfx available yet, is it :-(

Unfortunately, I don't think that will be possible, or rather not much use. Note that the vis plugins would need to be 64-bit too, and I'm not sure any of them are?

Ah yes, very good point. Would be very pointless :p

Knight_Rider

well but i asked myself how it would be possible to use this plugin on a 64 bit os!

Patrice Terrier

No problem to use them on a 64-bit OS as long as you compile the main application into 32-bit (then wow64 will take care of it).

...

Knight_Rider

well, i tried that, but the problem is that i get the error message "es wurde versucht, eine datei im falschen format zu laden" (something like "you tried to load a file in the wrong format" in engl.) everytime i run anything that has to do with bass_sfx (f.e. bass_sfx_init).
get this problem even with the B_SFX VB.Net sample project files...

radio42

That simply means that are either trying to load 32-bit dlls from a 64-bit app or 64-bit dlls from a 32-bit app.
When you are changing you app to be a 32-bit app - you of course again need the 32-bit BASS dlls!

Knight_Rider

ah thanks radio, i used the 64-bit bass dlls indeed :) but if i change them back to the 32-bit ones, the app crashes... what do i have to change that it will run as a 32-bit app?

Knight_Rider

well visual basic 2008 express edition doesn't seem to allow me changing this thing... it is set to "Any CPU"...

radio42

"Any CPU" means your app will automatically run as a 32-bit app on a 32-bit OS and as a 64-bit app on a 64-bit OS.
I don't use VSExpress myself, but normally you'll find the 'Target Platform' under the "Build" settings in the project properties.

If you really can not change it with VSExpress, I guess you might want to switch to a regular VS version?!

Knight_Rider

yeah i tried to change it in the project properties ;)

well, no i guess not... as i'm only 16 and as the media player is just a fun project i guess that i'll have to live without visualization... it's a shame that it doesn't work on a 64-bit os with the express edition... and it really isn't possible to avoid this conflict? so many bass-addons are already 64-bit...

i00

Well express is very limited ... there is an open source version of visual studio that u should be able to change it in though ... its called sharp develop ... i use it over express any day :) -

Advantages over express:
bin is only 20mb's or so
quicker to install
u can make services
deploy it for any cpu
supports all .Net languages :) - ie you don't have to download vb express / c# express ... etc ... supports them all ... and a few other languages ... with plugins ;)
Prob more

You could also change it in the vbproj file manually - open it in notepad - search for <PlatformTarget> and change it to x86:<PlatformTarget>x86</PlatformTarget>

Hope that helps
Kris