When is FMX TMediaPlayer Duration property set between Windows and iOS


I’m using the TMediaPlayer control in a FMX C++ app. Immediately after setting the FileName, I show the value of the Duration property.

MediaPlayer1->FileName = S; // load the mp3
ShowMessage(IntToStr((__int64) Form1->MediaPlayer1->Media->Duration));

When I run the app on Windows, it shows the correct value.

When I run the app on iOS, i get 0 for the Duration. I have to actually start playing the audio (MediaPlayer1->Play();) before I can get the correct result for the Duration.

Why isn’t the Duration set when the FileName is assigned when running on iOS (like it is on Windows)?

Comments are closed.