When running the QTMultimedia player, segmentation fault errors occur.
-
wrote on 7 Mar 2024, 08:14 last edited by
Hi All
I built qtmultimedia and run the player, I get a segmantaion fault error.
However, when I run it with gst-launch-1.0, works fine.
( # gst-launch-1.0 playbin uri=file:///john/KakaoTalk_20240224_145010135.mp4 video-sink=waylandsink )Could anybody give an example or teach me how to write a demo to use waylandsink to play a gstreamer ?
Env:
QT Version: 5.15.7
Wayland backend
shell=desktop-shell.socommand:
root@main:/john# export QT_GSTREAMER_WIDGET_VIDEOSINK=waylandsink
root@main:/john# export QT_GSTREAMER_WINDOW_VIDEOSINK=waylandsink
root@main:/john# export GST_DEBUG=video-info:7,waylandsink:7
root@main:/john# ./player /john/KakaoTalk_20240224_145010135.mp4log:
0:00:06.160281336 10951 0x7f7c012000 DEBUG video-info video-info.c:537:gst_video_info_from_caps: no colorimetry, using default
0:00:06.160330253 10951 0x7f7c012000 DEBUG video-info video-info.c:406:gst_video_info_from_caps: parsing caps video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1080, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, framerate=(fraction)30/1, tc-vdec=(boolean)true
0:00:06.160352795 10951 0x7f7c012000 DEBUG video-info video-info.c:537:gst_video_info_from_caps: no colorimetry, using default
0:00:06.160399045 10951 0x7f7c012000 DEBUG video-info video-info.c:406:gst_video_info_from_caps: parsing caps video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1080, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, framerate=(fraction)30/1, tc-vdec=(boolean)true
0:00:06.160420586 10951 0x7f7c012000 DEBUG video-info video-info.c:537:gst_video_info_from_caps: no colorimetry, using default
0:00:06.161158545 10951 0x7f6400e1e0 LOG waylandsink gstwaylandsink.c:731:gst_wayland_sink_show_frame:<waylandsink1> render buffer 0x7f78300b40
Segmentation faultThanks.
-
wrote on 8 Mar 2024, 05:19 last edited byThis post is deleted!
-
Hi All
I built qtmultimedia and run the player, I get a segmantaion fault error.
However, when I run it with gst-launch-1.0, works fine.
( # gst-launch-1.0 playbin uri=file:///john/KakaoTalk_20240224_145010135.mp4 video-sink=waylandsink )Could anybody give an example or teach me how to write a demo to use waylandsink to play a gstreamer ?
Env:
QT Version: 5.15.7
Wayland backend
shell=desktop-shell.socommand:
root@main:/john# export QT_GSTREAMER_WIDGET_VIDEOSINK=waylandsink
root@main:/john# export QT_GSTREAMER_WINDOW_VIDEOSINK=waylandsink
root@main:/john# export GST_DEBUG=video-info:7,waylandsink:7
root@main:/john# ./player /john/KakaoTalk_20240224_145010135.mp4log:
0:00:06.160281336 10951 0x7f7c012000 DEBUG video-info video-info.c:537:gst_video_info_from_caps: no colorimetry, using default
0:00:06.160330253 10951 0x7f7c012000 DEBUG video-info video-info.c:406:gst_video_info_from_caps: parsing caps video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1080, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, framerate=(fraction)30/1, tc-vdec=(boolean)true
0:00:06.160352795 10951 0x7f7c012000 DEBUG video-info video-info.c:537:gst_video_info_from_caps: no colorimetry, using default
0:00:06.160399045 10951 0x7f7c012000 DEBUG video-info video-info.c:406:gst_video_info_from_caps: parsing caps video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1080, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, multiview-mode=(string)mono, multiview-flags=(GstVideoMultiviewFlagsSet)0:ffffffff:/right-view-first/left-flipped/left-flopped/right-flipped/right-flopped/half-aspect/mixed-mono, framerate=(fraction)30/1, tc-vdec=(boolean)true
0:00:06.160420586 10951 0x7f7c012000 DEBUG video-info video-info.c:537:gst_video_info_from_caps: no colorimetry, using default
0:00:06.161158545 10951 0x7f6400e1e0 LOG waylandsink gstwaylandsink.c:731:gst_wayland_sink_show_frame:<waylandsink1> render buffer 0x7f78300b40
Segmentation faultThanks.
wrote on 13 Mar 2024, 07:27 last edited bygdb call stack:
(gdb) bt
#0 QAbstractSlider::isSliderDown() const (this=0x0) at /usr/src/debug/qtbase/5.15.7+gitAUTOINC+358aebba72-r0/git/src/widgets/widgets/qabstractslider.cpp:482
#1 0x0000005555560b90 in ()
#2 0x0000007ff6b14a34 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fffffe378, r=<optimized out>, this=0x55556d9890)
at ../../include/QtCore/../../../git/src/corelib/kernel/qobjectdefs_impl.h:398
#3 doActivate<false>(QObject*, int, void**) (sender=0x55555bd7f0, signal_index=14, argv=0x7fffffe378)
at /usr/src/debug/qtbase/5.15.7+gitAUTOINC+358aebba72-r0/git/src/corelib/kernel/qobject.cpp:3919
#4 0x0000007ff6b0d664 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
(sender=<optimized out>, m=<optimized out>, local_signal_index=local_signal_index@entry=5, argv=argv@entry=0x7fffffe378)
at /usr/src/debug/qtbase/5.15.7+gitAUTOINC+358aebba72-r0/git/src/corelib/kernel/qobject.cpp:3979
#5 0x0000007ff7ef1134 in QMediaPlayer::positionChanged(long long) (this=<optimized out>, _t1=<optimized out>) at .moc/moc_qmediaplayer.cpp:751
#6 0x0000007ff6b14a34 in QtPrivate::QSlotObjectBase::call(QObject*, void**) (a=0x7fffffe4a8, r=<optimized out>, this=0x55556d3b30)
at ../../include/QtCore/../../../git/src/corelib/kernel/qobjectdefs_impl.h:398
#7 doActivate<false>(QObject*, int, void**) (sender=0x55556bf130, signal_index=5, argv=0x7fffffe4a8)
at /usr/src/debug/qtbase/5.15.7+gitAUTOINC+358aebba72-r0/git/src/corelib/kernel/qobject.cpp:3919
#8 0x0000007ff6b0d664 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**)
(sender=sender@entry=0x55556bf130, m=<optimized out>, local_signal_index=local_signal_index@entry=2, argv=argv@entry=0x7fffffe4a8)
at /usr/src/debug/qtbase/5.15.7+gitAUTOINC+358aebba72-r0/git/src/corelib/kernel/qobject.cpp:3979
#9 0x0000007ff7ee3e64 in QMediaPlayerControl::positionChanged(long long) (this=this@entry=0x55556bf130, _t1=<optimized out>) at .moc/moc_qmediaplayercontrol.cpp:344
#10 0x0000007ff501611c in QGstreamerPlayerControl::setMedia(QMediaContent const&, QIODevice*) (this=0x55556bf130, content=..., stream=0x0)
at /usr/src/debug/qtmultimedia/5.15.7+gitAUTOINC+eeb34aae03-r0/git/src/gsttools/qgstreamerplayercontrol.cpp:403
#11 0x0000007ff7ef1bb4 in QMediaPlayerPrivate::setMedia(QMediaContent const&, QIODevice*) (this=this@entry=0x55555bd810, media=..., stream=stream@entry=0x0)
at /usr/src/debug/qtmultimedia/5.15.7+gitAUTOINC+eeb34aae03-r0/git/src/multimedia/playback/qmediaplayer.cpp:412
#12 0x0000007ff7ef4b90 in QMediaPlayer::setMedia(QMediaContent const&, QIODevice*) (this=0x55555bd7f0, media=..., stream=0x0)
at /usr/src/debug/qtmultimedia/5.15.7+gitAUTOINC+eeb34aae03-r0/git/src/multimedia/playback/qmediaplayer.cpp:1094
#13 0x0000005555561db4 in ()
#14 0x000000555555e4c4 in main ()
1/3