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


Оставить комментарий

Я не робот.