|
BassFan
Guest
|
 |
« on: 10 Aug '06 - 23:57 » |
Quote
|
Bass_Vis with new Winamp5 Support can now used Canvas or PictureBox for visualization Plugins  Or Show it with Gen-Bitmap or your own Skin. This come in the next Released! Greets BassFan.
|
|
|
|
« Last Edit: 21 Aug '06 - 06:40 by BassFan »
|
Logged
|
|
|
|
|
saivert
Posts: 36
|
 |
« Reply #1 on: 11 Aug '06 - 11:28 » |
Quote
|
This is great. I remember looking through the new Winamp API and checking out the new Gen Window features. I mimiced the WInamp Gen Window stuff in a plug-in for NSIS (Nullsoft Scriptable Installer System) in order to skin the installation wizard window.
I always hated when every plugin window had it's own skins or just was a plain looking window. Finally Nullsoft got wiser and implemented this GenWindow API which made thing a hell of a lot easier. With the Media Library plugin system you could integrate in the Media Library as well.
Making similar stuff for use directly with BASS is awesome. You could this way create a BASS only clone of Winamp. BASS will always rule. Less latency, less stuggle.
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #2 on: 12 Aug '06 - 10:25 » |
Quote
|
TEST IT:
Download change ..
greets. BassFan
|
|
|
|
« Last Edit: 21 Aug '06 - 06:40 by BassFan »
|
Logged
|
|
|
|
|
kenshin1101
Posts: 543
|
 |
« Reply #3 on: 13 Aug '06 - 09:32 » |
Quote
|
hi bassfan! how to make vis display on picture box only ?
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #4 on: 13 Aug '06 - 10:46 » |
Quote
|
hi bassfan! how to make vis display on picture box only ?
This work with Winamp 5 only. Please read the SDK of Winamp 5 www.winamp.com/nsdn/winamp/sdk/greets
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #5 on: 21 Aug '06 - 06:39 » |
Quote
|
Bass_Vis Goes 3D
Greets
|
|
|
|
« Last Edit: 18 Jan '08 - 16:57 by BassFan »
|
Logged
|
|
|
|
|
ken
Posts: 630
|
 |
« Reply #6 on: 22 Aug '06 - 12:41 » |
Quote
|
Very nice, but when can I download this Bass_Vis ?
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #7 on: 22 Aug '06 - 18:26 » |
Quote
|
Very nice, but when can I download this Bass_Vis ?
?? Bass_Vis is Online of ADDOn Download page. v2.3.0.1 I have many probs with multithreads by Delphi ... hmmm i'am VBDeveloper  any plugins not work with self routine (Plugins with OpenGl) when i have fixed this the new released go online I hope you understand me bad english greets
|
|
|
|
« Last Edit: 22 Aug '06 - 18:32 by BassFan »
|
Logged
|
|
|
|
|
ken
Posts: 630
|
 |
« Reply #8 on: 23 Aug '06 - 09:42 » |
Quote
|
Hi!
Well the sample source dont look like your picture above.
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #9 on: 23 Aug '06 - 09:48 » |
Quote
|
Hi!
Well the sample source dont look like your picture above.
a new sample come with next released and show above. greets PS: Please let me a little time
|
|
|
|
|
Logged
|
|
|
|
|
ken
Posts: 630
|
 |
