6
Ноябрь
2009
Функция читает заголовок WAV файла
Функция читает заголовок WAV файла
Option Explicit
Enum LEN_FORMAT
frmSeconds = 0
frmSamples = 1
End Enum
Type RIFF_HEAD
riffFmt As String * 4
lenOfFileData As Long
End Type
Type WAVE_HEAD
waveFmt As String * 8
lenOfThunk As Long
format As Integer
channels As Integer
samplesPerSecond As Long
avgBytesPerSecond As Long
blockAlign As Integer
bitsPerSample As Integer
End Type
Type DATA_HEAD
dataStr As String * 4
lenOfThunk As Long
End Type
Public Function ReadWaveHeader(ByVal fileName As String, ByRef riffHead As RIFF_HEAD, ByRef waveHead As WAVE_HEAD, ByRef dataHead As DATA_HEAD) As Boolean
On Error GoTo ERRH
Dim freeNum As Long
freeNum = FreeFile
Open fileName For Binary As #freeNum
Get #freeNum, , riffHead
Get #freeNum, , waveHead
Get #freeNum, , dataHead
Close #freeNum
ReadWaveHeader = True
Exit Function
ERRH:
ReadWaveHeader = False
End Function