Класс QVideoProbe
Класс QVideoProbe позволяет отслеживать воспроизводимые или записываемые видеокадры. Подробнее...
| Заголовок: | #include <QVideoProbe> |
| qmake: | QT += multimedia |
| Наследует: | QObject |
Открытые функции
| QVideoProbe(QObject *parent = nullptr) | |
| virtual | ~QVideoProbe() |
| bool | isActive() const |
| bool | setSource(QMediaObject *source) |
| bool | setSource(QMediaRecorder *mediaRecorder) |
Сигналы
| void | flush() |
| void | videoFrameProbed(const QVideoFrame &frame) |
Подробное описание
QMediaPlayer *player = new QMediaPlayer();
QVideoProbe *probe = new QVideoProbe;
connect(probe, SIGNAL(videoFrameProbed(QVideoFrame)), this, SLOT(processFrame(QVideoFrame)));
probe->setSource(player); // Returns true, hopefully.
player->setVideoOutput(myVideoSurface);
player->setMedia(QUrl::fromLocalFile("observation.mp4"));
player->play(); // Start receiving frames as they get presented to myVideoSurface Этот же подход работает и с объектом QCamera, чтобы получать кадры видоискателя или видео по мере их захвата.
См. также QAudioProbe, QMediaPlayer и QCamera.
Документация по функциям-членам
QVideoProbe::QVideoProbe(QObject *parent = nullptr)
Создает новый класс QVideoProbe с parent. После установки источника для мониторинга с помощью setSource(), сигнал videoFrameProbed() будет испускаться при поступлении видеокадров в объект источника медиа.
[signal] void QVideoProbe::flush()
Этот сигнал должен испускаться при необходимости освободить все кадры. Приложение должно освободить все активные ссылки на видеокадры.
[signal] void QVideoProbe::videoFrameProbed(const QVideoFrame &frame)
Этот сигнал должен испускаться при обработке видео кадра в службе медиа.
[virtual] QVideoProbe::~QVideoProbe()
Уничтожает этот зонд и отключается от любого объекта медиа.
bool QVideoProbe::isActive() const
Возвращает true, если этот зонд следит за чем-либо, или false в противном случае.
Отслеживаемый источник не обязательно должен быть активен.
bool QVideoProbe::setSource(QMediaObject *source)
Устанавливает объект медиа для мониторинга на source.
Если source равен нулю, этот зонд будет деактивирован, и функция вернёт true.
Если объект медиа не поддерживает мониторинг видео, функция вернёт false.
Любые ранее отслеживаемые объекты больше не будут отслеживаться. Передача того же объекта будет проигнорирована, но мониторинг будет продолжаться.
bool QVideoProbe::setSource(QMediaRecorder *mediaRecorder)
Начинает мониторинг заданного mediaRecorder.
Если у mediaRecorder нет связанного с ним объекта медиа, или он равен нулю, этот зонд будет деактивирован, и функция вернёт true.
Если экземпляр рекордера медиа не поддерживает мониторинг видео, функция вернёт false.
Любые ранее отслеживаемые объекты больше не будут отслеживаться. Передача того же объекта будет проигнорирована, но мониторинг будет продолжаться.
© The Qt Company Ltd
Licensed under the GNU Free Documentation License, Version 1.3.
https://doc.qt.io/qt-5.13/qvideoprobe.html