Ok I can hear something like a scratching when I do this. But the tones coming out seem to be too low, just as if you would turn down the pitch.
I have been trying with all types of values for SamplingRate. Is there a better way to do it?
Public Sub New()
Bass.BASS_Init(-1, 44100, BASSInit.BASS_DEVICE_DEFAULT, Nothing)
MainModule.forwardstream = Bass.BASS_StreamCreateFile("C:\Test.mp3", -1, -1, BASSFlag.BASS_STREAM_PRESCAN)
MainModule.reversestream = BassFx.BASS_FX_ReverseCreate(MainModule.forwardstream, 2.0F, BASSFlag.BASS_FX_FREESOURCE)
Bass.BASS_ChannelGetAttribute(MainModule.forwardstream, BASSAttribute.BASS_ATTRIB_FREQ, SampleRate)
Bass.BASS_ChannelPlay(MainModule.forwardstream, False)
Bass.BASS_ChannelPlay(MainModule.reversestream, False)
End Sub
Private Sub ScratchingCommand_Execute(_Rate As Integer)
Dim SamplingRate As Integer = _Rate
If ((SamplingRate1 < 100) AndAlso (SamplingRate1 > -100000)) Then
Bass.BASS_ChannelSetAttribute(MainModule.reversestream, BASSAttribute.BASS_ATTRIB_REVERSE_DIR, -1)
Bass.BASS_ChannelSlideAttribute(MainModule.forwardstream, BASSAttribute.BASS_ATTRIB_FREQ, CSng(-SamplingRate), 100)
ElseIf ((SamplingRate1 > 100) AndAlso (SamplingRate < 100000)) Then
Bass.BASS_ChannelSetAttribute(MainModule.reversestream, BASSAttribute.BASS_ATTRIB_REVERSE_DIR, 1)
Bass.BASS_ChannelSlideAttribute(MainModule.forwardstream, BASSAttribute.BASS_ATTRIB_FREQ, CSng(SamplingRate), 100)
End If
End Sub