Details
-
Bug
-
Resolution: Won't Do
-
P2: Important
-
6.4.3, 6.5.0
-
-
2023wk20FOQtforAndroid, 2023wk22FOQtforAndroid, 2024wk10FOQtforAndroid
Description
Problem
On Android 32bit (armeabi-v7a), the "QVideoFrame::map()" function still segfaults regularly, with a stacktrace looking roughly like this.
Tried mitigations
The Qt-Bugtracker contains a few hints to work around this problem, e. g. using a direct conneciton to connect to QVideoSink::videoFrameChanged, and also calling m_videoSink->setRhi(nullptr); to enforce software encoding.
Applying this workaround fixes the problem on android-arm64, but 32bit is still broken.
Example Stack Trace
04-27 15:58:15.998 23327 23327 F DEBUG : #00 pc 002b54d6 /data/app/.../lib/arm/libQt6Gui_armeabi-v7a.so (QRhi::thread() const+2) (BuildId: d7507ce6e3b69e6ce78275bc3be913915519e90f) 04-27 15:58:15.998 23327 23327 F DEBUG : #01 pc 00078c83 /data/app/.../lib/arm/libQt6Multimedia_armeabi-v7a.so (qImageFromVideoFrame(QVideoFrame const&, QVideoFrame::RotationAngle, bool, bool)+286) (BuildId: 45a8bf65e00147b0771f3689cf22b743cba28db9) 04-27 15:58:15.999 23327 23327 F DEBUG : #02 pc 00020cfd /data/app/.../lib/arm/libplugins_multimedia_androidmediaplugin_armeabi-v7a.so (BuildId: c002cefc12dc4c8685a55e38850d5bd65d6fb2fe) 04-27 15:58:15.999 23327 23327 F DEBUG : #03 pc 00074413 /data/app/.../lib/arm/libQt6Multimedia_armeabi-v7a.so (QVideoFrame::map(QVideoFrame::MapMode)+98) (BuildId: 45a8bf65e00147b0771f3689cf22b743cba28db9)
Attachments
Issue Links
- relates to
-
QTBUG-97789 Listening on QVideoSink::videoFrameChanged on Android fails to map/unmap QVideoFrame
-
- Closed
-
-
QTBUG-105169 videoFrame.toImage() does not work in a different thread than the video rendering thread
-
- Closed
-