Video QML Type
指定したビデオを表示するための便利な型。詳細...
| Import Statement: | import QtMultimedia |
| Inherits: |
プロパティ
- autoPlay : bool
(since 6.7) - bufferProgress : real
- duration : int
- endOfStreamPolicy : enumeration
(since 6.9) - error : enumeration
- errorString : string
- fillMode : enumeration
- hasAudio : bool
- hasVideo : bool
- loops : int
- metaData : mediaMetaData
- mirrored : int
- muted : bool
- orientation : int
(since 6.9) - playbackRate : real
- playbackState : enumeration
- position : int
- seekable : bool
- source : url
- volume : real
信号
- errorOccurred(error, errorString)
- paused()
- playing()
- stopped()
方法
- clearOutput()
(since 6.9) - pause()
- play()
- seek(offset)
- stop()
詳細説明
Video は、MediaPlayer とVideoOutput の機能をひとつにまとめた便利な型です。複数の型を宣言することなく、シンプルなビデオ再生機能を提供します。
以下は、シーンに動画再生を実装するサンプルコードです。
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.NetworkError - ネットワークの問題で動画を再生できません。
- 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]
このプロパティは、表示されるビデオがビデオ座標で時計回りに回転する角度を度単位で決定する。方向変換は、mirrored の前に適用される。
0、90、-90、180、270 など、90 度の倍数のみがサポートされます。それ以外の場合、指定された値は無視されます。
デフォルト値は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() を参照してください。
信号ドキュメント
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 プロパティが真の場合、現在の再生位置を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.