vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Zippen wie die Profis!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Fortgeschrittene Programmierung
Re: Mp3 abspielen und springen 
Autor: xtelikly
Datum: 12.12.06 19:51

Hi.

Um Mp3 abzuspielen, nutz doch einfach folgendes Modul.

'mdlPlayMP3.bas
 
Option Explicit
Private Dateiname_kurz As String 'Der DOS-Format Dateiname der Mp3 Datei.
Private Slash As String 'Falls das Programm direkt auf einem Laufwerk 
' ausgeführt wird.
Private RetVal As Variant
Private Temp As String * 255
 
Public Declare Function GetShortPathName Lib "kernel32" Alias _
  "GetShortPathNameA" (ByVal lpszLongPath As String, ByVal lpszShortPath As _
  String, ByVal cchBuffer As Long) As Long
    'Diese API wandelt Lange Dateinamen (Windows-Format) in kurze
    '(DOS-Format) um.
 
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
    'Diese API ist im stande Mp3 Dateien abzuspielen.
 
Public Sub play_MP3(ByVal aktion As Integer)
    Select Case aktion
        Case 1
            RetVal = mciSendString("open " & Dateiname_kurz & " type MPEGVideo" & _
              "Alias Mp3", "", 0, 0)
            RetVal = mciSendString("play Mp3", "", 0, 0)
        Case 2
            RetVal = mciSendString("open " & Dateiname_kurz & " type MPEGVideo" & _
              "Alias Mp3", "", 0, 0)
            RetVal = mciSendString("play Mp3 repeat", "", 0, 0)
        Case 3
            RetVal = mciSendString("stop Mp3", "", 0, 0)
        Case 4
            RetVal = mciSendString("close Mp3", "", 0, 0)
        Case Else
            MsgBox ("Falscher Übergabewert in SUB play_MP3")
    End Select
End Sub
 
Public Sub set_MP3(ByVal dateiname As String)
    RetVal = GetShortPathName(dateiname, Temp, 255)
    Dateiname_kurz = Left(Temp, RetVal)
End Sub
 
Public Function check_Mp3(ByVal aktion As Integer) As Variant
   Dim sreturn As String
 
   sreturn = Space$(256)
   Select Case aktion
        Case 1
            RetVal = mciSendString("status Mp3 position", sreturn, Len( _
              sreturn), 0)
            check_Mp3 = Val(sreturn)
        Case 2
            RetVal = mciSendString("status Mp3 length", sreturn, Len(sreturn), _
              0)
            check_Mp3 = Val(sreturn)
        Case Else
            MsgBox ("Falscher Übergabewert in SUB check_MP3")
   End Select
End Function
Du kannst dann einfach über einen Button die Mp3 abspielen.

Private Sub Command1_Click()
  play_MP3 (1)
End Sub
Damit startes du die Wiedergabe.
Logischer weise müsstest du noch mit nem CommonDialog eine Mp3 suchen und kannst sie ganz einfach an das Modul übergeben.

Dafür könntest du die Command1_Click() Sub etwas erweitern:

Private Sub Command1_Click()
Dim file as String
 
  With CommonDialog1
    .CancelError = True
    .Filter = "Mp3 Dateien (*.mp3)|*.mp3"
    .ShowOpen
    If Err = 0 Then
      file = .filename
    End If
  End With  
 
  play_MP3 (4)
  set_MP3 (file)
  play_MP3 (1)
End Sub
Hoffe dir geholfen zu haben und wünsch dir mal noch nen schönen Tag.

Michael

. semper fidelis

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Mp3 abspielen und springen810CoderNachwuchs12.12.06 18:21
Re: Mp3 abspielen und springen519xtelikly12.12.06 19:51
Re: Mp3 abspielen und springen476xtelikly12.12.06 20:01
Re: Mp3 abspielen und springen520vbtricks13.12.06 10:25

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel