Video QML Type

指定したビデオを表示するための便利な型。詳細...

Import Statement: import QtMultimedia
Inherits:

Item

プロパティ

信号

方法

詳細説明

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 プロパティの説明を参照してください。

MediaPlayerVideoOutputも参照

プロパティの説明

autoPlay : bool [since 6.7]

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

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


bufferProgress : real

このプロパティは、データバッファが現在どれくらい埋まっているかを保持します。


duration : int

このプロパティは、メディアの継続時間をミリ秒単位で保持します。

メディアの継続時間が決まっていない場合(ライブストリームなど)、これは0になります。


error : enumeration

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

  • MediaPlayerNoError.- 現在のエラーはありません。
  • 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も参照


muted : bool

このプロパティは、オーディオ出力がミュートされているかどうかを保持します。


orientation : int

このプロパティは、表示されているビデオをビデオ座標で時計回りに回転させる角度を度単位で決定する。

0、90、-90、180、270 など、90 度の倍数のみがサポートされ、それ以外の場合、指定された値は無視される。

デフォルト値は0 である。


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)

このシグナルは、errorerrorString パラメータには、エラーの詳細情報が含まれている場合があります。

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


paused()

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

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


playing()

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

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


stopped()

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

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


メソッドの説明

pause()

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


play()

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


seek(offset)

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

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


stop()

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


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