マルチメディアの概要
Qt におけるマルチメディアのサポートは、Qt Multimediaモジュールによって提供されます。Qt Multimedia モジュールは、メディア再生やカメラデバイスの使用など、プラットフォームのマルチメディア機能を簡単に利用できる豊富な機能セットを提供します。
機能
Qt Multimedia API でできることは以下の通りです:
- 入出力のために生のオーディオデバイスにアクセスする。
- 低遅延サウンドエフェクトの再生
- 3D空間オーディオの再生
- プレイリスト内のメディアファイル(圧縮されたオーディオファイルやビデオファイルなど)の再生。
- オーディオの録音と圧縮
- ビューファインダー、画像キャプチャ、ムービー録画を含むカメラの使用
- オーディオ・メディア・ファイルをメモリにデコードして処理する。
マルチメディアコンポーネント
Qt マルチメディア API は、3 つの主要なコンポーネントに分類されます。各コンポーネントに特化した詳細な情報は、概要のページにあります。また、いくつかのレシピもご覧ください。
- オーディオの概要
- ビデオの概要
- カメラの概要
- スペーシャルオーディオの概要(技術プレビュー)
マルチメディアレシピ
簡単なレシピはこちらの表をご覧ください:
使用例 | 使用例 | QMLタイプ | C++クラス |
---|---|---|---|
効果音の再生 | SoundEffect | QSoundEffect | |
3Dサウンドの再生 | オーディオパン | SpatialSound,AudioEngine | QSpatialSound,QAudioEngine |
エンコードされたオーディオの再生(MP3、AACなど) | プレーヤー | MediaPlayer | QMediaPlayer |
生のオーディオデータを低レイテンシーで再生 | オーディオ出力 | QAudioSink | |
生のオーディオ入力データへのアクセス | スペクトル、オーディオソース | QAudioSource | |
エンコードされたオーディオデータの記録 | オーディオレコーダー | CaptureSession,AudioInput 、MediaRecorder | QMediaCaptureSession QAudioInput 、QMediaRecorder |
オーディオデバイスとビデオデバイスの検出 | オーディオデバイス | MediaDevices,audioDevice 、cameraDevice | QMediaDevices,QAudioDevice 、QCameraDevice |
ビデオ再生 | プレーヤー、メディアプレーヤー | MediaPlayer,VideoOutput 、Video | QMediaPlayer,QVideoWidget 、QGraphicsVideoItem |
オーディオとビデオのキャプチャ | カメラ、レコーダー | CaptureSession Camera,AudioInput VideoOutput | QMediaCaptureSession QCamera, 、QAudioInput QVideoWidget |
写真のキャプチャ | カメラ、レコーダー | CaptureSession,Camera 、ImageCapture | QMediaCaptureSession QCamera 、QImageCapture |
ムービーのキャプチャ | カメラ、レコーダー | CaptureSession,Camera 、MediaRecorder | QMediaCaptureSession QCamera 、QMediaRecorder |
制限事項
Qt Multimedia API は、基本プラットフォームのマルチメディアフレームワークをベースにしています。これは、様々なコーデックやコンテナのサポートがマシンによって異なることを意味します。このサポートは、エンドユーザーが何をインストールしているかに依存します。詳しくはSupported Media Formatsを参照してください。
注意: Qt Multimedia API は、QCoreApplication によって提供される機能に依存しており、Qt Multimedia API を使用して作成されたマルチメディアオブジェクトは、このアプリケーションオブジェクトの有効期間中にのみ使用することができます。したがって、Qt Multimedia API にアクセスする前に、QCoreApplication 、QGuiApplication 、QApplication を作成することが重要です。アプリケーションオブジェクトが再作成された場合、Qtマルチメディアオブジェクトも再作成されていることを確認してください。
以前のバージョンからの変更点
以前 Qt 5 で Qt Multimedia を使用していた場合、何が変わったのか、Qt 6 にコードを移植する際に何を変更する必要があるのかについては、「Qt Multimedia の変更点」を参照してください。
参考ドキュメント
©2024 The Qt Company Ltd. ここに含まれるドキュメントの著作権はそれぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。