Spec-Zone.ru › Qt 5.15

Класс QVideoSurfaceFormat

Класс QVideoSurfaceFormat задаёт формат потока для поверхности видео-представления. Подробнее...

Заголовок: #include <QVideoSurfaceFormat>
qmake: QT += multimedia
  • Список всех членов, включая унаследованные

Общие типы

Перечисление Direction { TopToBottom, BottomToTop }
Перечисление YCbCrColorSpace { YCbCr_Undefined, YCbCr_BT601, YCbCr_BT709, YCbCr_xvYCC601, YCbCr_xvYCC709, YCbCr_JPEG }

Открытые функции

QVideoSurfaceFormat(const QVideoSurfaceFormat &other)
QVideoSurfaceFormat(const QSize &size, QVideoFrame::PixelFormat format, QAbstractVideoBuffer::HandleType type = QAbstractVideoBuffer::NoHandle)
QVideoSurfaceFormat()
QVideoSurfaceFormat & operator=(const QVideoSurfaceFormat &other)
~QVideoSurfaceFormat()
int frameHeight() const
qreal frameRate() const
QSize frameSize() const
int frameWidth() const
QAbstractVideoBuffer::HandleType handleType() const
bool isMirrored() const
bool isValid() const
QSize pixelAspectRatio() const
QVideoFrame::PixelFormat pixelFormat() const
QVariant property(const char *name) const
QList<QByteArray> propertyNames() const
QVideoSurfaceFormat::Direction scanLineDirection() const
void setFrameRate(qreal rate)
void setFrameSize(const QSize &size)
void setFrameSize(int width, int height)
void setMirrored(bool mirrored)
void setPixelAspectRatio(const QSize &ratio)
void setPixelAspectRatio(int horizontal, int vertical)
void setProperty(const char *name, const QVariant &value)
void setScanLineDirection(QVideoSurfaceFormat::Direction direction)
void setViewport(const QRect &viewport)
void setYCbCrColorSpace(QVideoSurfaceFormat::YCbCrColorSpace space)
QSize sizeHint() const
QRect viewport() const
QVideoSurfaceFormat::YCbCrColorSpace yCbCrColorSpace() const
bool operator!=(const QVideoSurfaceFormat &other) const
bool operator==(const QVideoSurfaceFormat &other) const

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

Поверхность видео отображает поток видео-кадров. Формат поверхности описывает тип кадров и определяет, как они должны быть представлены.

Основные свойства видеопотока, необходимые для настройки поверхности видео, — это формат пикселей, заданный функцией pixelFormat(), и размеры кадра, заданные функцией frameSize().

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

Область кадра, которая фактически отображается на поверхности видео, задаётся свойством viewport(). Поток может иметь область просмотра меньше всего кадра, чтобы разрешить воспроизведение видео с размерами меньше оптимального размера видеокадра. Например, ширина кадра может быть расширена, чтобы начало каждой строки сканирования было выровнено по байту.

Другие распространённые свойства — pixelAspectRatio(), scanLineDirection() и frameRate(). Кроме того, поток может иметь некоторые дополнительные свойства, специфичные для типа, которые перечислены функцией dynamicPropertyNames() и к которым можно получить доступ с помощью функций property() и setProperty().

Документация по типам членов

Перечисление QVideoSurfaceFormat::Direction

Перечисляет направление расположения строк сканирования видео.

Постоянная Значение Описание
QVideoSurfaceFormat::TopToBottom 0 Строки сканирования расположены сверху кадра вниз.
QVideoSurfaceFormat::BottomToTop 1 Строки сканирования расположены снизу кадра вверх.

Перечисление QVideoSurfaceFormat::YCbCrColorSpace

Перечисляет цветовое пространство Y'CbCr видеокадров.

Константа Значение Описание
QVideoSurfaceFormat::YCbCr_Undefined 0 Пространство цветов не указано.
QVideoSurfaceFormat::YCbCr_BT601 1 Пространство цветов Y'CbCr, определённое рекомендацией ITU-R BT.601, с диапазоном значений Y от 16 до 235 и диапазоном Cb/Cr от 16 до 240. Используется в видео стандартного разрешения.
QVideoSurfaceFormat::YCbCr_BT709 2 Пространство цветов Y'CbCr, определённое рекомендацией ITU-R BT.709, с тем же диапазоном значений, что и YCbCr_BT601. Используется для HDTV.
QVideoSurfaceFormat::YCbCr_xvYCC601 3 Пространство цветов BT.601 с расширенным диапазоном значений до 0-255. Совместимо со стандартом BT.601 и использует значения за пределами диапазона BT.601 для представления более широкого набора цветов.
QVideoSurfaceFormat::YCbCr_xvYCC709 4 Пространство цветов BT.709 с расширенным диапазоном значений до 0-255.
QVideoSurfaceFormat::YCbCr_JPEG 5 Полное пространство цветов Y'CbCr, используемое в файлах JPEG.

Документация функций-членов

QVideoSurfaceFormat::QVideoSurfaceFormat(const QVideoSurfaceFormat &other)

Создаёт копию other.

QVideoSurfaceFormat::QVideoSurfaceFormat(const QSize &size, QVideoFrame::PixelFormat format, QAbstractVideoBuffer::HandleType type = QAbstractVideoBuffer::NoHandle)

Создаёт описание потока, который принимает буферы типа type с заданными размерами кадра size и форматом пикселей format.

QVideoSurfaceFormat::QVideoSurfaceFormat()

Создаёт пустой формат видеопотока.

QVideoSurfaceFormat &QVideoSurfaceFormat::operator=(const QVideoSurfaceFormat &other)

Присваивает значения other этому объекту.

