Spec-Zone.ru › Qt 5.11

Класс QVideoSurfaceFormat

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

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

Общедоступные типы

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

Общедоступные функции

QVideoSurfaceFormat()
QVideoSurfaceFormat(const QSize &size, QVideoFrame::PixelFormat format, QAbstractVideoBuffer::HandleType type = QAbstractVideoBuffer::NoHandle)
QVideoSurfaceFormat(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)

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

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

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

Основные свойства видеопотока, необходимые для настройки поверхности видео, — это формат пикселей, заданный функцией 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()

Создаёт формат видеопотока по умолчанию.

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

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

QVideoSurfaceFormat::QVideoSurfaceFormat(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)

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

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

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

void QVideoSurfaceFormat::setMirrored(bool mirrored)

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

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

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

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

void QVideoSurfaceFormat::setPixelAspectRatio(const QSize &ratio)

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

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

void QVideoSurfaceFormat::setPixelAspectRatio(int horizontal, int 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, если они одинаковые.

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

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

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/archives/qt-5.11/qvideosurfaceformat.html

Spec-Zone.ru

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