Error:"Configured Videosink video-output-bin is not worikng"



  • Hello,
    I have cross compile Qt5 on Desktop for raspberry pi and now I am compiling VideoWidget example for host and raspberry pi using respective qmake.It compiles run without any difficulty on host but when I run it on raspberry it shows following errors:

    1. Can not connect to server socket err=No such file or directory
    2. Can not connect to server request channel
    3. Jack server is not running or not started

    and when I select any video file get the following error:

    1. Configured videosink video-output-bin is not working

    does anyone know how to resolve this??
    thanks in advance.



  • It looks like I have posted in wrong place.
    any idea where to post this to get answered???


  • Lifetime Qt Champion

    Hi,

    No it's not the wrong place, however you might have hit something that nobody else encountered.

    From the error message it seems to be looking for the Jack server on your Pi, did you install it ?



  • hello,
    thanks for replay
    yes,I did
    but do I have to start it manually everytime using qjackctl before runnig the application or it should be started automatically?
    and what about videosink?


  • Lifetime Qt Champion

    AFAIK, you should be able to configure it to start automatically on system startup.

    Right now, the video sink error doesn't ring a bell



  • I have tried with an app to play mp3 file It gives the same jack error but play the file too.and if I start jack using qjackctl and then run the app the error disappears but sound quality degrades.
    Video is still not playing.
    Could this due to wrong cross compilation of Qtmultimedia??


  • Lifetime Qt Champion

    What option did you pass when configuring ?



  • in qt base
    ./configure -opengl es2 -device linux-rasp-pi-g++ -device-option CROSS_COMPILE=~/opt/gcc-4.7-linaro-rpi-gnueabihf/bin/arm-linux-gnueabihf- -sysroot /mnt/rasp-pi-rootfs -opensource -confirm-license -optimized-qmake -reduce-exports -release -make libs -prefix /usr/local/qt5pi -hostprefix /usr/local/qt5pi -qpa xcb -gstreamer0.10
    and I have build QtMultimedia saperately



  • And just now I have found a strange behaviour of application as I mentioned it gives the error while playing videos
    but if I run the app with option

    ./player -platform eglfs

    it works and plays video so what this means???



  • GST_DEBUG=3 ./player gives the following errors

    xvimagesink xvimagesink.c:1443:gst_xvimagesink_get_xv_support: error: Could not initialise Xv output and

    xvimagesink xvimagesink.c:1443:gst_xvimagesink_get_xv_support: error: No port available

    and xvinfo gives no adaptors present
    so can it resolved or is there any way to set QtMultimedia to use other videosink??



  • @Haresh Have you resolve the problem? I have similar problem:

    0:00:11.625442171 ^[[336m  875^[[00m  0x1de3000 ^[[33;01mWARN   ^[[00m ^[[00m               pulse pulsesink.c:570:gst_pulseringbuffer_open_device:<audiosink-actual-sink-pulse>^[[00m error: Failed to connect: Connection refused
    0:00:11.626029921 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31;47m    GST_ERROR_SYSTEM gstelement.c:1987:gst_element_message_full:<audiosink-actual-sink-pulse>^[[00m posted error message: Failed to connect: Connection refused
    0:00:11.657370879 ^[[336m  875^[[00m  0x1de3000 ^[[33;01mWARN   ^[[00m ^[[00m            jacksink gstjackaudiosink.c:358:gst_jack_ring_buffer_open_device:<audiosink-actual-sink-jackaudio>^[[00m error: Jack server not found
    0:00:11.657466879 ^[[336m  875^[[00m  0x1de3000 ^[[33;01mWARN   ^[[00m ^[[00m            jacksink gstjackaudiosink.c:358:gst_jack_ring_buffer_open_device:<audiosink-actual-sink-jackaudio>^[[00m error: Cannot connect to the Jack server (status 17)
    0:00:11.720152796 ^[[336m  875^[[00m  0x1de3000 ^[[33;01mWARN   ^[[00m ^[[00m                alsa gstalsasink.c:694:gst_alsasink_open:<audiosink-actual-sink-alsa>^[[00m error: Could not open audio device for playback
    0:00:11.720152796 ^[[336m  875^[[00m  0x1de3000 ^[[33;01mWARN   ^[[00m ^[[00m                alsa gstalsasink.c:694:gst_alsasink_open:<audiosink-actual-sink-alsa>^[[00m error: Could not open audio device for playback.
    0:00:11.720347129 ^[[336m  875^[[00m  0x1de3000 ^[[33;01mWARN   ^[[00m ^[[00m                alsa gstalsasink.c:694:gst_alsasink_open:<audiosink-actual-sink-alsa>^[[00m error: Playback open error on device 'default': No such file or directory
    0:00:11.720500837 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31;47m    GST_ERROR_SYSTEM gstelement.c:1964:gst_element_message_full:<audiosink-actual-sink-alsa>^[[00m posting message: Could not open audio device for playback.
    0:00:11.720728129 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31;47m    GST_ERROR_SYSTEM gstelement.c:1987:gst_element_message_full:<audiosink-actual-sink-alsa>^[[00m posted error message: Could not open audio device for playback.
    0:00:11.720852337 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstelement.c:2768:gst_element_change_state:<audiosink-actual-sink-alsa>^[[00m have FAILURE change_state return
    state-changed READY to NULL (VOID_PENDING pending)
     0:00:43.104227616 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31;44m     GST_REFCOUNTING gstelement.c:3064:gst_element_dispose:<uridecodebin0>^[[00m dispose
    0:00:43.104287780 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31;44m     GST_REFCOUNTING gstelement.c:3088:gst_element_dispose:<uridecodebin0>^[[00m parent class dispose
    0:00:43.104356653 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31;44m     GST_REFCOUNTING gstelement.c:3119:gst_element_finalize:<uridecodebin0>^[[00m finalize
    0:00:43.104413984 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31;44m     GST_REFCOUNTING gstelement.c:3130:gst_element_finalize:<uridecodebin0>^[[00m finalize parent
    0:00:43.104520188 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstbin.c:2237:gst_bin_element_set_state:<tempsink>^[[00m skipping transition from NULL to  NULL, since bin pending is NULL : last change state return follows
    0:00:43.104584977 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstbin.c:2526:gst_bin_change_state_func:<audiosink>^[[00m child 'tempsink' changed state to 1(NULL) successfully
    0:00:43.104649142 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstelement.c:2460:gst_element_continue_state:<audiosink>^[[00m completed state change to NULL
    0:00:43.104749388 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstbin.c:2237:gst_bin_element_set_state:<fakesink1>^[[00m skipping transition from NULL to  NULL, since bin pending is NULL : last change state return follows
    0:00:43.104808719 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstbin.c:2526:gst_bin_change_state_func:<video-output-bin>^[[00m child 'fakesink1' changed state to 1(NULL) successfully
    0:00:43.104869508 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstbin.c:2237:gst_bin_element_set_state:<videoconnector1>^[[00m skipping transition from NULL to  NULL, since bin pending is NULL : last change state return follows
    0:00:43.104924089 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstbin.c:2526:gst_bin_change_state_func:<video-output-bin>^[[00m child 'videoconnector1' changed state to 1(NULL) successfully
    0:00:43.104984879 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstelement.c:2460:gst_element_continue_state:<video-output-bin>^[[00m completed state change to NULL
    0:00:43.105052293 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstelement.c:2460:gst_element_continue_state:<playbin21>^[[00m completed state change to NULL
    0:00:43.105105082 ^[[336m  875^[[00m  0x1de3000 ^[[32;01mINFO   ^[[00m ^[[00;01;31m          GST_STATES gstelement.c:2365:_priv_gst_element_state_changed:<playbin21>^[[00m notifying about state-changed READY to NULL (VOID_PENDING pending)
    

    end as a result there is widget with black background...
    I dont realy need sound, only video.



  • I made a tiny bit of test code just to get the pi camera up and running, using Qt Multimedia and Camera/VideoOutput in QML. I don't get the xvimagesink-error you get, but i get it if i try to create a pipeline using gst-launch and xvimagesink as sink. So i guess depending on how you use Multimedia, you won't always get xvimagesink.
    Also, what camera are you using on the Pi?
    I use the RPi camera, and for 2 weeks i got a black screen where i should've got video. Turns out all i had to do was set the framerate and/or resolution to a reasonable value in the Camera class in QML. If not, Qt will try to launch RPi camera with 100 fps and god knows what resolution, which was too much. Got the same problem trying to run a normal webcamera with 30fps on fullscreen. So if you get a black screen where your video should've been, consider trying smaller resolution/framerate, or maybe increase GPU ram in config file in /boot/. Dunno the consequences of the latter, but i saw it being mentioned somewhere. I assume black screen with no errors means video stream is taking too much resources.

    For the audio, i got no clue, but you can try searching for the files where the error occurs and see if you can find out more related to what spawns the error. Its on git.
    You tried running it using sudo? Because all the other errors might just be follow-up errors related to the OS not giving you access to the jack in the first place for all i know.



  • I modified Qt source files qgstreamervideowidget.cpp and qgstreamervideowindow.cpp. It was using xvimagesink for xcb platform and I changed it to glimagesink and then builed Qt again for raspberry pi and it worked.



  • Hello,
    Got another problem though I have managed to cross compile Qt5 with gstreamer1.0 support it is unable to play HD videos on pi.
    I checked using GST_DEBUG=3 and it seems like it still uses gstreamer0.10.
    So Do anyone have got HD video playing on pi and can suggest me to get it playing??


Log in to reply
 

Looks like your connection to Qt Forum was lost, please wait while we try to reconnect.