QVideoSurfaceFormat::~QVideoSurfaceFormat()

Удаляет описание видеопотока.

int QVideoSurfaceFormat::frameHeight() const

Возвращает высоту кадра в видеопотоке.

qreal QVideoSurfaceFormat::frameRate() const

Возвращает частоту кадров видеопотока в кадрах в секунду.

См. также setFrameRate().

QSize QVideoSurfaceFormat::frameSize() const

Возвращает размеры кадров в видеопотоке.

См. также setFrameSize(), frameWidth() и frameHeight().

int QVideoSurfaceFormat::frameWidth() const

Возвращает ширину кадров в видеопотоке.

См. также frameSize() и frameHeight().

QAbstractVideoBuffer::HandleType QVideoSurfaceFormat::handleType() const

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

Если тип дескриптора QAbstractVideoBuffer::NoHandle, буферы с любым типом дескриптора являются допустимыми, при условии, что они могут быть отображены с флагом QAbstractVideoBuffer::ReadOnly. Если handleType() не равен QAbstractVideoBuffer::NoHandle, то тип дескриптора буфера должен совпадать с типом дескриптора формата поверхности.

bool QVideoSurfaceFormat::isMirrored() const

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

Примечание: Зеркальное отображение здесь отличается от QImage::mirrored, так как вертикально зеркальное отображение QImage будет зеркально отображаться относительно оси x.

Эта функция была добавлена в Qt 5.11.

bool QVideoSurfaceFormat::isValid() const

Определяет, имеет ли формат видеоповерхности допустимый формат пикселей и размер кадра.

Возвращает true, если формат корректен, и false в противном случае.

QSize QVideoSurfaceFormat::pixelAspectRatio() const

Возвращает соотношение сторон пикселей видеопотока.

См. также setPixelAspectRatio().

QVideoFrame::PixelFormat QVideoSurfaceFormat::pixelFormat() const

Возвращает формат пикселей кадров в видеопотоке.

QVariant QVideoSurfaceFormat::property(const char *name) const

Возвращает значение свойства видеоформата с именем name.

См. также setProperty().

QList<QByteArray> QVideoSurfaceFormat::propertyNames() const

Возвращает список имён динамических свойств видеоформата.

QVideoSurfaceFormat::Direction QVideoSurfaceFormat::scanLineDirection() const

Возвращает направление сканирования строк.

См. также setScanLineDirection().

void QVideoSurfaceFormat::setFrameRate(qreal rate)

Устанавливает частоту кадров видеопотока в кадрах в секунду.

См. также frameRate().

void QVideoSurfaceFormat::setFrameSize(const QSize &size)

Устанавливает размер кадров в видеопотоке на size.

Это сбросит viewport() на заполнение всего кадра.

См. также frameSize().

void QVideoSurfaceFormat::setFrameSize(int width, int height)

Это перегруженная функция.

Устанавливает ширину width и высоту height кадров в видеопотоке.

Это сбросит viewport() на заполнение всего кадра.

void QVideoSurfaceFormat::setMirrored(bool mirrored)

Устанавливает, зеркально ли отображается поверхность относительно вертикальной оси. Это обычно необходимо для видеокадров, поступающих от передней камеры мобильного устройства. Значение по умолчанию – false.

Примечание: Зеркальное отображение здесь отличается от QImage::mirrored, так как вертикально зеркальное отображение QImage будет зеркально отображаться относительно оси x.

См. также isMirrored().

void QVideoSurfaceFormat::setPixelAspectRatio(const QSize &ratio)

Устанавливает соотношение сторон пикселей видеопотока.

См. также pixelAspectRatio().

void QVideoSurfaceFormat::setPixelAspectRatio(int horizontal, int vertical)

Это перегруженная функция.

Устанавливает значения horizontal и vertical соотношения сторон пикселей видеопотока.

void QVideoSurfaceFormat::setProperty(const char *name, const QVariant &value)

Устанавливает свойство видеоформата с именем name на значение value.

Попытка установить только для чтения свойство будет проигнорирована.

См. также property().

void QVideoSurfaceFormat::setScanLineDirection(QVideoSurfaceFormat::Direction direction)

Устанавливает направление сканирования строк.

См. также scanLineDirection().

void QVideoSurfaceFormat::setViewport(const QRect &viewport)

Устанавливает область просмотра видеопотока на viewport.

См. также viewport().

void QVideoSurfaceFormat::setYCbCrColorSpace(QVideoSurfaceFormat::YCbCrColorSpace space)

Устанавливает пространство цветов Y'CbCr для видеопотока. Используется только с типами кадров YUV в сыром формате.

См. также yCbCrColorSpace().

QSize QVideoSurfaceFormat::sizeHint() const

Возвращает рекомендуемый размер видеопотока в пикселях.

Это размер области просмотра, масштабированный в соответствии с соотношением сторон пикселей.

QRect QVideoSurfaceFormat::viewport() const

Возвращает область просмотра видеопотока.

Область просмотра — это область видеокадра, которая фактически отображается.

По умолчанию область просмотра охватывает весь кадр.

См. также setViewport().

QVideoSurfaceFormat::YCbCrColorSpace QVideoSurfaceFormat::yCbCrColorSpace() const

Возвращает цветовое пространство Y'CbCr видеопотока.

См. также setYCbCrColorSpace().

bool QVideoSurfaceFormat::operator!=(const QVideoSurfaceFormat &other) const

Возвращает true, если other отличается от этого видеоформата, и false, если они одинаковы.

bool QVideoSurfaceFormat::operator==(const QVideoSurfaceFormat &other) const

Возвращает true, если other совпадает с этим видеоформатом, и false, если они отличаются.

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

Spec-Zone.ru

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