summaryrefslogtreecommitdiff
path: root/sd/source/ui/view/drviews3.cxx
diff options
context:
space:
mode:
authorMichael Weghorn <m.weghorn@posteo.de>2024-05-30 13:24:02 +0200
committerMichael Weghorn <m.weghorn@posteo.de>2024-05-31 09:24:01 +0200
commitf04e711ea34ad3ad5ee642047be5d56a18fa0b53 (patch)
treeda72793b4016a307acb2355a77877a4f01af1049 /sd/source/ui/view/drviews3.cxx
parent2269b418f7af598ff8194acb9929c8bd6c4baeb1 (diff)
tdf#145735 qt avmedia: Implement frame grabber
Add a new `QtFrameGrabber` class that implements the `css::media::XFrameGrabber` interface and return an instance of it in `QtPlayer::createFrameGrabber`. As there seems to be no direct way to retrieve the image/frame of a video at a certain point in time, create a separate `QMediaPlayer` instance for the `QtFrameGrabber`, set a video sink, connect to its `&QVideoSink::videoFrameChanged` signal and start playing the video (and stop it again once the first frame has been received) in order to retrieve a corresponding frame. From that `QVideoFrame`, a `QImage` can be retrieved that can then be converted to an `XGraphic`. With this in place, a frame from the actual video is now displaced in Impress in non-presentation mode instead of just a generic "video icon" placeholder when opening a presentation containing a video, (e.g. attachment 145517 from tdf#120452) when the qt6 VCL plugin is in use. Change-Id: I3bba3c0fb62a219ac632ceed03ec17f9078f18d0 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/168255 Tested-by: Jenkins Reviewed-by: Michael Weghorn <m.weghorn@posteo.de>
Diffstat (limited to 'sd/source/ui/view/drviews3.cxx')
0 files changed, 0 insertions, 0 deletions