Ik ben al een tijdje op zoek naar een makkelijke manier om MP3's af te spelen en ben tot een aantal niet- en halfwerkende oplossingen gekomen. Wat ik uiteindelijk wil is dat ik iets zo simpel als dit kan doen:
Meer niet. Ik heb geen pauze/stop nodig, geen feedback, niks. Gewoon mp3tje afspelen en weglopen, bij wijze van spreken.
Ik heb er zelf eigenlijk al veel te veel energie in gestoken, dus om te voorkomen dat jullie al mijn niet-werkende oplossingen gaan aanbieden, een overzichtje van wat niet werkte:
Nootje: ik wil sowieso geen afhankelijkheid van allerlei vage componenten die stuk kunnen gaan, zoals WMP of ActiveMovie, of dat soort crap.
Weet iemand een oplossing voor mijn probleem? Denk bij die oplossing eraan dat het weleens zou kunnen dat ik geen filename aan de "player" wil geven, maar een stream
C#:
1
| Mp3.Play(filename); |
Meer niet. Ik heb geen pauze/stop nodig, geen feedback, niks. Gewoon mp3tje afspelen en weglopen, bij wijze van spreken.
Ik heb er zelf eigenlijk al veel te veel energie in gestoken, dus om te voorkomen dat jullie al mijn niet-werkende oplossingen gaan aanbieden, een overzichtje van wat niet werkte:
- Via MCI werkte niet omdat dat standaard crasht. Zet ik de target platform op x86, krijg ik steevast errorcodes terug.
- QuartzTypeLib gevonden, maar dat werkte maar ten dele. Niemand kan precies vertellen wat het is, wie de dll heeft, wat de licentie is, of waar het vandaan komt, maar ook Quartz vertoonde problemen. In eerste instantie gaf hij het DirectShow filter (ffdshow in mijn geval) niet vrij, wat resulteerde in 349283 icoontjes in de system tray, later bleef de library steevast crashen.
- Mp3Sharp geprobeerd. Die werkt nog het minst slecht, maar ik vind em wel belachelijk ingewikkeld. Je hebt eerst 4 classes nodig en dan nog een 3 streams om een mp3tje afgespeeld te krijgen. En omdat het via DirectSound loopt, schokt het (?). Ohja, en het geeft vreemde exception die kennelijk genegeerd kunnen worden. En het werkt ook alléén met target=x86.
- Commerciele library geprobeerd (ben de naam vergeten), maar het "free for non-commercial" idee betekent een nag-screen. Exit dus.
- MediaElement uit WPF geprobeerd te integreren, maar die crasht of geeft geen geluid. Laat maar dus, want dat is eigenlijk wel een hele slechte oplossing (want het gaat om een normale WinForms app, en geen WPF).
Nootje: ik wil sowieso geen afhankelijkheid van allerlei vage componenten die stuk kunnen gaan, zoals WMP of ActiveMovie, of dat soort crap.
Weet iemand een oplossing voor mijn probleem? Denk bij die oplossing eraan dat het weleens zou kunnen dat ik geen filename aan de "player" wil geven, maar een stream
日本!🎌