In VB6 , können Sie DirectX Audio-, Video-und Grafik -Windows-Anwendungen zu erstellen. Das DirectX SDK ist frei von Microsoft-Website . Die DirectSound -Objekt ist das wichtigste Objekt Audiogerät . Es kann für die Sound-Effekte in Spielen verwendet werden, und es können mehrere Töne auf einmal verarbeiten . Kontrollieren Sie die Audio-System durch DirectSound wie Panorama und Lautstärke . In VB6, können Sie ein Projekt erstellen , um Buffer -Daten in eine WAV-Datei über die DirectX -Objekte zu lesen. Things You
VB6
brauchen anzeigen Weitere Anweisungen
1
Klicken Sie auf " Start", " Alle Programme " und " Visual Basic " zu VB6 öffnen. Klicken Sie auf " Datei" und " Neu", um ein neues Projekt zu erstellen. Geben Sie einen Namen für das Projekt. Geben Sie einen Speicherort für die Projektdateien.
2
Klicken Sie auf " Projekt" und " Referenzen " auf DirectX Referenz für das Projekt . Tick " DirectX 8 für Visual Basic Type Library " auf der " Referenzen "-Schnittstelle. Klicken Sie auf " OK".
3
Definieren Sie Variablen für das Projekt. Fügen Sie den folgenden Code, um die Form1.vb : Dim dx As New DirectX8Dim ds As DirectSound8Dim buffer1 Wie DirectSoundSecondaryBuffer8Dim buffer2 Wie DSBUFFERDESC
4
DirectSound initialisieren via Code : Set dx = New DirectX8Set ds = dx.DirectSoundCreate ( "")
5
erstellen Puffer über Code : Buffer2.fxFormat.nFormatTag = WAVE_FORMAT_PCMBuffer2.fxFormat.nSize = 0Buffer2.fxFormat.lExtra = 0Buffer2.fxFormat.nChannels = 1Buffer2.fxFormat.lSamplesPerSec = SRATEBuffer2 . fxFormat.nBitsPerSample = 16Buffer2.fxFormat.nBlockAlign = 2Buffer2.fxFormat.lAvgBytesPerSec = 2 * SRATEBuffer2.lFlags = 0Buffer2.lBufferBytes = 2 * DUR * SRATESet dsToneBuffer = DS.CreateSoundBuffer ( buffer2 )
6
erstellen Sie einen Ton -und Schreibzugriff auf dsToneBuffer : Dim IFOR i = 0 To DUR * SRATEsbuf (i) = 10000 * sin ( 2 * PI * FREQ * i /SRATE ) Weiter idsToneBuffer.WriteBuffer 0, 2 * DUR * SRATE , sbuf (0 ) , schreiben DSBLOCK_DEFAULT
7
die Puffer -Daten in eine WAV- Datei : DS.CreateSoundBufferToFile ( App.Path & "\\ my.wav " , dsToneBuffer )