Mp3 Abspielen mit C

Diskutiere Mp3 Abspielen mit C im Developer Network Forum im Bereich Hardware & Software Forum; Hi, ich kann mit PlaySound(); *.wav Dateien abspielen, wie spiele ich aber mp3 - Dateien ab? Ich finde im Internet leider nichts dazu. Nur für...
  • Mp3 Abspielen mit C Beitrag #1
Anno1989

Anno1989

Bekanntes Mitglied
Dabei seit
30.04.2006
Beiträge
1.293
Reaktionspunkte
0
Ort
NRW
Hi, ich kann mit PlaySound(); *.wav Dateien abspielen, wie spiele ich aber mp3 - Dateien ab? Ich finde im Internet leider nichts dazu. Nur für Linux oder aber Java, hilft mir leider aber nicht weiter...
 
  • Mp3 Abspielen mit C Beitrag #3
Anno1989

Anno1989

Bekanntes Mitglied
Dabei seit
30.04.2006
Beiträge
1.293
Reaktionspunkte
0
Ort
NRW
Hi, das Programm bricht irgendwie immer ab an der Stelle:
// Failed to open device. Don't close it; just return error.
return (dwReturn);
Ich habe keine Ahnung wieso, ich vermute ich habe den Handle und den LPSTR nicht richtig gefüllt.
 
  • Mp3 Abspielen mit C Beitrag #4
cmddegi

cmddegi

Bekanntes Mitglied
Dabei seit
12.07.2001
Beiträge
4.740
Reaktionspunkte
0
Ort
Austria
Könnte auch sein, dass das wave-Device einfach das Öffnen mit einer MP3-Datei verweigert. Hast du es mal mit einer WAV versucht?

Falls du sonst nichts findest könntest du noch DirectShow verwenden; das ist allerdings mit nicht ganz unerheblichem Aufwand verbunden.
 
  • Mp3 Abspielen mit C Beitrag #5
Anno1989

Anno1989

Bekanntes Mitglied
Dabei seit
30.04.2006
Beiträge
1.293
Reaktionspunkte
0
Ort
NRW
Mir egal, so lange mein Programm auch mp3 Dateien abspielen kann;)
 
  • Mp3 Abspielen mit C Beitrag #6
cmddegi

cmddegi

Bekanntes Mitglied
Dabei seit
12.07.2001
Beiträge
4.740
Reaktionspunkte
0
Ort
Austria
Dann lad dir mal das DirectX9-SDK runter und sieh dir die Beispielprogramme dazu an. Da gibt es einiges, was Videos usw. abspielen kann; da ist bei DirectMusic sicher auch ein komplettes Bsp. für MP3 dabei.
Würde ich aber nur machen, wenn du sonst keine passende Library findest.
 
  • Mp3 Abspielen mit C Beitrag #7
Anno1989

Anno1989

Bekanntes Mitglied
Dabei seit
30.04.2006
Beiträge
1.293
Reaktionspunkte
0
Ort
NRW
Mhh kann ich diese ganze DircetX Sache ganz normal in z.B. ein Winapi Programm schreiben?!

Edit: @ Unimatrix: Ich hab das nochmal mit einer *.wav Datei probiert, damit funktioniert dieser Code. Leider nicht mit Mp3...
 
Zuletzt bearbeitet:
  • Mp3 Abspielen mit C Beitrag #8
cmddegi

cmddegi

Bekanntes Mitglied
Dabei seit
12.07.2001
Beiträge
4.740
Reaktionspunkte
0
Ort
Austria
Natürlich, wenn du die entsprechenden Header-Files einbindest und die Bibliotheken mitlinkst.
 
  • Mp3 Abspielen mit C Beitrag #9
Anno1989

Anno1989

Bekanntes Mitglied
Dabei seit
30.04.2006
Beiträge
1.293
Reaktionspunkte
0
Ort
NRW
Okay, dann werd ich darauf wohl oder übel zurückgreifen müssen. Gibt es da vielleicht schon vorgefertigten Code?
 
  • Mp3 Abspielen mit C Beitrag #10
cmddegi

cmddegi

Bekanntes Mitglied
Dabei seit
12.07.2001
Beiträge
4.740
Reaktionspunkte
0
Ort
Austria
Ich hab das DX-SDK auf dem Rechner hier nicht drauf, aber wie gesagt, in den Samples ist sicher ein Bsp. drin.
 
  • Mp3 Abspielen mit C Beitrag #11
Anno1989

Anno1989

Bekanntes Mitglied
Dabei seit
30.04.2006
Beiträge
1.293
Reaktionspunkte
0
Ort
NRW
Okay, habs mir mal runter geladen werd dann morgen mal richtig rein gucken.
Danke für die Hilfe.
 
  • Mp3 Abspielen mit C Beitrag #12
