Results 1 to 7 of 7

Thread: How do u play MP3s?

  1. #1

    Thread Starter
    New Member
    Join Date
    Nov 2000
    Posts
    2
    im doing a progect and i was wondering whether it is possible to pay mp3's in VB5
    -genjester

  2. #2
    _______ HeSaidJoe's Avatar
    Join Date
    Jun 1999
    Location
    Canada
    Posts
    3,946
    "A myth is not the succession of individual images,
    but an integerated meaningful entity,
    reflecting a distinct aspect of the real world."

    ___ Adolf Jensen

  3. #3

    Thread Starter
    New Member
    Join Date
    Nov 2000
    Posts
    2

    thanx

    thanks for the links they are helping heaps

    im wondering though

    do i need VB6 coz at the moment i have VB5
    -genjester

  4. #4
    Guest
    Yup, it's for VB6. But you can search http://www.planet-source-code.com for "MP3", I'm sure you will find something that might work in VB5 there.

  5. #5
    Fanatic Member
    Join Date
    Jul 2000
    Location
    Manchester NH
    Posts
    833


    Public Declare Function mciGetErrorString Lib "winmm.dll" Alias "mciGetErrorStringA" (ByVal dwError As Long, ByVal lpstrBuffer As String, ByVal uLength As Long) As Long
    Public Declare Function GetShortPathName Lib "kernel32" Alias "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As String, ByVal cchBuffer As Long) As Long
    Public Declare Function mciSendString Lib "winmm.dll" Alias "mciSendStringA" (ByVal lpstrCommand As String, ByVal lpstrReturnString As String, ByVal uReturnLength As Long, ByVal hwndCallback As Long) As Long
    Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
    Public Declare Function ReleaseCapture Lib "user32" () As Long
    Public Declare Function SetWindowPos Lib "user32" (ByVal hwnd As Long, ByVal hWndInsertAfter As Long, ByVal x As Long, ByVal y As Long, ByVal cx As Long, ByVal cy As Long, ByVal wFlags As Long) As Long
    Public Const SWP_NOMOVE = &H2
    Public Const SWP_NOSIZE = &H1
    Public Const HWND_TOPMOST = -1
    Public Const HWND_NOTOPMOST = -2
    Public TheFileName As String



    Public Function IsItPlaying() As Boolean
    Static yn As String * 30
    mciSendString "status MP3Play mode", yn, Len(yn), 0
    IsPlaying = (Mid$(yn, 1, 7) = "playing")
    End Function

    Public Function mp3Play(FileName As String)
    Dim cmdToDo As String * 255
    Dim dwReturn As Long
    Dim ret As String * 128

    Dim tmp As String * 255
    Dim lenShort As Long
    Dim ShortPathAndFie As String

    If Dir(FileName) = "" Then
    mmOpen = "Error with input file"
    Exit Function
    End If
    lenShort = GetShortPathName(FileName, tmp, 255)
    ShortPathAndFie = Left$(tmp, lenShort)
    glo_hWnd = hwnd
    cmdToDo = "open " & ShortPathAndFie & " type MPEGVideo Alias MP3Play"
    dwReturn = mciSendString(cmdToDo, 0&, 0&, 0&)

    If dwReturn <> 0 Then 'not success
    mciGetErrorString dwReturn, ret, 128
    mmOpen = ret
    MsgBox ret, vbCritical
    Exit Function
    End If

    mmOpen = "Success"
    mciSendString "play MP3Play", 0, 0, 0
    End Function

    Public Function mp3Pause()
    mciSendString "pause MP3Play", 0, 0, 0
    End Function

    Public Function mp3Stop() As String
    mciSendString "stop MP3Play", 0, 0, 0
    mciSendString "close MP3Play", 0, 0, 0
    End Function

    Public Function PositionInSec()
    Static PIS As String * 30
    mciSendString "set MP3Play time format milliseconds", 0, 0, 0
    mciSendString "status MP3Play position", PIS, Len(PIS), 0
    PositionInSec = Round(Mid$(PIS, 1, Len(PIS)) / 1000)
    End Function

    Public Function Position()
    Static P As String * 30
    mciSendString "set MP3Play time format milliseconds", 0, 0, 0
    mciSendString "status MP3Play position", P, Len(P), 0
    sec = Round(Mid$(P, 1, Len(P)) / 1000)
    If sec < 60 Then Position = "0:" & Format(sec, "00")
    If sec > 59 Then
    mins = Int(sec / 60)
    sec = sec - (mins * 60)
    Position = Format(mins, "00") & ":" & Format(sec, "00")
    End If
    End Function

    Public Function LengthInSec()
    Static L As String * 30
    mciSendString "set MP3Play time format milliseconds", 0, 0, 0
    mciSendString "status MP3Play length", L, Len(s), 0
    LengthInSec = Round(Val(Mid$(L, 1, Len(L))) / 1000) 'Round(CInt(Mid$(s, 1, Len(s))) / 1000)
    End Function

    Public Function Length()
    Static L As String * 30
    mciSendString "set MP3Play time format milliseconds", 0, 0, 0
    mciSendString "status MP3Play length", L, Len(L), 0
    sec = Round(Val(Mid$(L, 1, Len(L))) / 1000) 'Round(CInt(Mid$(l, 1, Len(l))) / 1000)
    If sec < 60 Then Length = "0:" & Format(sec, "00")
    If sec > 59 Then
    mins = Int(sec / 60)
    sec = sec - (mins * 60)
    Length = Format(mins, "00") & ":" & Format(sec, "00")
    End If
    End Function


    Public Function SeekTo(Second)
    mciSendString "set MP3Play time format milliseconds", 0, 0, 0
    If IsItPlaying = True Then mciSendString "play MP3Play from " & Second, 0, 0, 0
    If IsItPlaying = False Then mciSendString "seek MP3Play to " & Second, 0, 0, 0
    End Function
    Kurt Simons
    [I know I'm a hack but my clients don't!]

  6. #6
    Hyperactive Member Asaf_99's Avatar
    Join Date
    Jul 2000
    Location
    Israel
    Posts
    335
    I am a VB5 programmer (a 3rd world app ) and playing MP3's in VB5 is as easy to do Hello World.
    Just add a Windows Media Player control on your form (don't worry, everybody that have win95/98/me/2000/nt have this control built in), call it wmp and check this out:
    Code:
    'Make it only for music with no video
    Private Sub Form_Load()
    wmp.Visible = True
    End Sub
    
    'Make a Common Dialog control and call it cod
    cod.ShowOpen
    wmp.Open cod.FileName
    
    'Play
    wmp.Play
    
    'Pause
    wmp.Pause
    
    'Stop
    wmp.Stop
    
    'Get File Name
    MsgBox wmp.FileName
    Is it good?
    Asaf Sagi

    ICQ: 61917199
    E-Mail: [email protected]

  7. #7

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width