« Reply #10 on: 23 Aug '06 - 10:11 » |
Quote
|
OK, thanks Anyway, I try to use Bass_Vis (2.3.0.2) with BassNet (2.3.0.4) (.Net 2.0) but get this error when loading a winamp vis: A call to PInvoke function 'Bass.Net!Un4seen.Bass.AddOn.Vis.BassVis::BASS_WINAMPVIS_CreateVis' has unbalanced the stack. This is likely because the managed PInvoke signature does not match the unmanaged target signature. Check that the calling convention and parameters of the PInvoke signature match the target unmanaged signature.I just call like this: string plugInFile = @"C:\Program\Winamp\Plugins\vis_avs.dll"; int visPlugin = BassVis.BASS_WINAMPVIS_CreateVis(plugInFile, 0, BASSVISCreate.BASS_VIS_DEFAULT);
Anyone have a working C# code for winamp vis?
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #11 on: 23 Aug '06 - 10:29 » |
Quote
|
OK, thanks Anyway, I try to use Bass_Vis (2.3.0.2) with BassNet (2.3.0.4) (.Net 2.0) but get this error when loading a winamp vis: A call to PInvoke function 'Bass.Net!Un4seen.Bass.AddOn.Vis.BassVis::BASS_WINAMPVIS_CreateVis' has unbalanced the stack. This is likely because the managed PInvoke signature does not match the unmanaged target signature. Check that the calling convention and parameters of the PInvoke signature match the target unmanaged signature.I just call like this: string plugInFile = @"C:\Program\Winamp\Plugins\vis_avs.dll"; int visPlugin = BassVis.BASS_WINAMPVIS_CreateVis(plugInFile, 0, BASSVISCreate.BASS_VIS_DEFAULT);
Anyone have a working C# code for winamp vis? Do you have read the HelpFile ? WARNING: Do not browse to Plugin Folder of Winamp5 for Vis_plugins. Bass_Vis or your Application will crash. This is a problem with winampVisGetHeader any plugins used a combination of this gen, in, out or what ever. Bass_Vis can not handle ..gen,in,out Plugins. copy Vis_plugins to Application or other folder and use it from here.
PS: Bass_Vis (2.3.0.2) is not finish yet! greets
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #12 on: 23 Aug '06 - 10:39 » |
Quote
|
2.3.0.2 can not work with C++ You have not the right LIB for C++ i have change CreateVis for loading GEN-Bitmap and add a new Function GetGenHWND all this is not in the Lib for C++ or .NET C#
Please wait for the new Released.
Greets
|
|
|
|
« Last Edit: 23 Aug '06 - 11:12 by BassFan »
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #13 on: 23 Aug '06 - 14:43 » |
Quote
|
I have Released a new Version of Bass_Vis 2.3.0.2 --------------- * Upgraded help file * ADD BASS_WINAMPVIS_GetGenHwnd '// show help file
* changed BASS_WINAMPVIS_CreateVis '// show help file * changed Visual Basic Sample '// to new Bass_Vis Version 1. show Winamp5 Plugins into PicBox or with Gen-Bitmap * changed Delphi Sample '// to new Bass_Vis Version 1. Show sample of Visual Basic use Plugin with Gen-Bitmap or Canvas * changed c++ Library * changed c++ BassVis.h
* FIXED BASS_VIS_FindPlugins for .NET
and send it to Ian
|
|
|
|
« Last Edit: 23 Aug '06 - 14:44 by BassFan »
|
Logged
|
|
|
|
|
Computer Pimp
Posts: 3
|
 |
