このページでは

Video QML Type

指定した動画を再生するための便利な型です。詳細...

Import Statement: import QtMultimedia
Inherits:

Item

プロパティ

信号

方法

詳細な説明

Video は、MediaPlayer とVideoOutput の機能を1つに統合した利便性の高い型です。これにより、複数の型を宣言することなく、シンプルな動画再生機能を提供します。

以下は、シーン内で動画再生を実装するためのサンプルコードです。

Video {
    id: video
    width : 800
    height : 600
    source: "video.avi"

    MouseArea {
        anchors.fill: parent
        onClicked: {
            video.play()
        }
    }

    focus: true
    Keys.onSpacePressed: video.playbackState == MediaPlayer.PlayingState ? video.pause() : video.play()
    Keys.onLeftPressed: video.position = video.position - 5000
    Keys.onRightPressed: video.position = video.position + 5000
}

ソースファイル「video.avi 」は、「MouseArea 」の親要素をクリックすると再生されます。動画は800×600ピクセルの領域で再生され、そのid プロパティの値は「video」になっています。

Keys に対するシグナルが定義されているため、次のボタンを押すと:

  • Spacebar は一時停止ボタンの切り替えを行います。
  • Left Arrow 動画の現在位置を5秒前に戻します。
  • Right Arrow 動画の現在位置を5秒先へ進めます。

Videoは、変換なし、引き伸ばし、および均一にスケーリングされた動画表示をサポートしています。均一にスケーリングされた表示の詳細については、fillMode プロパティの説明を参照してください。

「 MediaPlayer 」および「VideoOutput 」も参照してください 。

プロパティのドキュメント

autoPlay : bool [since 6.7]

このプロパティは、メディアが読み込まれた後に自動的に再生を開始するかどうかを制御します。デフォルトはfalse です。

このプロパティは Qt 6.7 で導入されました。

bufferProgress : real

このプロパティは、データバッファが現在どの程度埋まっているかを、0.0(空)から1.0(満杯)までの値で表します。

duration : int

このプロパティには、メディアの再生時間がミリ秒単位で格納されます。

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

endOfStreamPolicy : enumeration [since 6.9]

このプロパティは、ビデオストリームが終了した際に適用されるポリシーを指定します。

endOfStreamPolicy には、以下のいずれかを指定できます:

定数説明
ClearOutputビデオ出力がクリアされます。
KeepLastFrameビデオ出力には最後のフレームが引き続き表示されます。出力を手動でクリアするには、clearOutput() メソッドを使用してください。

デフォルト値は `VideoOutput.ClearOutput` です。

このプロパティは Qt 6.9 で導入されました。

error : enumeration

このプロパティは、動画のエラー状態を保持します。以下のいずれかになります:

  • MediaPlayer.NoError - 現在、エラーは発生していません。
  • MediaPlayer.ResourceError - リソースの割り当てに問題があり、動画を再生できません。
  • MediaPlayer.FormatError - 動画の形式がサポートされていません。
  • MediaPlayer.xml-ph-0000@deepl.internal - 現在、エラーは発生していません。.ResourceError - ネットワークの問題により、動画を再生できません。
  • MediaPlayer.AccessDenied - 権限が不十分なため、動画を再生できません。
  • MediaPlayer.ServiceMissing - メディアサービスのインスタンス化に失敗したため、動画を再生できません。

errorString : string

このプロパティには、現在のエラー状態をより詳細に説明する文字列が格納されています。

fillMode : enumeration

このプロパティを設定して、対象領域に合わせて動画をどのように拡大・縮小するかを指定します。

  • VideoOutput.Stretch - 動画は、
  • VideoOutput.PreserveAspectFit - 動画をトリミングせずに、均一に拡大縮小して領域に収めます
  • VideoOutput.PreserveAspectCrop - 動画を均一に拡大縮小して領域を埋め尽くし、必要に応じてトリミングします

この型は QML での利便性を目的としているため、列挙型を直接サポートしていません。そのため、VideoOutput の列挙型を使用して、利用可能なフィットモードにアクセスします。

