Spec-Zone.ru › Qt 5.15

Тип QML VideoOutput

Отображение видео или видоискателя камеры. Подробнее...

Заявление об импорте: import QtMultimedia 5.15
  • Список всех членов, включая унаследованные

Свойства

  • autoOrientation : bool
  • contentRect : rectangle
  • fillMode : перечисление
  • filters : список<объект>
  • flushMode : перечисление
  • orientation : int
  • source : variant
  • sourceRect : rectangle
  • videoSurface : объект

Методы

  • QPointF mapNormalizedPointToItem (const QPointF &point)
  • QRectF mapNormalizedRectToItem(const QRectF &rectangle)
  • QPointF mapPointToItem(const QPointF &point)
  • QPointF mapPointToSource(const QPointF &point)
  • QPointF mapPointToSourceNormalized(const QPointF &point)
  • QRectF mapRectToItem(const QRectF &rectangle)
  • QRectF mapRectToSource(const QRectF &rectangle)
  • QRectF mapRectToSourceNormalized(const QRectF &rectangle)

Подробное описание

Rectangle {
    width: 800
    height: 600
    color: "black"

    MediaPlayer {
        id: player
        source: "file://video.webm"
        autoPlay: true
    }

    VideoOutput {
        id: videoOutput
        source: player
        anchors.fill: parent
    }
}

Элемент VideoOutput поддерживает отображение видео без преобразований, с растяжением и с равномерным масштабированием. Подробное описание растяжения с равномерным масштабированием см. в описании свойства fillMode.

Элемент VideoOutput работает с бэкендами, которые поддерживают либо QVideoRendererControl, либо QVideoWindowControl. Если бэкенд поддерживает только QVideoWindowControl, видео отображается на окне наложения, которое накладывается поверх окна QtQuick. Из-за особенностей окон наложения некоторые функции недоступны для таких бэкендов:

  • Некоторые преобразования, такие как повороты
  • Наличие других элементов QtQuick поверх элемента VideoOutput

Однако большинство бэкендов поддерживают QVideoRendererControl и поэтому не имеют перечисленных выше ограничений.

См. также MediaPlayer и Камера.

Документация по свойствам

autoOrientation : bool

Это свойство позволяет включить и выключить автоматическое определение ориентации видеопотока, чтобы его ориентация всегда соответствовала ориентации экрана. Если autoOrientation включено, свойство orientation перезаписывается.

По умолчанию autoOrientation отключено.

Это свойство было введено в Qt 5.2.

См. также orientation.

contentRect : rectangle

Это свойство содержит координаты элемента области, которая содержала бы видео для рендеринга. При определенных режимах заполнения этот прямоугольник будет больше, чем видимая область элемента VideoOutput.

Это свойство полезно, когда другие координаты заданы относительно размеров источника - это применяется для относительных (нормализованных) координат кадра в диапазоне от 0 до 1.0.

Области за пределами этого будут прозрачными.

См. также mapRectToItem() и mapPointToItem().

fillMode : перечисление

Установите это свойство, чтобы определить, как видео масштабируется для соответствия целевой области.

  • Stretch - видео масштабируется для соответствия.
  • PreserveAspectFit - видео масштабируется равномерно для соответствия без обрезки
  • PreserveAspectCrop - видео масштабируется равномерно для заполнения, с обрезкой при необходимости

По умолчанию режим заполнения - PreserveAspectFit.

filters : список<объект>

Это свойство содержит список видеофильтров, которые применяются к кадрам видео. Порядок фильтров в списке соответствует порядку их вызова для кадров видео. Объекты в списке должны быть экземплярами подкласса QAbstractVideoFilter.

См. также QAbstractVideoFilter.

flushMode : перечисление

Установите это свойство, чтобы определить, что должно отображаться при завершении или остановке воспроизведения.

  • EmptyFrame - очищает выход видео.
  • FirstFrame - отображает первый допустимый кадр.
  • LastFrame - отображает последний допустимый кадр.

По умолчанию режим сброса - EmptyFrame.

Это свойство было введено в Qt 5.13.

orientation : int

В некоторых случаях исходный видеопоток требует определенной ориентации для правильного отображения. Это относится к источникам, таким как видоискатель камеры, где отображаемый видоискатель должен соответствовать реальности, независимо от поворота остальной части пользовательского интерфейса.

Это свойство позволяет применять поворот (шагом в 90 градусов) для компенсации любого поворота пользовательского интерфейса, при положительных значениях против часовой стрелки.

