2017-02-27 2 views
0

QWebEngine 프레임에 QPixmap 또는 QImage를 표시하는 가장 효과적이고 효율적인 방법은 무엇인지 알아 내려고합니다.QWebEngine에 QPixmap을 표시하는 방법은 무엇입니까?

목표는 QWebEngine 프레임에 C++ API가있는 사용자 지정 네트워크 카메라에서로드되는 비디오를 최대 효율로 표시하는 것입니다. 따라서 프레임을 디스크에 저장 한 다음 QWebEngine 프레임에로드하는 것은 옵션이 아닙니다.

이전에는 Qt WebKit을 사용하고 있었고 Javascript 객체를 통해 액세스 할 수 있었기 때문에 이전에 Qt WebKit을 사용하고 있었으며 C++로 작성된 QPixmap을로드하는 것이 매우 간단했습니다. 하지만 이제 QWebEngine에 여러 가지 목적으로 인해 관심이 있습니다.

그러나 QWebEngine에서는 프레임 창 개체에 QObject를 직접 첨부 할 수있는 방법이 없다고합니다.

QWebEngine에서 이미지 나 바이트 배열을 전송하는 가장 효율적인 방법은 무엇입니까?

+2

이럴 통해. 위젯을 사용하면 QPixmap을 update() 호출로 일부 레이블로 푸시합니다. QLabel :: setPixmap() 호출을 참조하십시오. QML을 사용하면 큰 문제가 아닙니다. 그리고 나는 그것을 확실히 압니다. UI 스레드의 타이머는 적용 가능한 프레임 속도로 해당 푸시를 수행합니다. 나는 실제로 일부 네트워크 카메라로 정확히 그렇게한다. – AlexanderVX

답변

2

QPixmap을 그리는 가장 빠른 방법 중 하나는 QGraphicsScene :: addPixmap입니다. 그리고 그것은 매우 편안한 길입니다. 아니면 그냥 QLabel에 그려.

QWebEngine과 JS로 픽스맵을 그리는 것은 정말 좋은 생각입니다. WebEngine은 느리고 WebEngine은 큰 Chromium 브라우저이므로 브라우저는 약 60MB 정도입니다.

내 목표는 당신이 당신이 말한에만이 같은 필요하면 우리가 ++ API

는 C가 사용자 정의 네트워크 카메라에서로드되고있는 비디오를 표시하는 것입니다, 당신은 필요가 없습니다 QWebEngine, 오직 당신의 네트워크 방법과 이미지를 얻기위한 QGraphicsScene을 그립니다. 정말 빠르고 동영상에 좋습니다.

하지만 당신은 너무 그것을 원하는 경우, 예를 들어, JS와 붙여 넣기 이미지가 클립 보드 : 모든이 작업에 QWebEngine에 대한 필요가 없습니다

관련 문제