FDH2 / UxPlay

AirPlay Unix mirroring server

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Using UxPlay to mirror Keynote Presentation on iPad

Booth1983 opened this issue · comments

Hi, it seems UxPlay has problems with Keynote presentations. It doesn't update the page every time so that the page on the iPad is newer then the page on UxPlay.

I tested mirroring Keynote from an iPad, and it works perfectly on uxplay for me

Tested with UxPlay-1.56 on both a linux desktop and a raspberry pi model 4B (keynote was running on an iPad)

For keynote, since its not a movie, maybe option "uxplay -vsync no" which doesn't use
timestamps to synchonize audio and video is what you need. This is best for "live streaming" (which I suppose a keynote presentation is?)

Give more details about what UxPlay is running on. (e.g. hardware, operating system, etc.).
I would guess "-vsync no", would fix your issue.

The README has a section on this
in Starting and running UxPlay
which says:

In Mirror mode, GStreamer has a choice of two methods to play video with its accompanying audio: prior to UxPlay-1.64, the video and audio streams were both played as soon as possible after they arrived (the GStreamer "sync=false" method), with a GStreamer internal clock used to try to keep them synchronized. Starting with UxPlay-1.64, the other method (GStreamer's "sync=true" mode), which uses timestamps in the audio and video streams sent by the client, is the new default. On low-decoding-power UxPlay hosts (such as Raspberry Pi 3 models) this will drop video frames that cannot be decoded in time to play with the audio, making the video jerky, but still synchronized.

The older method which does not drop late video frames worked well on more powerful systems, and is still available with the UxPlay option "-vsync no"; this method is adapted to "live streaming", and may be better when using UxPlay as a second monitor for a Mac computer, for example, while the new default timestamp-based method is best for watching a video, to keep lip movements and voices synchronized. (Without use of timestamps, video will eventually lag behind audio if it cannot be decoded fast enough: hardware-accelerated video-decoding helped to prevent this previously when timestamps were not being used.)

Problem seems to be solved. Thank you for the tipp.

the recent UxPlay releases support a startup configuration file (see man uxplay) e.g. "~/.uxplayrc"

The default can be switched with a line
vsync no
in the startup file
(then starting uxplay with "uxplay -vsync" will override the startup file)