Background info: I am trying to setup WPEWebkit + cog under weston using r35.6.0
After building WPEWebkit’s minibrowser, I attempted to load some websites and was greeted with gstreamer critical errors. In particular, I was getting
ERROR webkitmediaplayer MediaPlayerPrivateGStreamer.cpp:1728:handleMessage: Your GStreamer installation is missing a plug-in. (url=xxx.mp4) (code=12)
Weird I thought because in x11, I was able to playback any mp4 using gst-launch. So I referenced this page to do the same thing for weston. Turns out video playback in weston does not work.
Yes nvstart-weston.sh is run before everything. As I said above in x11, the tutorial works but the corresponding section for weston does not work. Thanks for the follow up!
Hi,
We don’t hit the issue on AGX Xavier developer kit/Jetpack 5.1.4(r35.6). Attach the log for reference:
nvidia@nvidia-desktop:~$ nvstart-weston.sh
Warning: The unit file, source configuration file or drop-ins of gdm.service changed on disk. Run 'systemctl daemon-reload' to reload units.
Launching weston...
!!! Weston launched successfully !!!
Weston startup log at:/tmp/weston-startup.log
To exit weston gracefully, execute:
pkill -15 weston
Execute the following steps before starting X11 again:
pkill -15 weston
sudo rmmod tegra-udrm
nvidia@nvidia-desktop:~$ gst-launch-1.0 videotestsrc is-live=1 ! nvvidconv ! 'video/x-raw(memory:NVMM)' ! nvegltransform ! nveglglessink winsys=wayland
Setting pipeline to PAUSED ...
Using winsys: wayland
Pipeline is live and does not need PREROLL ...
Got context from element 'eglglessink0': gst.egl.EGLDisplay=context, display=(GstEGLDisplay)NULL;
Setting pipeline to PLAYING ...
New clock: GstSystemClock
^Chandling interrupt.
Interrupt: Stopping pipeline ...
Execution ended after 0:00:10.975250896
Setting pipeline to NULL ...
Freeing pipeline ...
nvidia@nvidia-desktop:~$ cat /etc/nv_tegra_release
# R35 (release), REVISION: 6.0, GCID: 37391689, BOARD: t186ref, EABI: aarch64, DATE: Wed Aug 28 09:12:27 UTC 2024
Thank you! It did work after putting in nvegltransform.
In particular gst-launch-1.0 filesrc location=<file.mp4> ! qtdemux name=demux ! h264parse ! nvv4l2decoder ! nvegltransform ! nveglglessink winsys=wayland did the trick.
So now that video playback is possible, it looks like the GST errors are probably due to webkit not adding certain parameters or some configuration issue in the abstraction layer.
Finally, it would be great if the nvidia documentation is updated!