« Reply #14 on: 1 Sep '06 - 14:40 » |
Quote
|
The vis loads and shows but the audio data is not getting to the plug-in (No Beat Detection)? I have tried this with and without Bass .net and I still have the same problem? Here is my code: Imports System.IO Imports Bass = Un4seen.Bass.Bass Imports BassVis = Un4seen.Bass.AddOn.Vis.BassVis
Public Class Form1
Dim strm As Integer Dim Hvis As Integer Private lHwnd As Integer Private lHwndParent As Integer
Const GW_CHILD As Long = 5
Private Declare Function SetParent Lib "user32.dll" (ByVal hWndChild As IntPtr, ByVal hWndNewParent As IntPtr) As IntPtr Private Declare Function GetWindow Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal uCmd As IntPtr) As IntPtr Private Declare Function MoveWindow Lib "user32.dll" (ByVal Hwnd As Integer, ByVal X As Integer, ByVal Y As Integer, ByVal nWidth As Integer, ByVal nHeight As Integer, ByVal bRepaint As Integer) As IntPtr
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Bass.BASS_Init(1, 44100, Un4seen.Bass.BASSInit.BASS_DEVICE_DEFAULT, 0, Nothing) = False Then MsgBox("BASS Init Error!") Application.Exit() End If End Sub
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing Bass.BASS_ChannelStop(strm) Bass.BASS_StreamFree(strm) Bass.BASS_Stop() Bass.BASS_Free() End Sub
Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick If Hvis > 0 Then BassVis.BASS_WINAMPVIS_SetChanInfo(strm, "Test", "Test", 0, 1, 1, 1) BassVis.BASS_WINAMPVIS_SetChanMPEGInfo(strm, 44100, 256, 1800, 2) BassVis.BASS_WINAMPVIS_Render(Hvis, strm) End If End Sub
Private Sub Form1_Shown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shown strm = Bass.BASS_StreamCreateFile("test.mp3", 0, 0, Un4seen.Bass.BASSStream.BASS_DEFAULT) Bass.BASS_ChannelPlay(strm, False)
Hvis = BassVis.BASS_WINAMPVIS_CreateVis(Application.StartupPath & "\vis\vis_avs.dll", 0, 0, Me.Handle, True) BassVis.BASS_VIS_SetConfig(Un4seen.Bass.AddOn.Vis.BASSVISConfig.BASS_VIS_CONFIG_FFTAMP, Un4seen.Bass.AddOn.Vis.BASSVISFFTAmp.BASS_VIS_FFTAMP_HIGHEST) BassVis.BASS_WINAMPVIS_Render(Hvis, strm)
Timer1.Start() Dim RepeatCounter As Integer = 0 lHwnd = BassVis.BASS_WINAMPVIS_GetGenHwnd Do Until (lHwnd <> 0) Or RepeatCounter = 32000 Application.DoEvents() lHwnd = BassVis.BASS_WINAMPVIS_GetGenHwnd RepeatCounter = RepeatCounter + 1 Application.DoEvents() Loop If lHwnd <> 0 Then lHwndParent = GetWindow(lHwnd, GW_CHILD) If lHwndParent <> 0 Then SetParent(lHwndParent, PictureBox1.Handle) MoveWindow(lHwndParent, 0, 0, PictureBox1.Width, PictureBox1.Height, True) End If End If End Sub
End Class
|
|
|
|
|
Logged
|
|
|
|
|
radio42
Posts: 4012
|
 |
