ソースから Qt Multimedia をビルドする

このページでは、Qt Multimedia の設定とビルドについて説明します。この説明は、Qt Configure Options の概要と同様に、あなたのプラットフォームのビルド要件を指定するBuilding Qt Sourcesに精通していることを前提としています。Qt Multimedia モジュールに関連するプラットフォーム固有の考慮事項については、以下のプラットフォームに関する注意事項を参照してください。

ソースからのビルド

全機能をサポートした Qt Multimedia のビルドは、ほとんどのプラットフォームでFFmpegヘッダーとライブラリに依存しています。Qt Multimedia FFmpeg メディアバックエンドなしで Qt Multimedia をビルドすることは可能ですが、これは FFmpeg バックエンドがサポートされていないプラットフォーム用にビルドする場合にのみ推奨されます。

Qt Multimedia のビルドに必要な FFmpeg 開発者ライブラリは、ソースからビルドするか、バイナリパッケージとしてダウンロードできます。Qt Multimedia は、FFmpeg ライブラリへの静的リンクまたは動的リンクのいずれかを使用できます。デフォルトのバックエンドとして、FFmpegにリストされているFFmpegの同じメジャーバージョンを使用することをお勧めします。

FFmpegをサポートしてQt Multimediaをビルドするには、Qtをビルドするときにconfigureコマンドラインで-DFFMPEG_DIR CMake変数を指定します。通常のconfigure引数とCMakeパラメータを区切る-- セパレータに注意してください。

qt-source/configure -- -DFFMPEG_DIR=<FFMPEG_DIR>

ここで、<FFMPEG_DIR> は FFmpeg のインクルード、lib、bin ディレクトリを含むディレクトリです。FFmpegなしでQt Multimediaをビルドするには、<FFMPEG_DIR> 変数を省略するか、-no-feature-ffmpeg configureオプションを指定します。

Qtのすべてのサブモジュールをビルドしたくない場合は、-submodules configureオプションを使ってconfigureとビルドの時間を短縮できます。これは Qt Multimedia とその依存関係のみをビルドするように設定します。

qt-source/configure -submodules qtmultimedia -- -DFFMPEG_DIR=<FFMPEG_DIR>

共有ライブラリ(ダイナミックリンク)を使ってビルドされた FFmpeg に対して Qt Multimedia を設定する場合、テストを実行したりサンプルを使用したりするには、FFmpeg 共有ライブラリがモジュールローダーの検索パスになければなりません。

注意: Qt Multimedia では、FFmpeg メディアバックエンドを使用するために、実行時に FFmpeg avformat、avcodec、swresample、swscale、avutil ライブラリが必要です。アプリケーションの起動時にこれらのダイナミック・ライブラリが1つ以上見つからない場合、FFmpegメディアバックエンドはロードに失敗し、システムはネイティブバックエンドをロードしようとします。Qt Multimediaはネイティブバックエンドほど多くの機能をサポートしていません。

これらのライブラリがまだpath にない場合は、-DQT_DEPLOY_FFMPEG=ON configure オプションを指定してください。このオプションを有効にすると、ビルドとインストールのステップで、必要なFFmpegバイナリがQtのインストールディレクトリにコピーされます:

qt-source/configure -submodules qtmultimedia -- -DFFMPEG_DIR=<FFMPEG_DIR> -DQT_DEPLOY_FFMPEG=ON

Qt Multimediaを設定した後、configureの概要(config.summaryファイルにある)を注意深く確認してください。FFmpegが "Plugin "セクションの下にあることを確認できます。その後、Qt ソースのビルドで説明されている通常のビルドとインストールの手順に従ってください。

プラットフォーム

Linux

  • FFmpeg を有効にして Qt Multimedia を設定する場合、pulseaudio 開発パッケージが必要です。このパッケージがないと、FFmpeg は認識されません。
  • VAAPI サポートでビルドされたバージョンの FFmpeg を使用する場合、ハードウェア・テクスチャ変換を可能にするために、VAAPI サポートで Qt Multimedia をビルドすることをお勧めします。VAAPI サポート付きの Qt Multimedia を設定するには、VAAPI 開発者ライブラリがシステムにインストールされている必要があります。config.summaryファイルを見て、"Hardware acceleration and features "セクションでVAAPIサポートが有効になっていることを確認してください。
  • GStreamer バックエンドで Qt Multimedia を設定する場合、GStreamer v1.20 が最小要件です。ただし、可能であれば最新の安定した GStreamer アップストリームリリースを使用することをお勧めします。

©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。