Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Visual Βασικά Προγραμματισμός

Πώς να δημιουργήσει δεδομένα Wave Από Buffers σε VB6

Σε VB6 , μπορείτε να χρησιμοποιήσετε το DirectX για να δημιουργήσει ήχου, βίντεο και γραφικές εφαρμογές των Windows . Το DirectX SDK είναι δωρεάν από την ιστοσελίδα της Microsoft . Το αντικείμενο DirectSound αποτελεί το κύριο αντικείμενο της συσκευής ήχου . Μπορεί να χρησιμοποιηθεί για ηχητικά εφέ σε παιχνίδια, και μπορεί να χειριστεί πολλαπλές ήχους σε ένα χρόνο . Ελέγχετε το σύστημα ήχου μέσω DirectSound όπως panning και τον όγκο . Σε VB6 , μπορείτε να δημιουργήσετε ένα σχέδιο για να διαβάσετε τα δεδομένα buffer σε ένα αρχείο WAV μέσω των αντικειμένων DirectX . Τα πράγματα που θα χρειαστείτε
VB6

Παρουσίαση Περισσότερες οδηγίες
Η

1 Κάντε κλικ στο κουμπί " Έναρξη", " Όλα τα προγράμματα " και " Visual Basic " για να ανοίξει VB6 . Κάντε κλικ στο " Αρχείο" και " Νέο" για να δημιουργήσετε ένα νέο έργο . Πληκτρολογήστε ένα όνομα για το έργο . Καθορίστε μια τοποθεσία για τα αρχεία του έργου . 2

Κάντε κλικ στο " Project" και "Αναφορές " για να προσθέσετε DirectX αναφοράς για το έργο . Σημειώστε " DirectX 8 για τη Visual Basic Τύπος Βιβλιοθήκη " στο "Αναφορές" interface . Κάντε κλικ στο " OK".
Εικόνων 3

Καθορισμός μεταβλητών για το έργο . Προσθέστε τον ακόλουθο κώδικα στο Form1.vb : Dim dx As New DirectX8Dim ds Όπως DirectSound8Dim ρυθμιστικού 1 Όπως DirectSoundSecondaryBuffer8Dim buffer2 Όπως DSBUFFERDESC
4

Προετοιμασία DirectSound μέσω κώδικα : Set dx = Νέα DirectX8Set ds = dx.DirectSoundCreate ( " " )
5

Δημιουργήστε ένα buffer μέσω του κωδικού : 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

Δημιουργήστε έναν ήχο και να γράψετε σε dsToneBuffer : Dim ifor i = 0 Για να DUR * SRATEsbuf ( i ) = 10000 * Sin ( 2 * PI * FREQ * i /SRATE ) Επόμενο idsToneBuffer.WriteBuffer 0 , 2 * DUR * SRATE , sbuf ( 0 ) , DSBLOCK_DEFAULT
Η 7

Γράψτε τα δεδομένα buffer σε ένα αρχείο WAV : DS.CreateSoundBufferToFile ( App.Path & "\\ my.wav " , dsToneBuffer )
εικόνων
Η

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα