evdi icon indicating copy to clipboard operation
evdi copied to clipboard

Dummy monitor

Open raldone01 opened this issue 2 years ago • 3 comments

This pr is an extension to #421. It adds a working dummy_monitor script. It currently requires an edid file. I would like it to work with just <width>x<height>@<fps>.

raldone01 avatar Jun 14 '23 15:06 raldone01

does this support wayland?

pradyvrp avatar Dec 12 '24 09:12 pradyvrp

What do you mean exactly?

The dummy monitor program itself has no issue with wayland as it uses PySide6. evdi should also not have any issues with wayland as I have used a displaylink docking station yesterday with plasma wayland.

But just try it out?

raldone01 avatar Dec 12 '24 09:12 raldone01

~Hey, im wondering what version of python and pyside6 you are using, since I am getting the following error:~

Oh I just relealized this is might be casued by a mismatched pyevdi version - Could you please update this pr the latest?

Traceback (most recent call last):
  File "/home/eshark/stuff/evdi/evdi/pyevdi/examples/dummy_monitor/dummy_monitor.py", line 201, in <lambda>
    card_timer.timeout.connect(lambda: card.handle_events(0))
                                       ~~~~~~~~~~~~~~~~~~^^^
  File "/home/eshark/stuff/evdi/evdi/pyevdi/examples/dummy_monitor/dummy_monitor.py", line 186, in <lambda>
    card.acquire_framebuffer_handler = lambda buffer: framebuffer_handler(
                                                      ~~~~~~~~~~~~~~~~~~~^
        buffer, my_app
        ^^^^^^^^^^^^^^
    )
    ^
  File "/home/eshark/stuff/evdi/evdi/pyevdi/examples/dummy_monitor/dummy_monitor.py", line 151, in framebuffer_handler
    app.image_buffer_widget.update_image(buffer)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^
  File "/home/eshark/stuff/evdi/evdi/pyevdi/examples/dummy_monitor/dummy_monitor.py", line 103, in update_image
    image = QImage(buffer.bytes, buffer.width, buffer.height, QImage.Format_RGB32)
TypeError: 'PySide6.QtGui.QImage.__init__' called with wrong argument types:
  PySide6.QtGui.QImage.__init__(PyCapsule, int, int, Format)
Supported signatures:
  PySide6.QtGui.QImage.__init__()
  PySide6.QtGui.QImage.__init__(PySide6.QtGui.QImage, /)
  PySide6.QtGui.QImage.__init__(PySide6.QtCore.QSize, PySide6.QtGui.QImage.Format, /)
  PySide6.QtGui.QImage.__init__(str, int, int, PySide6.QtGui.QImage.Format, /)
  PySide6.QtGui.QImage.__init__(str, int, int, int, PySide6.QtGui.QImage.Format, /)
  PySide6.QtGui.QImage.__init__(Iterable, /)
  PySide6.QtGui.QImage.__init__(Union[bytes, bytearray, memoryview], int, int, PySide6.QtGui.QImage.Format, /, Optional[Callable[..., Any]] = None, Optional[int] = None)
  PySide6.QtGui.QImage.__init__(Union[bytes, bytearray, memoryview], int, int, int, PySide6.QtGui.QImage.Format, /, Optional[Callable[..., Any]] = None, Optional[int] = None)
  PySide6.QtGui.QImage.__init__(Union[str, bytes, os.PathLike[str]], /, Union[bytes, bytearray, memoryview, NoneType] = None)
  PySide6.QtGui.QImage.__init__(int, int, PySide6.QtGui.QImage.Format, /)

ESHARK22 avatar Mar 18 '25 06:03 ESHARK22