How to force Qt updating/repaiting a hidden QWidget for video capturing?
I want to capture (recording a video) of a QWidget. For capturing the widget I use the given window ID and gstreamer. However when the widget is hidden, the capturing process stopps. It seems that there isnt any data from the widget.
When the widget becomes visible again, the capturing resumes.
I tried to keep running QWidget update/repait on the hidden widget.
I also tried to override isVisible() and isHidden() methods of the QWidget. Still no image when the widget is hidden.
Could it be a Qt related issue, or is it X11 related?
qt gstreamer x11 video-capture
add a comment |
I want to capture (recording a video) of a QWidget. For capturing the widget I use the given window ID and gstreamer. However when the widget is hidden, the capturing process stopps. It seems that there isnt any data from the widget.
When the widget becomes visible again, the capturing resumes.
I tried to keep running QWidget update/repait on the hidden widget.
I also tried to override isVisible() and isHidden() methods of the QWidget. Still no image when the widget is hidden.
Could it be a Qt related issue, or is it X11 related?
qt gstreamer x11 video-capture
add a comment |
I want to capture (recording a video) of a QWidget. For capturing the widget I use the given window ID and gstreamer. However when the widget is hidden, the capturing process stopps. It seems that there isnt any data from the widget.
When the widget becomes visible again, the capturing resumes.
I tried to keep running QWidget update/repait on the hidden widget.
I also tried to override isVisible() and isHidden() methods of the QWidget. Still no image when the widget is hidden.
Could it be a Qt related issue, or is it X11 related?
qt gstreamer x11 video-capture
I want to capture (recording a video) of a QWidget. For capturing the widget I use the given window ID and gstreamer. However when the widget is hidden, the capturing process stopps. It seems that there isnt any data from the widget.
When the widget becomes visible again, the capturing resumes.
I tried to keep running QWidget update/repait on the hidden widget.
I also tried to override isVisible() and isHidden() methods of the QWidget. Still no image when the widget is hidden.
Could it be a Qt related issue, or is it X11 related?
qt gstreamer x11 video-capture
qt gstreamer x11 video-capture
asked Nov 19 '18 at 13:06
User_12399
186
186
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
One option is to call render
on the QWidget directly while passing in your own QPaintDevice
. You could then pass the pixel data over a pipe or something into Gstreamer.
add a comment |
Your Answer
StackExchange.ifUsing("editor", function () {
StackExchange.using("externalEditor", function () {
StackExchange.using("snippets", function () {
StackExchange.snippets.init();
});
});
}, "code-snippets");
StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "1"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});
function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});
}
});
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53375312%2fhow-to-force-qt-updating-repaiting-a-hidden-qwidget-for-video-capturing%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
One option is to call render
on the QWidget directly while passing in your own QPaintDevice
. You could then pass the pixel data over a pipe or something into Gstreamer.
add a comment |
One option is to call render
on the QWidget directly while passing in your own QPaintDevice
. You could then pass the pixel data over a pipe or something into Gstreamer.
add a comment |
One option is to call render
on the QWidget directly while passing in your own QPaintDevice
. You could then pass the pixel data over a pipe or something into Gstreamer.
One option is to call render
on the QWidget directly while passing in your own QPaintDevice
. You could then pass the pixel data over a pipe or something into Gstreamer.
answered Nov 19 '18 at 13:17
Paul Belanger
1,613512
1,613512
add a comment |
add a comment |
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Some of your past answers have not been well-received, and you're in danger of being blocked from answering.
Please pay close attention to the following guidance:
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53375312%2fhow-to-force-qt-updating-repaiting-a-hidden-qwidget-for-video-capturing%23new-answer', 'question_page');
}
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function () {
StackExchange.helpers.onClickDraftSave('#login-link');
});
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown