3

Qt 5.1 APIで曲の長さを取得するにはどうすればよいですか? メタデータを使用して読み取ることができると思いますがLength、このメタデータがすべてのオーディオ ファイルで利用できるかどうかはわかりません。

4

2 に答える 2

4

duration物件をお探しのようです。

これは QML ソリューションになります。

期間 : 整数

このプロパティは、メディアの継続時間をミリ秒単位で保持します。

メディアの継続時間が固定されていない場合 (ライブ ストリームなど)、これは 0 になります。

これは C++ ソリューションになります。

qint64 QAudioBuffer::duration() const

このバッファ内のオーディオの長さをマイクロ秒単位で返します。

これは /l format() と frameCount() に依存します。

于 2013-12-29T17:54:28.327 に答える
0

これを実現するもう 1 つの方法は、 を使用することですQMediaPlayer。例は次のとおりです。

QMediaPlayer *player = new QMediaPlayer;
player->setMedia(QUrl::fromLocalFile("C:/Users/Music/mySong.mp4"));
qDebug()<<"Song duration: "<<player->duration();

これが役立つことを願っています。

于 2016-08-23T16:52:47.697 に答える