Dear Community,
board: imx6q
BSP version: imx_4.1.15_1.0.0_ga
when i test displaying a video with gplay tool, it shows some errors as follows:
root@imx6qsabresd:/# uname -a
Linux imx6qsabresd 4.1.15+gd5d7c02 #3 SMP PREEMPT Mon May 30 15:15:49 CST 2016 armv7l GNU/Linux
root@imx6qsabresd:/# export GST_DEBUG="*:2"
root@imx6qsabresd:/# gplay-1.0 unit_tests/akiyo.mp4
** Message: GStreamer version 1.6.0
Set VideoSink overlaysink
display(/dev/fb0) resolution is (1920x1080).
====== OVERLAYSINK: 4.0.9 build on May 9 2016 20:06:21. ======
State change from NULL to READY
display(/dev/fb0) resolution is (1920x1080).
0:00:00.157205000 942 0x1620ca0 WARN basesrc gstbasesrc.c:3481:gst_base_src_start_complete:<source> pad not activated yet
0:00:00.159509667 942 0x1620ca0 WARN basesrc gstbasesrc.c:3481:gst_base_src_start_complete:<source> pad not activated yet
0:00:00.181744667 942 0x163df80 WARN basesrc gstbasesrc.c:2391:gst_base_src_update_length:<source> processing at or past EOS
[INFO] Product Info: i.MX6Q/D/S
[INFO] Product Info: i.MX6Q/D/S
====== VPUDEC: 4.0.9 build on May 9 2016 20:06:25. ======
wrapper: 1.0.65 (VPUWRAPPER_ARM_LINUX Build on May 9 2016 19:57:31)
vpulib: 5.4.33
firmware: 3.1.1.46072
[INFO] bitstreamMode 1, chromaInterleave 1, mapType 0, tiled2LinearEnable 0
0:00:00.263779000 942 0x163df80 WARN videodecoder gstvideodecoder.c:2488:gst_video_decoder_chain:<vpudec0> Received buffer without a new-segment. Assuming timestamps start from 0.
0:00:00.299604000 942 0x163df80 ERROR overlaysink displaysv4l2.c:252:init_display: gst_imx_v4l2_open_device /dev/video17 failed.
0:00:00.299723000 942 0x163df80 ERROR overlaysink osink_object.c:465:osink_object_enable_display: init display (master) failed.
0:00:00.299785000 942 0x163df80 ERROR overlaysink gstosink.c:267:gst_overlay_sink_change_state:<overlaysink0> enable display master failed.
0:00:00.299835667 942 0x163df80 ERROR overlaysink gstosink.c:291:gst_overlay_sink_change_state:<overlaysink0> No display enabled.
State change from READY to PAUSED
0:00:00.302176667 942 0x7492dcf0 ERROR overlaysink osink_object.c:422:osink_object_get_display_count: osink object handle is NULL.
0:00:00.302299000 942 0x7492dcf0 ERROR overlaysink gstosink.c:291:gst_overlay_sink_change_state:<overlaysink0> No display enabled.
0:00:00.302344334 942 0x7492dcf0 ERROR overlaysink osink_object.c:395:osink_object_unref: osink handle is not correct, current ((nil)), expected ((nil)).
0:00:00.302759667 942 0x7492dcf0 ERROR overlaysink osink_object.c:422:osink_object_get_display_count: osink object handle is NULL.
0:00:00.302814334 942 0x7492dcf0 ERROR overlaysink gstosink.c:291:gst_overlay_sink_change_state:<overlaysink0> No display enabled.
0:00:00.302854000 942 0x7492dcf0 ERROR overlaysink osink_object.c:395:osink_object_unref: osink handle is not correct, current ((nil)), expected ((nil)).
0:00:00.303125667 942 0x7492dcf0 WARN bin gstbin.c:2569:reset_state:<vbin> Failed to switch back down to PAUSED
0:00:00.303354667 942 0x7492dcf0 ERROR overlaysink osink_object.c:422:osink_object_get_display_count: osink object handle is NULL.
0:00:00.303409667 942 0x7492dcf0 ERROR overlaysink gstosink.c:291:gst_overlay_sink_change_state:<overlaysink0> No display enabled.
0:00:00.303447667 942 0x7492dcf0 ERROR overlaysink osink_object.c:395:osink_object_unref: osink handle is not correct, current ((nil)), expected ((nil)).
0:00:00.303721667 942 0x7492dcf0 WARN bin gstbin.c:2569:reset_state:<playsink> Failed to switch back down to PAUSED
0:00:00.304064000 942 0x7492dcf0 ERROR overlaysink osink_object.c:422:osink_object_get_display_count: osink object handle is NULL.
0:00:00.304117667 942 0x7492dcf0 ERROR overlaysink gstosink.c:291:gst_overlay_sink_change_state:<overlaysink0> No display enabled.
0:00:00.304156667 942 0x7492dcf0 ERROR overlaysink osink_object.c:395:osink_object_unref: osink handle is not correct, current ((nil)), expected ((nil)).
0:00:00.304444334 942 0x7492dcf0 WARN bin gstbin.c:2569:reset_state:<bin> Failed to switch back down to PAUSED
** (gplay-1.0:942): WARNING **: state change failed from PAUSED to PLAYING
[Pause (No Repeated)][Vol=1.0][00:00:00/00:00:00]try to play failed
0:00:00.305008667 942 0x163df80 WARN GST_PADS gstpad.c:3989:gst_pad_peer_query:<streamsynchronizer0:src_0> could not send sticky events
0:00:00.306232000 942 0x163df80 WARN videopool gstvideopool.c:195:video_buffer_pool_set_config:<videobufferpool0> allocation params alignment 1 is smaller than the max specified video stride alignment 15, fixing
State change from PAUSED to READY
** Message: playengine destroyed
Exit display thread
root@imx6qsabresd:/#
what's wrong? what's should i do? do you want any informations, pls tell me.
Please see the attached with a dts file.
thank you.
fulinux
Solved! Go to Solution.
Hi igor,
Thank you for your replay. i have found the reason, it was i forgeted to add this:
v4l2_out {
compatible = "fsl,mxc_v4l2_output";
status = "okay";
};
Hi fulinux
from log:
ERROR | overlaysink displaysv4l2.c:252:init_display |
seems lcd is not initialized properly, what lcd is used in the case?
From atatched dts file:
native-mode = <&timing0>; | |||
timing0: hsd100pxn1 { | |||
clock-frequency = <166000000>; | |||
hactive = <1920>; | |||
vactive = <1080>; |
However "hsd100pxn" (Hannstar LCD) used on Sabre boards has 1024x768
resolution. For 1920x1080 lvds lcd it is necessary to add split mode, like:
https://community.freescale.com/message/525359#525359
Also build fsl-image-gui yocto image and use commands as in attached Linux
Guide sect.7.3 Multimedia use cases
Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------
Hi igor,
Thank you for your replay. i have found the reason, it was i forgeted to add this:
v4l2_out {
compatible = "fsl,mxc_v4l2_output";
status = "okay";
};