FDH2 / UxPlay

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

Issue with avahi on Arch linux #163

Closed fduncanh closed 1 year ago

fduncanh commented 1 year ago

Trying to track down an issue on Arch (EDIT: Doesnt happen on Manjaro)

  1. start UxPlay, airplay mirror session.
  2. close airplay mirrorwindow on server by clicking the close button on that window.
  3. uxplay resets,
UxPlay 1.60: An Open-Source AirPlay mirroring and audio-streaming server.
using system MAC address xx:xx:xx:xx:xx:xx
Initialized server socket(s)
Accepted IPv4 client on socket 24
Local: 192.168.1.8
Remote: 192.168.1.116
Client identified as User-Agent: AirPlay/665.13.1
Accepted IPv4 client on socket 26
Local: 192.168.1.8
Remote: 192.168.1.116
raop_rtp_mirror starting mirroring
Begin streaming to GStreamer video pipeline

*** X11 Windows: Use key F11 or (left Alt)+Enter to toggle full-screen mode

GStreamer error: Output window was closed
Removing connection for socket 24
raop_rtp_mirror->running is no longer true
Removing connection for socket 26
Initialized server socket(s)
  1. But the client can no longer see uxplay (it still lists it, but cannot connect), even though avahi-browse -a -t in a different terminal window on the server shows uxplay is still registered with the dns_sd server.

I would like to know if this a uxplay issue (to fix it) or an avahi issue on Arch (to document how to set up avahi to fix it). Maybe it is special to the test setup being used. Does anyone else have this issue?

fduncanh commented 1 year ago

This seems to be a misconfigured-avahi issue on Arch.

On Manjaro all the local services are showing, in particular the local (same machine) listing from avahi-browse -v -a -t is

+   eno1 IPv6 UxPlay                                        AirPlay Remote Video local
+   eno1 IPv4 UxPlay                                        AirPlay Remote Video local
+     lo IPv4 UxPlay                                        AirPlay Remote Video local
+   eno1 IPv6 863EA27598FE@UxPlay                           AirTunes Remote Audio local
+   eno1 IPv4 863EA27598FE@UxPlay                           AirTunes Remote Audio local
+     lo IPv4 863EA27598FE@UxPlay                           AirTunes Remote Audio local

On Arch, only the loopback interface , not the ethernet network, is showing (only ipv4 is configured here)

+     lo IPv4 UxPlay                                        AirPlay Remote Video local
+     lo IPv4 EE4190DBEAB6@UxPlay                           AirTunes Remote Audio local

This is presumably (?) the issue

lots of other stuff shows up on Manjaro, nothing else on Arch.

fduncanh commented 1 year ago

Problem solved: if there is a firewall, UDP port 5353 must be opened to receive mDNS queries from the network (then everything works OK).

https://brainxploit.com/how-to-set-up-avahi-on-arch-linux/