summaryrefslogtreecommitdiffstats
path: root/src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder.cpp
diff options
context:
space:
mode:
authorPiotr Srebrny <piotr.srebrny@qt.io>2022-09-20 13:28:19 +0200
committerPiotr Srebrny <piotr.srebrny@qt.io>2022-10-17 09:47:18 +0200
commit924500f42cf252f31631ae52d08cb99b028f90fb (patch)
tree368a94c95b5c6dc0448fb1fb23b46bfed6eebde7 /src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder.cpp
parent92f6b8ee07853759fddcefeb0e20dfb9152a9cf6 (diff)
Use std::array type to describe and iterate over preferred HW accel
Using std::array simplifies iterating over the array. Still returning arrays from functions is cumbersome. With adoption of C++20 to Qt we can fix that with span. Pick-to: 6.4 Change-Id: Iadc43df8232361977dbcbe1ef000034de47cbeb5 Reviewed-by: Artem Dyomin <artem.dyomin@qt.io> Reviewed-by: Lars Knoll <lars@knoll.priv.no>
Diffstat (limited to 'src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder.cpp')
-rw-r--r--src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder.cpp7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder.cpp b/src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder.cpp
index ea2ed46d3..2a9438a00 100644
--- a/src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder.cpp
+++ b/src/plugins/multimedia/ffmpeg/qffmpegvideoframeencoder.cpp
@@ -46,10 +46,9 @@ VideoFrameEncoder::VideoFrameEncoder(const QMediaEncoderSettings &encoderSetting
auto codecID = QFFmpegMediaFormatInfo::codecIdForVideoCodec(qVideoCodec);
#ifndef QT_DISABLE_HW_ENCODING
- const auto *accels = HWAccel::preferredDeviceTypes();
- while (*accels != AV_HWDEVICE_TYPE_NONE) {
- auto accel = HWAccel::create(*accels);
- ++accels;
+ auto [preferredTypes, size] = HWAccel::preferredDeviceTypes();
+ for (qsizetype i = 0; i < size; i++) {
+ auto accel = HWAccel::create(preferredTypes[i]);
if (!accel)
continue;