News:

SMF - Just Installed!

Main Menu

Recent posts

#91
Hello,

Yes, I modified the InternetStreams sample as below:

Sub Form1_Load
           ' init the control
            m_audioAPI.InitSoundSystem(4, 0, 0, 0, 0)


Sub PlayerCallback
      Case enumPlayerEvents.EV_STREAM_LOADED
                    'textBoxTags.Text = ""
                    'If nData1 = CInt(Fix(enumEventLoadStreamResults.STREAM_LOAD_OK)) Then
                    '    buttonPause.Enabled = True
                    '    buttonStop.Enabled = True
                    '    trackBarVolume.Enabled = True

                    '    m_audioAPI.PlaySound(0)
                    '    buttonPause.Text = "Pause"
                    'Else
                    '    MessageBox.Show("Invalid URL or stream currently not available: please, retry later")
                    'End If

                    'Stop playing streaming for now.


Private Sub radioButton80sBB_CheckedChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles radioButton80sBB.CheckedChanged
     If radioButton80sBB.Checked Then
        m_audioAPI.LoadInternetStream(0, "http://www.multimediasoft.com/bins/80s.pls")
     End If
     m_audioAPI.LoadInternetStream(1, "http://www.multimediasoft.com/bins/70s.pls")
End Sub

Error occurs when radio "radioButton80sBB" button is clicked.

Terry

#92
Hello,

can you replicate the same error with the InternetStreams sample provided by our setup package?

Accordingly to the Windows SDK error 32 means "ERROR_SHARING_VIOLATION": may be that you are running more applications referring to different versions of the multimedia engine AdjMmsEng64.dll?

As a side note, does your PC has some kind of antivirus installed? In these cases it's likely that a false positive was raised and that the module's loading was blocked.

Kind Regards

Severino Delaurenti
MultiMedia Soft


#93
Hello,

1. the equalizer should not be applied to the input channel but to the player attached to the input channel through the ASIO.AttachInputChannelToPlayer method: may be that you are not using the correct value for the nPlayerIndex parameter when applying the equalizer?

2- Unfortunately the component doesn't have access to ASIO settings: it can only launch the ASIO control panel which contains the settings.

Kind regards

Severino Delaurenti
MultiMedia Soft

#94
Hi,

I continuously load Internet stream radio URL via 'LoadInternetStream' like                 m_audioAPI.LoadInternetStream(0, "http://www.multimediasoft.com/bins/80s.pls")           
m_audioAPI.LoadInternetStream(1, "http://www.multimediasoft.com/bins/70s.pls").

The following error message will appear "Internal error, cannot load engine Number 16 due to error 32"

The following is the execution log, the value in brackets is nPlayerIndex

12:35:41.8594|[PlayerCallback]-(0)-[EV_STREAM_CONNECTING          ]
12:35:41.8665|[PlayerCallback]-(1)-[EV_STREAM_CONNECTING          ]
12:35:43.3063|[PlayerCallback]-(1)-[EV_DOWNLOAD_BUFFERING         ] BUFFERING...
12:35:43.3226|[PlayerCallback]-(1)-[EV_STREAM_LOADED              ] http://www.multimediasoft.com/bins/70s.pls
12:35:43.3308|[PlayerCallback]-(1)-[EV_SOUND_PLAYING              ]

You can see that Player 0 is stuck at CONNECTING.

API Version is 11.2.0.0.

Thank You.

#95
Hello Severino,

With lot of workaround and referring to your sample projects i shifted to ASIO Driver.

Now i got rid of Latency and all other issues.

My current issues are,

1. I am not able to apply equalizer on ASIO Input (Microphone Input). It doesn't work.
   If i apply it to regular running sound mp3/mp4 it works.

2. I can not save ASIO Input / Output settings. DO you have any functions to retrieve last setting
   directly from ASIO Control Panel especially Input / output settings.  Because control panel keeps the
   last settings.

Thanks and Regards,

Ravindra.
 
#96
Hello Severino,

After some workaround I could resolve the following issues now,

1. Low output is resolved after I applied Preamplifier.
1. Volume of a microphone is now getting controlled.
2. Latency is negligible.

The only issue which i am facing is that microphone sound is giving annoying echo effect.
inspite of keeping all enhancement disabled in my PC.

Do we have any provision to control this unwanted echo effect?

Thanks and Regards,

Ravindra.
#97
Hello Severino,

