В любом случае мы могли бы решить это? Заранее спасибо :)

нь старался, чтобы мое видео было на моем QWidget.

Должен знать, что только накладные раковины могут быть использованы для этого. Но xvimagesink и ximagesink находятся на x11, и я использую платформу Wayland на i.MX8. Поэтому я попытался использовать Playbin, как сказано вИспользуйте playbin

root@imx8mqevk:/opt# gdb ./SimpleGStreamer
GNU gdb (GDB) 7.11.1
Copyright (C) 2016 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "aarch64-poky-linux".
Type "show configuration" for configuration details.
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>.
Find the GDB manual and other documentation resources online at:
<http://www.gnu.org/software/gdb/documentation/>.
For help, type "help".
Type "apropos word" to search for commands related to "word"...
Reading symbols from ./SimpleGStreamer...done.
(gdb) r
Starting program: /opt/SimpleGStreamer 
warning: File "/lib/libthread_db-1.0.so" auto-loading has been declined by your `auto-load safe-path' set to "$debugdir:$datadir/auto-load".
To enable execution of this file add
    add-auto-load-safe-path /lib/libthread_db-1.0.so
line to your configuration file "/home/root/.gdbinit".
To completely disable this security protection add
    set auto-load safe-path /
line to your configuration file "/home/root/.gdbinit".
For more information about this security protection see the
"Auto-loading safe path" section in the GDB manual.  E.g., run from the shell:
    info "(gdb)Auto-loading safe path"
warning: Unable to find libthread_db matching inferior's thread library, thread debugging will not be available.
Using Wayland-EGL
[New LWP 4449]
[New LWP 4450]
[New LWP 4451]
[New LWP 4452]

====== AIUR: 4.3.4 build on Apr 18 2018 09:53:45. ======
    Core: MPEG4PARSER_06.13.06  build on Feb  6 2018 07:43:39
 file: /usr/lib/imx-mm/parser/lib_mp4_parser_arm_elinux.so.3.2
------------------------
    Track 00 [video_0] Enabled
    Duration: 0:03:34.280733000
    Language: und
    Mime:
    video/x-h264, parsed=(boolean)true, alignment=(string)au, stream-format=(string)avc, width=(int)1920, height=(int)1012, framerate=(fraction)30/1, codec_data=(buffer)01640028ffe1001d67640028acd100780207e7c05a808080a000007d20001d4c01e306224001000468ebef2c 
------------------------
[New LWP 4453]
[New LWP 4454]
[New LWP 4455]
[New LWP 4456]
[New LWP 4457]
[ 4276.403325] alloc_contig_range: [4ff00, 50200) PFNs busy
[ 4276.409235] alloc_contig_range: [50000, 50300) PFNs busy
[ 4276.415030] alloc_contig_range: [50100, 50400) PFNs busy
====== VPUDEC: 4.3.4 build on Apr 18 2018 09:53:54. ======
    wrapper: 3.0.0 (VPUWRAPPER_ARM64_LINUX Build on Apr 17 2018 10:33:38)
    vpulib: 1.1.1
    firmware: 1.1.1.65535
[New LWP 4458]

Thread 8 "gstglcontext" received signal SIGSEGV, Segmentation fault.
[Switching to LWP 4455]
0x0000ffffb5d6bf78 in ?? () from /usr/lib/libwayland-client.so.0
(gdb) bt
#0  0x0000ffffb5d6bf78 in ?? () from /usr/lib/libwayland-client.so.0
#1  0x0000ffff900a35e0 in ?? ()
Backtrace stopped: previous frame inner to this frame (corrupt stack?)
(gdb)

Конвейерная команда

gst-launch-1.0 playbin uri="file:///opt/test.mp4" works fine on the board.

И если я прокомментирую команду наложения окна в кодеgst_video_overlay_set_window_handle (GST_VIDEO_OVERLAY (pipeline), xwinid);, приложение создаст новое окно и начнет воспроизведение видео. Но если я раскомментирую, это приведет к краху.

В любом случае мы могли бы решить это? Заранее спасибо :)

Ответы на вопрос(0)

Ваш ответ на вопрос