Изменение ориентации также повлияет на отображение координат от источника до области просмотра.

См. также autoOrientation.

source : variant

Это свойство содержит элемент источника, предоставляющий кадры видео, такие как MediaPlayer или камера.

Если вы расширяете собственные классы C++, чтобы взаимодействовать с VideoOutput, вы можете либо предоставить класс на основе QObject со свойством mediaObject, которое экспонирует класс, производный от QMediaObject, имеющий доступный QVideoRendererControl, или предоставить класс на основе QObject со свойством videoSurface, которое может принимать класс на основе QAbstractVideoSurface и может следовать правильному протоколу для передачи QVideoFrames в него.

sourceRect : rectangle

Это свойство содержит область содержимого источника видео, рассматриваемого для рендеринга. Значения находятся в координатах пикселей источника, скорректированных для соотношения сторон пикселей источника.

Обратите внимание, что обычно верхний левый угол этого прямоугольника будет 0,0, а ширина и высота будут шириной и высотой входного содержимого. Только когда у источника видео установлена область просмотра, эти значения будут отличаться.

Настройка ориентации не влияет на этот прямоугольник.

См. также QVideoSurfaceFormat::pixelAspectRatio() и QVideoSurfaceFormat::viewport().

videoSurface : объект

Это свойство содержит базовую поверхность видео, которая может быть использована для рендеринга кадров видео в этот элемент VideoOutput. Это аналогично установке QObject со свойством videoSurface в качестве источника, где эта поверхность видео будет установлена.

Это свойство было введено в Qt 5.15.

См. также source.

Документация по методам

QPointF mapNormalizedPointToItem (const QPointF &point)

В заданных нормализованных координатах point (то есть каждая компонента в диапазоне от 0 до 1.0), возвращает отображенную точку, соответствующую ей (в координатах элемента). Это отображение зависит от ориентации.

В зависимости от режима заполнения, эта точка может находиться за пределами рендерируемого прямоугольника.

QRectF mapNormalizedRectToItem(const QRectF &rectangle)

Для заданного прямоугольника rectangle в нормализованных координатах (то есть каждая компонента в диапазоне от 0 до 1.0), возвращает отображенный прямоугольник, соответствующий ему (в координатах элемента). Это отображение зависит от ориентации.

В зависимости от режима заполнения, этот прямоугольник может выходить за пределы рендерируемого прямоугольника.

QPointF mapPointToItem(const QPointF &point)

Для заданной точки point в координатах источника возвращает соответствующую точку в координатах элемента. Это отображение зависит от ориентации.

В зависимости от режима заполнения, эта точка может находиться за пределами рендерируемого прямоугольника.

QPointF mapPointToSource(const QPointF &point)

При заданной точке point в координатах элемента, вернуть соответствующую точку в координатах источника. Это отображение зависит от ориентации.

Если заданная точка находится за пределами отображаемой области, возвращаемая точка будет за пределами прямоугольника источника.

QPointF mapPointToSourceNormalized(const QPointF &point)

При заданной точке point в координатах элемента, вернуть соответствующую точку в нормализованных координатах источника. Это отображение зависит от ориентации.

Если заданная точка находится за пределами отображаемой области, возвращаемая точка будет за пределами прямоугольника источника. Привязки к границам не выполняется.

QRectF mapRectToItem(const QRectF &rectangle)

При заданном прямоугольнике rectangle в координатах источника, вернуть соответствующий прямоугольник в координатах элемента. Это отображение зависит от ориентации.

В зависимости от режима заливки, этот прямоугольник может выходить за пределы отображаемого прямоугольника.

QRectF mapRectToSource(const QRectF &rectangle)

При заданном прямоугольнике rectangle в координатах элемента, вернуть соответствующий прямоугольник в координатах источника. Это отображение зависит от ориентации.

Это отображение зависит от ориентации.

Если заданная точка находится за пределами отображаемой области, возвращаемая точка будет за пределами прямоугольника источника.

QRectF mapRectToSourceNormalized(const QRectF &rectangle)

При заданном прямоугольнике rectangle в координатах элемента, вернуть соответствующий прямоугольник в нормализованных координатах источника. Это отображение зависит от ориентации.

Это отображение зависит от ориентации.

Если заданная точка находится за пределами отображаемой области, возвращаемая точка будет за пределами прямоугольника источника. Привязки к границам не выполняется.

© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.15/qml-qtmultimedia-videooutput.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API