FDH2 / UxPlay

AirPlay Unix mirroring server
GNU General Public License v3.0
1.35k stars 72 forks source link

Green screen #99

Closed GuillaumeCisco closed 2 years ago

GuillaumeCisco commented 2 years ago

Looks like this is a known issue. I got a green screen in the last past month. Surely due to the update of a new ubuntu release. Using export GST_DEBUG=2, I get this kind of error in a loop:

0:00:38.652885355 28915 0x7f673c083a40 WARN             videofilter gstvideofilter.c:296:gst_video_filter_transform:<videoconvert0> warning: invalid video buffer received
0:00:38.702062297 28915 0x7f673c083a40 ERROR       vaapivideomemory gstvaapivideomemory.c:254:map_vaapi_memory: failed to make image current
0:00:38.702131262 28915 0x7f673c083a40 ERROR                default video-frame.c:168:gst_video_frame_map_id: failed to map video frame plane 0

I've tested with the last code on master and all gstreamer1.0-* packages.

Setup:

$> uname -a
Linux 5.15.0-35-generic #36-Ubuntu SMP Sat May 21 02:24:07 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
$> lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 22.04 LTS
Release:    22.04
Codename:   jammy

What should I do?

fduncanh commented 2 years ago

This is a VAAPI issue. See the README Troubleshooting section, which says

Other reported problems are connected to the GStreamer VAAPI plugin (for hardware-accelerated Intel graphics, but not NVIDIA graphics). Use the option "-avdec" to force software h264 video decoding: this should prevent autovideosink from selecting the vaapisink videosink. Alternatively, find out if the gstreamer1.0-vaapi plugin is installed, and if so, uninstall it. (If this does not fix the problem, you can reinstall it.)

GuillaumeCisco commented 2 years ago

Very interesting. Thanks @fduncanh. It did work with -avdec.

For the record, I have a laptop with 2 graphic cards. One with intel and one with nvidia. There are a lot of issues on different topics (especially in video game emulation) when running two graphic card. Often, race conditions with graphic card booting occur. There is maybe something to dig there.

Anyway, thanks a lot for your quick answer. You made my day!