How to get length of a song using Qt 5.1?

audio, c++, qt, qt5, qtmultimedia

Solution

You seem to be looking for the `duration` property.

This would be the QML solution:

duration : int

This property holds the duration of the media in milliseconds.

If the media doesn't have a fixed duration (a live stream for example) this will be 0.

This would be the C++ solution:

qint64 QAudioBuffer::duration() const

Returns the duration of audio in this buffer, in microseconds.

This depends on the /l format(), and the frameCount().

Problem

How can I get the length of a song in Qt 5.1 API? I think I can read it using `Length` metadata but I'm not sure if this metadata will be available for all audio files.

Original source