Hi,dear
i am a newer to develop imx6solo with yocto.use MCIMX6S5DVM10AB
i download linux fsl L3.14.28_1.0.0_iMX6SL_BUNDLE (REV L3.14.28_1.0.0),and build images with qt5 which version is qt5.3.2.
i build image with fb to run qt5,my custom qt5 app run with -platform eglfs work ok,but can't play video,like qmlvideo ,videowidgets. all qt5 multimedia/multimediawidget examples can't play video.
i add PACKAGECONFIG_append_pn-qtmultimedia = " gstreamer" to my local.conf,and add
PACKAGECONFIG[gstreamer] = ",,gstreamer1.0 gstreamer1.0-plugins-base gstreamer1.0-plugins-bad"
EXTRA_QMAKEVARS_PRE += "${@bb.utils.contains('PACKAGECONFIG', 'gstreamer', 'GST_VERSION=1.0', '', d)}"
to source/meta-qt5/recipes-qt/qt5/qtmultimedia_git.bb.
i also try PACKAGECONFIG_append_pn-qtmultimedia = " gstreamer010"
but all fsl-imags-qt5 images play video with qt multimedia examples failure.
l'm use
root@imx6solosabresd:~# gst-launch-1.0 playbin uri=file:/home/root/test1.mp4
can play my video,but use qt5 example qmlvideo or my custom qml app qmlplayer can't play ,report:
No m_videoSink available!
thanks
Hi jery
please try Qt5 Cinematic Demo described in attached Linux Guide
sect.8.4 Qt5. Use Demo Images
or build fsl-image-qt5 image described in Yocto Guide sect.5.1
Choosing a Freescale Yocto project image
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
thank you igor,
maybe i am not describe it clearly , my fsl-image-qt5 images can work fine with qt5,but can't play video.
root@imx6solosabresd:~# Qt5_CinematicExperience -platform eglfs -plugin evdevtouch:/dev/input/event0
also work fine. other qt5 example,like moon,hellogl_es2,and so on, work ok.
when i play video by qmlvideo,it like below:
root@imx6solosabresd:~# /usr/share/qt5/examples/multimedia/video/qmlvideo/qmlvideo -platform eglfs
qrc:///qml/qmlvideo/DisableScreenSaver.qml:48:9: Cannot assign to non-existent property "screenSaverInhibited"
qml: [qmlvideo] performanceLoader.init logging false visible true
[frequencymonitor] FrequencyMonitor::FrequencyMonitor
[frequencymonitor] FrequencyMonitor::FrequencyMonitor
qml: [qmlvideo] main.onSceneSourceChanged source VideoBasic.qml
qml: [qmlvideo] Content.initialize: contentType video
qml: [qmlvideo] Content.initialize: loading VideoItem.qml
No m_videoSink available!
qml: [qmlvideo] Content.initialize: complete
qml: [qmlvideo] SceneBasic.onClicked, started = false
qml: [qmlvideo] Content.start
Warning: "Failed to connect: Connection refused"
====== AIUR: 4.0.3 build on Sep 5 2016 16:35:14. ======
Core: MPEG4PARSER_06.09.10 build on Jan 8 2015 07:06:50
file: /usr/lib/imx-mm/parser/lib_mp4_parser_arm11_elinux.so.3.2
------------------------
Track 00 [audio_0] Enabled
Duration: 0:01:01.000000000
Language: und
Mime:
audio/mpeg, mpegversion=(int)4, channels=(int)2, rate=(int)48000, bitrate=(int)125624, stream-format=(string)raw, codec_data=(buffer)119056e500
------------------------
------------------------
Track 01 [video_0] Enabled
Duration: 0:01:01.050000000
Language: und
Mime:
video/x-h264, parsed=(boolean)true, alignment=(string)au, stream-format=(string)avc, width=(int)480, height=(int)480, framerate=(fraction)20/1, codec_data=(buffer)0142c016ffe100176742c016da0783db011000000300100000030280f162ea01000468ce3c80
------------------------
[INFO] Product Info: i.MX6Q/D/S
====== VPUDEC: 4.0.3 build on Sep 5 2016 16:35:37. ======
wrapper: 1.0.58 (VPUWRAPPER_ARM_LINUX Build on Sep 5 2016 16:34:41)
vpulib: 5.4.28
firmware: 3.1.1.46063
[INFO] bitstreamMode 1, chromaInterleave 1, mapType 0, tiled2LinearEnable 0
[WARN] VPU iram is less than needed, some parts don't use iram
====== BEEP: 4.0.3 build on Sep 5 2016 16:35:25. ======
Core: AAC decoder Wrapper build on Apr 22 2014 09:43:50
file: /usr/lib/imx-mm/audio-codec/wrap/lib_aacd_wrap_arm12_elinux.so.3
CODEC: BLN_MAD-MMCODECS_AACD_ARM_03.09.00_CORTEX-A8 build on Jun 19 2014 18:30:32.
set_caps:
video/x-raw, format=(string)NV12, width=(int)480, height=(int)480, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt601, framerate=(fraction)20/1
Starting video surface, format:
QVideoSurfaceFormat(Format_Invalid, QSize(-1, -1) , viewport=QRect(0,0 0x0) , pixelAspectRatio=QSize(1, 1) , handleType=NoHandle, yCbCrColorSpace=YCbCr_Undefined)
handleType = QVariant(QAbstractVideoBuffer::HandleType, )
pixelFormat = QVariant(QVideoFrame::PixelFormat, )
frameSize = QVariant(QSize, QSize(-1, -1) )
frameWidth = QVariant(int, -1)
viewport = QVariant(QRect, QRect(0,0 0x0) )
scanLineDirection = QVariant(QVideoSurfaceFormat::Direction, )
frameRate = QVariant(double, 0)
pixelAspectRatio = QVariant(QSize, QSize(1, 1) )
sizeHint = QVariant(QSize, QSize(0, 0) )
yCbCrColorSpace = QVariant(QVideoSurfaceFormat::YCbCrColorSpace, )
bytesPerLine: 0
Failed to start video surface
set_caps:
video/x-raw, format=(string)NV12, width=(int)480, height=(int)480, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt601, framerate=(fraction)20/1
Starting video surface, format:
QVideoSurfaceFormat(Format_Invalid, QSize(-1, -1) , viewport=QRect(0,0 0x0) , pixelAspectRatio=QSize(1, 1) , handleType=NoHandle, yCbCrColorSpace=YCbCr_Undefined)
handleType = QVariant(QAbstractVideoBuffer::HandleType, )
pixelFormat = QVariant(QVideoFrame::PixelFormat, )
frameSize = QVariant(QSize, QSize(-1, -1) )
frameWidth = QVariant(int, -1)
viewport = QVariant(QRect, QRect(0,0 0x0) )
scanLineDirection = QVariant(QVideoSurfaceFormat::Direction, )
frameRate = QVariant(double, 0)
pixelAspectRatio = QVariant(QSize, QSize(1, 1) )
sizeHint = QVariant(QSize, QSize(0, 0) )
yCbCrColorSpace = QVariant(QVideoSurfaceFormat::YCbCrColorSpace, )
bytesPerLine: 0
Failed to start video surface
qml: [qmlvideo] VideoItem.onError error 1 errorString GStreamer encountered a general stream error.
qml: [qmlvideo] Content.onFatalError
qml: [qmlvideo] Content.stop
Error: "GStreamer encountered a general stream error."
qml: [qmlvideo] SceneBasic.onClicked, started = false
qml: [qmlvideo] Content.start
====== AIUR: 4.0.3 build on Sep 5 2016 16:35:14. ======
Core: MPEG4PARSER_06.09.10 build on Jan 8 2015 07:06:50
file: /usr/lib/imx-mm/parser/lib_mp4_parser_arm11_elinux.so.3.2
------------------------
Track 00 [audio_0] Enabled
Duration: 0:01:01.000000000
Language: und
Mime:
audio/mpeg, mpegversion=(int)4, channels=(int)2, rate=(int)48000, bitrate=(int)125624, stream-format=(string)raw, codec_data=(buffer)119056e500
------------------------
Warning: "Failed to connect: Connection refused"
------------------------
Track 01 [video_0] Enabled
Duration: 0:01:01.050000000
Language: und
Mime:
video/x-h264, parsed=(boolean)true, alignment=(string)au, stream-format=(string)avc, width=(int)480, height=(int)480, framerate=(fraction)20/1, codec_data=(buffer)0142c016ffe100176742c016da0783db011000000300100000030280f162ea01000468ce3c80
------------------------
[INFO] Product Info: i.MX6Q/D/S
====== VPUDEC: 4.0.3 build on Sep 5 2016 16:35:37. ======
wrapper: 1.0.58 (VPUWRAPPER_ARM_LINUX Build on Sep 5 2016 16:34:41)
vpulib: 5.4.28
firmware: 3.1.1.46063
[INFO] bitstreamMode 1, chromaInterleave 1, mapType 0, tiled2LinearEnable 0
[WARN] VPU iram is less than needed, some parts don't use iram
====== BEEP: 4.0.3 build on Sep 5 2016 16:35:25. ======
Core: AAC decoder Wrapper build on Apr 22 2014 09:43:50
file: /usr/lib/imx-mm/audio-codec/wrap/lib_aacd_wrap_arm12_elinux.so.3
CODEC: BLN_MAD-MMCODECS_AACD_ARM_03.09.00_CORTEX-A8 build on Jun 19 2014 18:30:32.
set_caps:
video/x-raw, format=(string)NV12, width=(int)480, height=(int)480, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt601, framerate=(fraction)20/1
Starting video surface, format:
QVideoSurfaceFormat(Format_Invalid, QSize(-1, -1) , viewport=QRect(0,0 0x0) , pixelAspectRatio=QSize(1, 1) , handleType=NoHandle, yCbCrColorSpace=YCbCr_Undefined)
handleType = QVariant(QAbstractVideoBuffer::HandleType, )
pixelFormat = QVariant(QVideoFrame::PixelFormat, )
frameSize = QVariant(QSize, QSize(-1, -1) )
frameWidth = QVariant(int, -1)
viewport = QVariant(QRect, QRect(0,0 0x0) )
scanLineDirection = QVariant(QVideoSurfaceFormat::Direction, )
frameRate = QVariant(double, 0)
pixelAspectRatio = QVariant(QSize, QSize(1, 1) )
sizeHint = QVariant(QSize, QSize(0, 0) )
yCbCrColorSpace = QVariant(QVideoSurfaceFormat::YCbCrColorSpace, )
bytesPerLine: 0
Failed to start video surface
is there anyone would give some help?