Login | Register   
LinkedIn
Google+
Twitter
RSS Feed
Download our iPhone app
TODAY'S HEADLINES  |   ARTICLE ARCHIVE  |   FORUMS  |   TIP BANK
Browse DevX
Sign up for e-mail newsletters from DevX


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

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.

 

 

Sitemap