[Vb.net] Geluid kraakt bij afspelen wavs met directsound

Pagina: 1
Acties:
  • 345 views sinds 30-01-2008
  • Reageer

  • Sourcey
  • Registratie: Januari 2005
  • Laatst online: 27-11 19:06
Ik heb een visualbasic programmaatje geschreven waarmee ik maximaal tien wavjes (enkele seconden lang, rond 1mb groot) tegelijk af wil spelen. Daartoe heb ik zo'n 60 verschillende wavjes in soundbuffers geladen. Wanneer ik meerdere wavjes simultaan af wil spelen begint het geheel behoorlijk te kraken.
Weet iemand misschien waar dit aan kan liggen en hoe dit op te lossen?


Visual Basic .NET:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
  _dev = New Device
        _dev.SetCooperativeLevel(Me.Handle, CooperativeLevel.Priority)


        description = New BufferDescription()
        description.ControlEffects = False
        description.ControlFrequency = True
        description.PrimaryBuffer = False
        'LOAD ALL SOUNDFILES INTO LIBRARY ARRAY
        Dim counter As Integer
        For counter = 0 To 85
            If (FileExist("c:\music\samples\" & counter & ".wav")) Then
                _library(counter) = New SecondaryBuffer("c:\music\samples\" & counter & ".wav", description, _dev)
            Else
                _library(counter) = _library(counter - 1).Clone(_dev)
                _library(counter).Frequency = (_library(counter - 1).Frequency * 1.0594618868438528)
            End If

        Next


'en even verderop om af te spelen:

_library(index).Play(0, BufferPlayFlags.Default)

  • Kuhlie
  • Registratie: December 2002
  • Niet online
Gokje hoor: zachter afspelen? Waarschijnlijk wordt door het optellen van waveforms geclipt. Als je de losse samples zachter afspeelt is de kans dat dit gebeurt minder.

  • Sourcey
  • Registratie: Januari 2005
  • Laatst online: 27-11 19:06
Geweldig! Inderdaad, het kraken is nu opeens veel minder.
Ik heb nu nog wel steeds last van een 'pop' geluidje bij het inzetten van een nieuwe wav file.

  • roy-t
  • Registratie: Oktober 2004
  • Laatst online: 17-10 16:43
Wat voor geluisdkaart (en boxen) heb je eigenlijk?

Misschien dat je door een soort van fade-in (snelle fade in) ploppen kunt verminderen.

Let ook op dat je onder het aantal maximale kanalen van je hardware blijft (48?).

~ Mijn prog blog!


  • Sourcey
  • Registratie: Januari 2005
  • Laatst online: 27-11 19:06
Geluidskaart is een Soundmax HD audio, ingebouwd in een thinkpad T60 - speakers wisselen heeft geen zin. Ik ga die snelle fade-in proberen.