このページでは

メディアプレーヤーの例

Qt Widgets を使ってオーディオとビデオを再生する。

メディアプレーヤーは、様々なコーデックを使用してオーディオとビデオファイルを再生することができるシンプルなマルチメディアプレーヤーを示しています。

例の実行

からサンプルを実行するには Qt Creatorからサンプルを実行するには、Welcome モードを開き、Examples からサンプルを選択します。詳細については、Qt Creator:Tutorialを参照してください:ビルドと実行を参照してください。

この例では、QVideoWidget に渡されたQMediaPlayer オブジェクトを使用して、ビデオ出力を制御します。アプリケーションにプレイリスト機能を持たせるために、QMediaPlaylistオブジェクトも使用しています。QMediaPlaylist は Qt 6 で API から削除されましたが、このサンプルにはその実装が含まれています。

オーディオレベルメーターは、再生中にピークレベルとRMSレベルを表示します。これは、QAudioBufferOutputQMediaPlayer に設定し、それが発するQAudioBuffer をそれぞれ別のスレッドで処理し、QWidget::paintEvent を通して値を視覚化することで実装されています。

ダイアログの再生や停止などのさまざまな機能をアクティブにするために、ボタンがクリッ クされたイベントはplay()とstop()シグナルを発し、これらはQMediaPlayer のplay()とstop()スロットに接続されています。

connect(controls, SIGNAL(play()), player, SLOT(play()));
connect(controls, SIGNAL(pause()), player, SLOT(pause()));
connect(controls, SIGNAL(stop()), player, SLOT(stop()));

ボリュームを取得することができます。

controls->setVolume(player->volume());

ウィジェットの'volume'を変更することで、音量を変更することができます。

connect(controls, SIGNAL(changeVolume(int)), player, SLOT(setVolume(int)));

この例では、QVideoWidget オブジェクトを使って、ビデオ・プロパティを変更することもできます。ボタンを1回クリックするだけで、フルスクリーンモードにすることができます。

サンプルプロジェクト @ code.qt.io

© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.