peterfido

peterfido

Bekanntes Mitglied
Dabei seit
16.02.2000
Beiträge
1.785
Reaktionspunkte
0
Ort
Berlin
Ich spiele auch MP3 mittels MCI ab. Wichtig ist, dass du den Dateityp bei MCIOpen mit angibst.

Versuchs mal mit MPEGVideo statt waveaudio.
 
  • Mp3 Abspielen mit C Beitrag #13
Anno1989

Anno1989

Bekanntes Mitglied
Dabei seit
30.04.2006
Beiträge
1.293
Reaktionspunkte
0
Ort
NRW
Oha, darauf hätte man kommen können;)
Klappt mit deinem Tipp und dem Code aus Unimatrix Post.
Auch Videos im *avi Format gehen damit. Vielen Dank für die Hilfe!
Super!
Fehlen nun nur noch die Befehle für Vorspulen und so, mal sehen, aber mit dem Ansatz klappt das sicher^^
 
  • Mp3 Abspielen mit C Beitrag #14
Anno1989

Anno1989

Bekanntes Mitglied
Dabei seit
30.04.2006
Beiträge
1.293
Reaktionspunkte
0
Ort
NRW
Leider zu spät:
Edit:
Wie sieht es eigentlich mit Aufnahmefunktionen aus, kann ich hiermit auch z.B. Filme Aufnehmen?
Kann ich z.B.:
Ich habe meine Webcam an, die auf dem PC Bildschirm etwas abspielt 1:1. Kann ich darauf zugreifen, und davon aufnehmen und dies dann Zeitversetzt abspielen?! Ich weiß es wird speziell, nur kann die Record Funktion auf solch ein Webcam Video zugreifen?!
 
  • Mp3 Abspielen mit C Beitrag #15
U

UnimatrixZero

Bekanntes Mitglied
Dabei seit
27.06.2001
Beiträge
645
Reaktionspunkte
0
Leider zu spät:
Edit:
Wie sieht es eigentlich mit Aufnahmefunktionen aus, kann ich hiermit auch z.B. Filme Aufnehmen?
Kann ich z.B.:
Ich habe meine Webcam an, die auf dem PC Bildschirm etwas abspielt 1:1. Kann ich darauf zugreifen, und davon aufnehmen und dies dann Zeitversetzt abspielen?! Ich weiß es wird speziell, nur kann die Record Funktion auf solch ein Webcam Video zugreifen?!
Generell kannst Du mit MCI auch aufnehmen. Wave funktioniert problemlos. Video habe ich noch nicht probiert.

Sonst auch hier der Verweis auf DirectShow. Mit dem Tool Graphedit kannst Du einen Graphen bauen, der von einer Videoquelle aufnimmt und direkt in eine Datei schreibt. In Deinem Programm lädst Du den Graphen und rufst nur noch Play auf.
Die Videokarte muß aber passende Treiber mitbringen.

Btw.: DirectShow ist jetzt NICHT mehr im DirectX-SDK enthalten, sondern im Windows-SDK.
 
  • Mp3 Abspielen mit C Beitrag #16
peterfido

peterfido

Bekanntes Mitglied
Dabei seit
16.02.2000
Beiträge
1.785
Reaktionspunkte
0
Ort
Berlin
Vorspulen geht auch. Einfach nochmal MCIPlay aufrufen und die optionale Startposition mit übergeben. Sieh Dir mal die API zu MCI genauer an. Da kannst du dann auch die Länge und alles wichtige rausbekommen.

Code:
Public Sub mciPlay(ByVal strAlias As String, Optional nFromPos As Long = 0)
  On Error Resume Next
  mciSendString "play " & strAlias & " from " & CStr(nFromPos), 0, 0, 0
  mciSendString "put " & strAlias & " destination", 0, 0, 0
End Sub
 
  • Mp3 Abspielen mit C Beitrag #17
Anno1989

Anno1989

Bekanntes Mitglied
Dabei seit
30.04.2006
Beiträge
1.293
Reaktionspunkte
0
Ort
NRW
Ja, danke, habe die Befehle nachgesehen, mit Seek gehts super, das Funktioniert jetzt alles, ich gucke halt jetzt, wie ich von einer Digital Kamera aufnhemen kann.:ja:
 
Thema:

Mp3 Abspielen mit C

ANGEBOTE & SPONSOREN

https://www.mofapower.de/

Statistik des Forums

Themen
213.179
Beiträge
1.579.172
Mitglieder
55.878
Neuestes Mitglied
Satan666
Oben