Browse DevX
Sign up for e-mail newsletters from DevX

Tip of the Day
Language: VB4/32,VB5,VB6
Expertise: Intermediate
Jul 15, 2000



Building the Right Environment to Support AI, Machine Learning and Deep Learning

Retrieve the length of a media file (WAV, AVI, MIDI)

You can retrieve the length of a standard windows media file (WAV, AVI or MIDI) using simple MCI functions. First, you must open the file with:

Declare Function mciSendString Lib "winmm" Alias "mciSendStringA" (ByVal _
    lpstrCommand As String, ByVal lpstrReturnString As String, _
    ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long

CommandString = "Open " & FileName" & " alias MediaFile"
mciSendString CommandString, vbNullString, 0, 0&
where MediaFile is an arbitrary name (an alias) that you then use in subsequent command strings. FileName is the full path of the media file and must be in the short format 8+3 characters. Now you can get file length in milliseconds:

Dim MediaLength as Long
Dim RetString As String * 256
Dim CommandString As String

CommandString = "Set MediaFile time format milliseconds"
mciSendString CommandString, vbNullString, 0, 0&
CommandString = "Status MediaFile length"
MciSendString CommandString, RetString, Len(RetString), 0&
MediaLength = CLng(RetString)
Now, the MediaLength variable containes the length of the media file. You only have to close the MCI device, with

CommandString = "Close MediaFile"
MciSendString CommandString, vbNullString, 0, 0&
Alberto Falossi
Comment and Contribute






(Maximum characters: 1200). You have 1200 characters left.



Thanks for your registration, follow us on our social networks to keep up-to-date