I use the TMediaPlayer component for playing music.
It works fine with most of my tracks. But it doesn't work with some tracks. When I want to play them, the following error message is shown:
Which is German but roughly means that:
In the project pMusicPlayer.exe an exception of the class EMCIDeviceError occurred. Message: "Error when starting MCI.". Process was stopped. Continue with "Single Command/Statement" or "Start".
The program quits directly after calling the procedure "Play" of TMediaPlayer.
This error occurred with the following file for example:
- file size: 7.40 MB
- duration: 4:02 minutes
- bitrate: 256 kBit/s
I've encoded this file with a bitrate of 128 kBit/s and thus a file size of 3.70 MB: It works fine!
What's wrong with the first file? Windows Media Player or other programs can play it without any problems.
Is it possible that Delphi's TMediaPlayer cannot handle big files (e.g. > 5 MB) or files with a high bitrate (e.g. > 128 kBit/s)?
What can I do to solve the problem?
Additional question: Why can't I use try/except to prevent the message window?
try
Player.Play;
except
showmessage('Cannot be played');
end;
This doesn't work.
Play
method to find the API error code that triggered Delphi to raise that exception. – Tridimensional