VBGood网站全文搜索 Google

搜索VBGood全站网页(全文搜索)
首页 - 经验之谈 - 取得 WAV 文件信息
发表评论(0)作者:, 平台:, 阅读:10330, 日期:2000-03-12


取得 WAV 文件信息



WAV 文件基本信息包括如是否立体声,采样频率等。

声明:

Public Const RIFF_ID = 1179011410

Public Const RIFF_WAVE = 1163280727

Public Const RIFF_FMT = 544501094

'Typical header of a simple RIFF WAVE file

Public Type WAVInfo

Riff_Format As Long

chunk_size As Long

ChunkID As Long fmt As Long

Wave_Format As Integer

Channels As Integer '0 = 单声道, 1 = 立体声

SamplesPerSecond As Long

AverageBytesPerSecond As Long '11.025kHz, 22.05kHz, 等

BlockAlign As Integer 'Size of blocks for low level playback

End Type

函数:

Public Function GetWaveInfo(Byval filename As String, Byref w As WAVInfo) _

As Boolean


Dim ff As Integer

ff = FreeFile


On Error GoTo ehandler

Open filename For Binary Access Read As #ff


On Error GoTo ehandler_fo

Get #ff, , w

Close #ff


On Error GoTo ehandler


If w.Riff_Format = RIFF_ID And w.ChunkID = _

RIFF_WAVE And w.fmt = RIFF_FMT Then


GetWaveInfo = True

Else

GetWaveInfo = False

End If


Exit Function


ehandler_fo:

Close #ff

ehandler:

GetWaveInfo = False

End Function