« Reply #15 on: 1 Sep '06 - 16:20 » |
Quote
|
So all new methods from BASS_VIS 2.3.0.2 are included in BASS.NET 2.3.0.5 !
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #16 on: 1 Sep '06 - 18:41 » |
Quote
|
The vis loads and shows but the audio data is not getting to the plug-in (No Beat Detection)? I have tried this with and without Bass .net and I still have the same problem? Here is my code: Imports System.IO Imports Bass = Un4seen.Bass.Bass Imports BassVis = Un4seen.Bass.AddOn.Vis.BassVis
Public Class Form1
Dim strm As Integer Dim Hvis As Integer Private lHwnd As Integer Private lHwndParent As Integer
Const GW_CHILD As Long = 5
Private Declare Function SetParent Lib "user32.dll" (ByVal hWndChild As IntPtr, ByVal hWndNewParent As IntPtr) As IntPtr Private Declare Function GetWindow Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal uCmd As IntPtr) As IntPtr Private Declare Function MoveWindow Lib "user32.dll" (ByVal Hwnd As Integer, ByVal X As Integer, ByVal Y As Integer, ByVal nWidth As Integer, ByVal nHeight As Integer, ByVal bRepaint As Integer) As IntPtr
Private Sub Form1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load If Bass.BASS_Init(1, 44100, Un4seen.Bass.BASSInit.BASS_DEVICE_DEFAULT, 0, Nothing) = False Then MsgBox("BASS Init Error!") Application.Exit() End If End Sub
Private Sub Form1_FormClosing(ByVal sender As Object, ByVal e As System.Windows.Forms.FormClosingEventArgs) Handles Me.FormClosing Bass.BASS_ChannelStop(strm) Bass.BASS_StreamFree(strm) Bass.BASS_Stop() Bass.BASS_Free() End Sub
Private Sub Timer1_Tick(ByVal sender As Object, ByVal e As System.EventArgs) Handles Timer1.Tick If Hvis > 0 Then BassVis.BASS_WINAMPVIS_SetChanInfo(strm, "Test", "Test", 0, 1, 1, 1) BassVis.BASS_WINAMPVIS_SetChanMPEGInfo(strm, 44100, 256, 1800, 2) BassVis.BASS_WINAMPVIS_Render(Hvis, strm) End If End Sub
Private Sub Form1_Shown(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Shown strm = Bass.BASS_StreamCreateFile("test.mp3", 0, 0, Un4seen.Bass.BASSStream.BASS_DEFAULT) Bass.BASS_ChannelPlay(strm, False)
Hvis = BassVis.BASS_WINAMPVIS_CreateVis(Application.StartupPath & "\vis\vis_avs.dll", 0, 0, Me.Handle, True) BassVis.BASS_VIS_SetConfig(Un4seen.Bass.AddOn.Vis.BASSVISConfig.BASS_VIS_CONFIG_FFTAMP, Un4seen.Bass.AddOn.Vis.BASSVISFFTAmp.BASS_VIS_FFTAMP_HIGHEST) BassVis.BASS_WINAMPVIS_Render(Hvis, strm)
Timer1.Start() Dim RepeatCounter As Integer = 0 lHwnd = BassVis.BASS_WINAMPVIS_GetGenHwnd Do Until (lHwnd <> 0) Or RepeatCounter = 32000 Application.DoEvents() lHwnd = BassVis.BASS_WINAMPVIS_GetGenHwnd RepeatCounter = RepeatCounter + 1 Application.DoEvents() Loop If lHwnd <> 0 Then lHwndParent = GetWindow(lHwnd, GW_CHILD) If lHwndParent <> 0 Then SetParent(lHwndParent, PictureBox1.Handle) MoveWindow(lHwndParent, 0, 0, PictureBox1.Width, PictureBox1.Height, True) End If End If End Sub
End Class Which FFT - data will transfer? I can see none Render! only work with BASS_RecordInit, BASS_RecordStart over RecordingCallback and Winproc. you will send UserFFT- Data then use Render2. Sample User FFTData Dim FFTData(1024) As Single Dim WaveData(1024) As Single
'FFT Spectrum Call BASS_ChannelGetData(basschannel.lngChan, FFTData(0), BASS_DATA_FFT2048)
Call BASS_WINAMPVIS_Render2(VisChan, VarPtr(BASS_DATA_FFT2048), _ VarPtr(FFTData(0)), _ BASS_VIS_FFTAMP_NORMAL, 44100)
'WAVE Call BASS_ChannelGetData(basschannel.lngChan, WaveData(0), 1024)
Call BASS_WINAMPVIS_Render2(VisChan, VarPtr(WaveData(0)), _ VarPtr(BASS_DATA_FFT1024), _ BASS_VIS_FFTAMP_HIGH, 44100)
VisChan = BASS_WINAMPVIS_CreateVis ... greets
|
|
|
|
« Last Edit: 1 Sep '06 - 18:55 by BassFan »
|
Logged
|
|
|
|
|
Computer Pimp
Posts: 3
|
 |
« Reply #17 on: 1 Sep '06 - 18:47 » |
Quote
|
I play stream and pass channel handle in render function... is there more I need to do?
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #18 on: 1 Sep '06 - 18:56 » |
Quote
|
I play stream and pass channel handle in render function... is there more I need to do?
I have update my thread read it  greets
|
|
|
|
|
Logged
|
|
|
|
|
BassFan
Guest
|
 |
« Reply #19 on: 1 Sep '06 - 19:14 » |
Quote
|
Hi I have show you use vis/vis_avs.dll this is not the right way make a Folder called Plugins and read the Plugins from here. Do not ? Any Plugins will not work (Winamp5)
I will install net 2005 and make a Sample for Bass_Vis in .NET
greets
|
|
|
|
« Last Edit: 1 Sep '06 - 19:17 by BassFan »
|
Logged
|
|
|
|
|