The solution worked and I could hear the sound of my microphone now....Thanks a lot.

I am using Focusrite scarlet 2i2 interface as Audio Playback and Capture Device.
My inputs are,

Player_A = Playing a karaoke mp3 file
Player_B = Dyanamic microphone input given to first channel of interface.

I am getting output from Player_B (Microphone) very very low inspite of increasing the gain on my Interface. The volume control on microphone does not increase the volume level.
Also have a little latency issue.

 Private Sub trkMicrophone_Scroll(ByVal sender As Object, ByVal e As EventArgs) Handles trkMicrophoneVolume.Scroll
        AudioDjStudio2.WASAPI.DeviceVolumeSet(m_nCurrCaptureDevice, enumWasapiDeviceTypes.WASAPI_DEVICE_TYPE_CAPTURE, enumVolumeScales.SCALE_LINEAR, trkMicrophoneVolume.Value)
    End Sub

Can you further guide me to resolve this issue.

Thanks and Regards,

Ravindra.
#98
Hello,

at a first glance it seems that you are using the same player for both the mp3 file and the input device: it would be like using a single deck for playing two different disks at the same time so it won't work.
Inside the InitSoundSystem method allocate 2 players instead of 1 (the first parameter of the method).

Due to the fact that you are using player 0 for the LoadSoundFromMemory method, be sure to use player 1 as first parameter of the call to the WASAPI.AttachInputDeviceToPlayer method.
At the same time, in order to play both sounds, you will need to invoke the PlaySound method for both player 0 and player 1.

Hope this helps.

Kind regards

Severino Delaurenti
MultiMedia Soft
#99
Hello,

Thanks for your Help...
As per your suggestion I tried following code.

Form Load:

 Dim nOutputs As Integer = 0
        '//
        Dim nReturn As enumErrorCodes = AudioDjStudio2.InitDriversType(enumDriverTypes.DRIVER_TYPE_WASAPI)
        If nReturn = enumErrorCodes.ERR_INVALID_PLATFORM Then
            MessageBox.Show("This sample can only work on Windows Vista or higher versions. The program will now close.")
            Close()
        End If
        '//
        AudioDjStudio2.InitSoundSystem(1, 0, 0, 0, 0, -1)
***************************************************************

Later I collected all the playback and input devices successfully and set them.

****************************************************************

Code written in Play Command:

Here i have loaded an mp3 file to AudioDj object as ,

            Dim streamFile As FileStream = New FileStream(cFileName, FileMode.Open)
            Dim binReader As BinaryReader = New BinaryReader(streamFile)

            m_byteBuffer = New Byte(streamFile.Length - 1) {}
            Dim read As Integer = binReader.Read(m_byteBuffer, 0, CInt(Fix(streamFile.Length)))

            ' send the memory buffer to the component
            If AudioDjStudio2.LoadSoundFromMemory(0, m_byteBuffer, CInt(Fix(streamFile.Length))) = AudioDjStudio.enumErrorCodes.NOERROR Then

            End If


'//Added captured device.
            Dim nResult As enumErrorCodes = AudioDjStudio2.WASAPI.AttachInputDeviceToPlayer(0, m_nCurrCaptureDevice, enumWasapiDeviceTypes.WASAPI_DEVICE_TYPE_CAPTURE)

            If nResult <> enumErrorCodes.NOERROR Then
                MessageBox.Show("Cannot start playback du to error " & nResult.ToString())
                Return
            End If

            lErrorCode = AudioDjStudio2.PlaySound(0)

*********************************************************************

Behavior of the Code:

1. Once I trigger play button there is no action and no sound is coming.(Showing No Error)
2. If I remove capture device from player (Just commented the code) then everything works fine.

Will you please guide me what is going wrong ???

Thanks and Regards,

Ravindra.

#100
Hello,

the WasapiInputPlayer sample project shows how to attach a capture device to a player in order to render directly what is being received in input but it doesn't show how to mix this player to another player loaded with a regular mp3 song.
Attached you will find a sample project that does stuffs you need: in order to be run this project requires the presence of the Audio Sound Recorder for .NET component but, from the source code, you should be able to achieve what you need.
With version 7 of the component, the one you are currently registered for, the AttachInputDeviceToPlayer method is the way to go to render a capture device directly into a player.

Hope this helps.

Kind Regards

Severino Delaurenti
MultiMedia Soft