デフォルトのフィリングモードは preserveAspectFit です。

hasAudio : bool

このプロパティは、現在のメディアに音声コンテンツが含まれているかどうかを表します。

hasVideo : bool

このプロパティは、現在のメディアに動画コンテンツが含まれているかどうかを表します。

loops : int

メディアの再生が停止するまでの再生回数を指定します。「MediaPlayer 」に設定します。「Infinite」に設定すると、現在のメディアファイルを無限にループ再生します。

デフォルト値は「1 」です。このプロパティを「0 」に設定しても効果はありません。

metaData : mediaMetaData

このプロパティには、現在のメディアに関するメタデータが格納されています。

各メタデータキーの詳細については、MediaPlayer.metaData を参照してください。

mediaMetaDataも参照してください 。

mirrored : int

表示されるビデオを垂直軸を中心に反転させるかどうかを指定します。反転処理は、orientation の後に適用されます。デフォルト値はfalse です。

muted : bool

このプロパティは、オーディオ出力がミュートされているかどうかにかかわらず有効です。

orientation : int [since 6.9]

このプロパティは、ディスプレイ上でY軸が下向きとなる動画座標系において、表示される動画が時計回りに回転する角度(度単位)を指定します。この向き変換は、mirrored の処理の前に適用されます。

90 の倍数(0、90、-90、180、270など)のみがサポートされており、それ以外の値は無視されます。

デフォルト値は0 です。

このプロパティは Qt 6.9 で導入されました。

playbackRate : real

このプロパティは、動画の再生速度を標準速度に対する倍率として保持します。

playbackState : enumeration

この読み取り専用プロパティは、メディアの再生状態を示します。

  • MediaPlayer.PlayingState - メディアが再生中です
  • MediaPlayer.PausedState - メディアが一時停止中
  • MediaPlayer.StoppedState - メディアの再生が停止している

デフォルトの状態は、MediaPlayer.StoppedState です。

position : int

このプロパティは、現在の再生位置をミリ秒単位で保持します。

seekable : bool

このプロパティは、動画の再生位置を変更できるかどうかを示します。

true の場合、seek() メソッドを呼び出したり、position プロパティを変更したりすると、再生位置が新しい位置にスキップされます。

source : url

このプロパティには、メディアのソースURLが格納されます。

volume : real

このプロパティは、オーディオの音量を保持します。

音量は、0.0 (無音)から1.0 (最大音量)まで線形にスケーリングされます。この範囲外の値はクリップされます。

デフォルトの音量は1.0 です。

UI の音量コントロールは、通常、非線形にスケーリングされるべきです。たとえば、対数スケールを使用すると、知覚される音量が線形に変化します。これは、ユーザーが音量コントロールに通常期待する動作です。詳細については、QtAudio::convertVolume() を参照してください。

Signal ドキュメント

errorOccurred(error, errorString)

このシグナルは、error が発生した際に発信されます。errorString パラメータには、エラーに関するより詳細な情報が含まれている場合があります。

注: 対応するハンドラは onErrorOccurred です。

paused()

このシグナルは、再生が一時停止されたときに発生します。

注: 対応するハンドラは onPaused です。

playing()

このシグナルは、再生が開始または再開されたときに発生します。

注: 対応するハンドラは `onPlaying` です。

stopped()

このシグナルは、再生が停止されたときに発生します。

注: 対応するハンドラは onStopped です。

メソッドのドキュメント

[since 6.9] clearOutput()

現在のビデオフレームを削除して、ビデオ出力をクリアします。このメソッドは、endOfStreamPolicy のVideoプロパティがKeepLastFrame に設定された状態でビデオストリームが終了した後、最後のビデオフレームを削除する必要がある場合に推奨されます。

このメソッドは Qt 6.9 で導入されました。

pause()

メディアの再生を一時停止します。

play()

メディアの再生を開始します。

seek(offset)

seekable プロパティがtrueの場合、現在の再生位置をoffset に移動します。

「 seekable 」および「position 」も参照してください 。

stop()

メディアの再生を停止します。

© 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.