FD- / RPiPlay

An open-source AirPlay mirroring server for the Raspberry Pi. Supports iOS 9 and up.
GNU General Public License v3.0
4.93k stars 353 forks source link

No video pop-up for Ubuntu #195

Open SanderBorgmans opened 3 years ago

SanderBorgmans commented 3 years ago

Hi, I have been trying to cast my Ipad screen to my Ubuntu (18.04) laptop. While everything seems to work (the Ipad and laptop seem connected, using a wired connection for the laptop and the laptop hotspot for the ipad), no video output appears on my desktop after launching the rpiplay application and mirroring the screen of my Ipad.

I get the following output (no debug flag):

Initialized server socket(s)
*** WARNING *** The program 'rpiplay' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/blog/projects/avahi-compat.html>
Accepted IPv4 client on socket 29
Local: 10.42.0.1
Remote: 10.42.0.73
Accepted IPv4 client on socket 32
Local: 10.42.0.1
Remote: 10.42.0.73
raop_rtp_mirror starting mirroring

Using the debug flag, I get the following (stopped after a couple of seconds): Initialized server socket(s)

*** WARNING *** The program 'rpiplay' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/blog/projects/avahi-compat.html>
Accepted IPv4 client on socket 30
Local: 10.42.0.1
Remote: 10.42.0.73
httpd receiving on socket 30
conn_request
Handling request GET with URL /info
INFO len = -352335604
httpd receiving on socket 30
conn_request
Handling request POST with URL /pair-setup
httpd receiving on socket 30
conn_request
Handling request POST with URL /pair-verify
httpd receiving on socket 30
conn_request
Handling request POST with URL /pair-verify
httpd receiving on socket 30
conn_request
Handling request POST with URL /fp-setup
httpd receiving on socket 30
conn_request
Handling request POST with URL /fp-setup
httpd receiving on socket 30
conn_request
Handling request SETUP with URL rtsp://10.42.0.1/6123499946918169206
DACP-ID: CC5A15E3531D28C
Active-Remote: 2183383873
Transport: null
SETUP 1
eiv_len = 16
ekey_len = 72
fairplay_decrypt ret = 0
timing_rport = 54875
raop_ntp parse remote ip = 10.42.0.73
raop_ntp starting time
raop_rtp parse remote ip = 10.42.0.73
raop_rtp_mirror parse remote ip = 10.42.0.73
eport = 33901, tport = 47970
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = -1607534488320372
Accepted IPv4 client on socket 32
Local: 10.42.0.1
Remote: 10.42.0.73
httpd receiving on socket 30
conn_request
Handling request GET with URL /info
INFO len = -352335604
httpd receiving on socket 30
conn_request
Handling request GET_PARAMETER with URL rtsp://10.42.0.1/6123499946918169206
httpd receiving on socket 30
conn_request
Handling request RECORD with URL rtsp://10.42.0.1/6123499946918169206
raop_handler_record
httpd receiving on socket 30
conn_request
Handling request SET_PARAMETER with URL rtsp://10.42.0.1/6123499946918169206
httpd receiving on socket 30
conn_request
Handling request SETUP with URL rtsp://10.42.0.1/6123499946918169206
DACP-ID: CC5A15E3531D28C
Active-Remote: 2183383873
Transport: null
type = 110
streamConnectionID = 12771718226008164549
raop_rtp_mirror starting mirroring
Mirroring initialized successfully
raop_rtp_mirror accepting client
raop_rtp_mirror width_source = 1298.000000 height_source = 972.000000 width = 1356.000000 height = 1016.000000
raop_rtp_mirror sps size = 18
raop_rtp_mirror pps size = 4
raop_rtp_mirror video ntp = 1607959310969878, now = 1607959310932882, latency = -36996
raop_rtp_mirror video ntp = 1607959310986545, now = 1607959310949448, latency = -37097
raop_rtp_mirror video ntp = 1607959311028246, now = 1607959310989910, latency = -38336
raop_rtp_mirror video ntp = 1607959311053260, now = 1607959311003263, latency = -49997
raop_rtp_mirror video ntp = 1607959311069937, now = 1607959311010759, latency = -59178
raop_rtp_mirror video ntp = 1607959311086613, now = 1607959311042623, latency = -43990
raop_rtp_mirror video ntp = 1607959311103290, now = 1607959311118994, latency = 15704
raop_rtp_mirror video ntp = 1607959311119966, now = 1607959311127074, latency = 7108
raop_rtp_mirror video ntp = 1607959311136643, now = 1607959311131533, latency = -5110
raop_rtp_mirror video ntp = 1607959311153319, now = 1607959311134519, latency = -18800
raop_rtp_mirror video ntp = 1607959311169996, now = 1607959311157738, latency = -12258
raop_rtp_mirror video ntp = 1607959311186672, now = 1607959311185372, latency = -1300
raop_rtp_mirror video ntp = 1607959311203349, now = 1607959311205788, latency = 2439
raop_rtp_mirror video ntp = 1607959311220025, now = 1607959311215235, latency = -4790
raop_rtp_mirror video ntp = 1607959311236702, now = 1607959311259574, latency = 22872
raop_rtp_mirror video ntp = 1607959311253378, now = 1607959311260921, latency = 7543
raop_rtp_mirror video ntp = 1607959311270055, now = 1607959311276151, latency = 6096
raop_rtp_mirror video ntp = 1607959311286731, now = 1607959311283144, latency = -3587
raop_rtp_mirror video ntp = 1607959311303408, now = 1607959311293587, latency = -9821
raop_rtp_mirror video ntp = 1607959311320084, now = 1607959311298163, latency = -21921
raop_rtp_mirror video ntp = 1607959311336761, now = 1607959311310896, latency = -25865
raop_rtp_mirror video ntp = 1607959311353437, now = 1607959311311213, latency = -42224
raop_rtp_mirror video ntp = 1607959311370104, now = 1607959311358804, latency = -11300
raop_rtp_mirror video ntp = 1607959311386771, now = 1607959311359118, latency = -27653
raop_rtp_mirror video ntp = 1607959311403437, now = 1607959311366434, latency = -37003
httpd receiving on socket 30
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_rtp_mirror video ntp = 1607959312946043, now = 1607959312920272, latency = -25771
raop_rtp_mirror video ntp = 1607959312962710, now = 1607959312925294, latency = -37416
raop_rtp_mirror video ntp = 1607959312979376, now = 1607959312943491, latency = -35885
raop_rtp_mirror video ntp = 1607959312996043, now = 1607959312960809, latency = -35234
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 30
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_rtp_mirror video ntp = 1607959315164018, now = 1607959315106066, latency = -57952
raop_rtp_mirror video ntp = 1607959315214018, now = 1607959315217500, latency = 3482
raop_rtp_mirror video ntp = 1607959315297351, now = 1607959315296726, latency = -625
raop_rtp_mirror video ntp = 1607959315347351, now = 1607959315316348, latency = -31003
raop_rtp_mirror video ntp = 1607959316231364, now = 1607959316179309, latency = -52055
raop_rtp_mirror video ntp = 1607959316248030, now = 1607959316215421, latency = -32609
raop_rtp_mirror video ntp = 1607959316281364, now = 1607959316250988, latency = -30376
raop_rtp_mirror video ntp = 1607959316314697, now = 1607959316285484, latency = -29213
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 4517
httpd receiving on socket 30
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_rtp_mirror video ntp = 1607959317377525, now = 1607959317316730, latency = -60795
raop_rtp_mirror video ntp = 1607959317410859, now = 1607959317421305, latency = 10446
raop_rtp_mirror video ntp = 1607959317444192, now = 1607959317429511, latency = -14681
raop_rtp_mirror video ntp = 1607959317477525, now = 1607959317449629, latency = -27896
^CStopping...
httpd receiving on socket 30
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
Removing connection for socket 30
Destroying connection
raop_ntp stopping time thread
raop_ntp exiting thread
raop_ntp stopped time thread
raop_rtp_mirror exiting TCP thread
Removing connection for socket 32
Destroying connection
Exiting HTTP thread

Where is the video output going? Could I force it to show in some way? Please let me know what info you require about my system(s). I should have installed the latest versions of the required packages using the installation documentation.

Thanks in advance.

hambergerpls commented 3 years ago

I faced this problem too, but I solved it by allowing all incoming connection in ufw GUI. Restarted the server and screenshared my iPhone SE 1st Gen iOS 14.2. It should pop-up gstreamer player after a second.

I'm not sure of any other ways without disabling the firewall, though, unless there is an option to start the server at a specific port.

SanderBorgmans commented 3 years ago

I should have enabled all connections. UFW is disabled and I used the following commands to open all ports for my hotspot connection (nm-shared is assigned as the firewall zone for the hotspot):

firewall-cmd --add-port=1025-65535/tcp --permanent --zone=nm-shared firewall-cmd --add-port=1025-65535/udp --permanent --zone=nm-shared firewall-cmd --reload

Should I be changing UFW settings as well?

pallas commented 3 years ago

https://github.com/FD-/RPiPlay/pull/196

CO2020 commented 3 years ago

I have the same problem. I am running Ubuntu 20.04 and even tried to use the static ports (#196). Do you have any advice?

./rpiplay -d
Initialized server socket(s)
*** WARNING *** The program 'rpiplay' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/blog/projects/avahi-compat.html>
Accepted IPv4 client on socket 28
Local: 192.168.179.160
Remote: 192.168.179.109
httpd receiving on socket 28
conn_request
Handling request GET with URL /info
INFO len = -1619011284
httpd receiving on socket 28
conn_request
Handling request POST with URL /pair-setup
httpd receiving on socket 28
conn_request
Handling request POST with URL /pair-verify
httpd receiving on socket 28
conn_request
Handling request POST with URL /pair-verify
httpd receiving on socket 28
conn_request
Handling request POST with URL /fp-setup
httpd receiving on socket 28
conn_request
Handling request POST with URL /fp-setup
httpd receiving on socket 28
conn_request
Handling request SETUP with URL rtsp://192.168.179.160/14296341740308023520
DACP-ID: 5365B482946A12E8
Active-Remote: 2174649013
Transport: null
SETUP 1
eiv_len = 16
ekey_len = 72
fairplay_decrypt ret = 0
timing_rport = 59051
raop_ntp parse remote ip = 192.168.179.109
raop_ntp starting time
raop_rtp parse remote ip = 192.168.179.109
raop_rtp_mirror parse remote ip = 192.168.179.109
eport = 7000, tport = 7011
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = -1610205404112555
Accepted IPv4 client on socket 30
Local: 192.168.179.160
Remote: 192.168.179.109
httpd receiving on socket 28
conn_request
Handling request GET with URL /info
INFO len = -1619011284
httpd receiving on socket 28
conn_request
Handling request GET_PARAMETER with URL rtsp://192.168.179.160/14296341740308023520
httpd receiving on socket 28
conn_request
Handling request RECORD with URL rtsp://192.168.179.160/14296341740308023520
raop_handler_record
httpd receiving on socket 28
conn_request
Handling request SET_PARAMETER with URL rtsp://192.168.179.160/14296341740308023520
httpd receiving on socket 28
conn_request
Handling request SETUP with URL rtsp://192.168.179.160/14296341740308023520
DACP-ID: 5365B482946A12E8
Active-Remote: 2174649013
Transport: null
type = 110
streamConnectionID = 9504155112330183043
raop_rtp_mirror starting mirroring
Mirroring initialized successfully
raop_rtp_mirror accepting client
raop_rtp_mirror width_source = 450.000000 height_source = 972.000000 width = 470.000000 height = 1016.000000
raop_rtp_mirror sps size = 17
raop_rtp_mirror pps size = 4
raop_rtp_mirror video ntp = 1610391993895620, now = 1610391993850490, latency = -45130
raop_rtp_mirror video ntp = 1610391993945626, now = 1610391993866439, latency = -79187
raop_rtp_mirror video ntp = 1610391993962295, now = 1610391993883439, latency = -78856
raop_rtp_mirror video ntp = 1610391993978964, now = 1610391993900719, latency = -78245
raop_rtp_mirror video ntp = 1610391993995632, now = 1610391993921854, latency = -73778
raop_rtp_mirror video ntp = 1610391994012301, now = 1610391993937194, latency = -75107
raop_rtp_mirror video ntp = 1610391994028970, now = 1610391993955998, latency = -72972
raop_rtp_mirror video ntp = 1610391994045639, now = 1610391993971288, latency = -74351
raop_rtp_mirror video ntp = 1610391994062307, now = 1610391993990698, latency = -71609
raop_rtp_mirror video ntp = 1610391994078976, now = 1610391994006759, latency = -72217
raop_rtp_mirror video ntp = 1610391994095645, now = 1610391994026744, latency = -68901
raop_rtp_mirror video ntp = 1610391994112314, now = 1610391994038273, latency = -74041
raop_rtp_mirror video ntp = 1610391994128982, now = 1610391994055472, latency = -73510
raop_rtp_mirror video ntp = 1610391994145651, now = 1610391994070771, latency = -74880
raop_rtp_mirror video ntp = 1610391994162320, now = 1610391994088491, latency = -73829
raop_rtp_mirror video ntp = 1610391994178989, now = 1610391994104323, latency = -74666
raop_rtp_mirror video ntp = 1610391994195657, now = 1610391994122017, latency = -73640
raop_rtp_mirror video ntp = 1610391994212326, now = 1610391994141778, latency = -70548
raop_rtp_mirror video ntp = 1610391994228995, now = 1610391994152849, latency = -76146
raop_rtp_mirror video ntp = 1610391994245664, now = 1610391994172480, latency = -73184
raop_rtp_mirror video ntp = 1610391994262332, now = 1610391994188764, latency = -73568
raop_rtp_mirror video ntp = 1610391994279001, now = 1610391994204211, latency = -74790
raop_rtp_mirror video ntp = 1610391994295670, now = 1610391994217668, latency = -78002
raop_rtp_mirror video ntp = 1610391994312339, now = 1610391994241095, latency = -71244
raop_rtp_mirror video ntp = 1610391994345676, now = 1610391994265591, latency = -80085
raop_rtp_mirror video ntp = 1610391994362345, now = 1610391994282864, latency = -79481
raop_rtp_mirror video ntp = 1610391994379014, now = 1610391994302490, latency = -76524
raop_rtp_mirror video ntp = 1610391994395682, now = 1610391994318800, latency = -76882
raop_rtp_mirror video ntp = 1610391994412351, now = 1610391994339807, latency = -72544
raop_rtp_mirror video ntp = 1610391994429020, now = 1610391994352894, latency = -76126
raop_rtp_mirror video ntp = 1610391994445689, now = 1610391994371619, latency = -74070
raop_rtp_mirror video ntp = 1610391994462357, now = 1610391994385537, latency = -76820
raop_rtp_mirror video ntp = 1610391994479026, now = 1610391994404102, latency = -74924
raop_rtp_mirror video ntp = 1610391994495695, now = 1610391994418720, latency = -76975
raop_rtp_mirror video ntp = 1610391994512364, now = 1610391994438029, latency = -74335
raop_rtp_mirror video ntp = 1610391994529032, now = 1610391994451958, latency = -77074
raop_rtp_mirror video ntp = 1610391994545701, now = 1610391994470665, latency = -75036
raop_rtp_mirror video ntp = 1610391994562370, now = 1610391994485439, latency = -76931
raop_rtp_mirror video ntp = 1610391994579039, now = 1610391994503623, latency = -75416
raop_rtp_mirror video ntp = 1610391994595707, now = 1610391994517086, latency = -78621
raop_rtp_mirror video ntp = 1610391994612376, now = 1610391994537223, latency = -75153
raop_rtp_mirror video ntp = 1610391994629045, now = 1610391994553610, latency = -75435
raop_rtp_mirror video ntp = 1610391994645714, now = 1610391994570892, latency = -74822
raop_rtp_mirror video ntp = 1610391994662382, now = 1610391994587979, latency = -74403
raop_rtp_mirror video ntp = 1610391994679051, now = 1610391994605415, latency = -73636
raop_rtp_mirror video ntp = 1610391994695720, now = 1610391994620188, latency = -75532
raop_rtp_mirror video ntp = 1610391994712389, now = 1610391994638167, latency = -74222
raop_rtp_mirror video ntp = 1610391994729057, now = 1610391994652983, latency = -76074
raop_rtp_mirror video ntp = 1610391994745726, now = 1610391994673277, latency = -72449
raop_rtp_mirror video ntp = 1610391994762395, now = 1610391994685281, latency = -77114
raop_rtp_mirror video ntp = 1610391994779064, now = 1610391994703931, latency = -75133
raop_rtp_mirror video ntp = 1610391994795732, now = 1610391994718799, latency = -76933
raop_rtp_mirror video ntp = 1610391994812401, now = 1610391994738109, latency = -74292
raop_rtp_mirror video ntp = 1610391994829070, now = 1610391994753040, latency = -76030
raop_rtp_mirror video ntp = 1610391994845739, now = 1610391994771034, latency = -74705
raop_rtp_mirror video ntp = 1610391994862407, now = 1610391994783233, latency = -79174
raop_rtp_mirror video ntp = 1610391994879076, now = 1610391994802814, latency = -76262
raop_rtp_mirror video ntp = 1610391994895745, now = 1610391994816074, latency = -79671
raop_rtp_mirror video ntp = 1610391994912414, now = 1610391994831757, latency = -80657
raop_rtp_mirror video ntp = 1610391994929082, now = 1610391994847020, latency = -82062
raop_rtp_mirror video ntp = 1610391994945751, now = 1610391994870260, latency = -75491
raop_rtp_mirror video ntp = 1610391994962420, now = 1610391994884465, latency = -77955
raop_rtp_mirror video ntp = 1610391994979089, now = 1610391994908187, latency = -70902
raop_rtp_mirror video ntp = 1610391994995757, now = 1610391994921528, latency = -74229
raop_rtp_mirror video ntp = 1610391995012426, now = 1610391994938939, latency = -73487
raop_rtp_mirror video ntp = 1610391995029095, now = 1610391994953166, latency = -75929
raop_rtp_mirror video ntp = 1610391995045764, now = 1610391994970901, latency = -74863
raop_rtp_mirror video ntp = 1610391995062432, now = 1610391994986352, latency = -76080
raop_rtp_mirror video ntp = 1610391995079101, now = 1610391995005862, latency = -73239
raop_rtp_mirror video ntp = 1610391995095770, now = 1610391995020041, latency = -75729
raop_rtp_mirror video ntp = 1610391995112439, now = 1610391995038597, latency = -73842
raop_rtp_mirror video ntp = 1610391995129107, now = 1610391995053037, latency = -76070
raop_rtp_mirror video ntp = 1610391995145776, now = 1610391995070700, latency = -75076
raop_rtp_mirror video ntp = 1610391995162445, now = 1610391995086821, latency = -75624
raop_rtp_mirror video ntp = 1610391995179114, now = 1610391995104237, latency = -74877
raop_rtp_mirror video ntp = 1610391995195782, now = 1610391995118417, latency = -77365
raop_rtp_mirror video ntp = 1610391995212451, now = 1610391995136859, latency = -75592
raop_rtp_mirror video ntp = 1610391995229120, now = 1610391995147142, latency = -81978
raop_rtp_mirror video ntp = 1610391995245789, now = 1610391995170116, latency = -75673
raop_rtp_mirror video ntp = 1610391995262457, now = 1610391995185274, latency = -77183
raop_rtp_mirror video ntp = 1610391995279126, now = 1610391995208128, latency = -70998
raop_rtp_mirror video ntp = 1610391995295795, now = 1610391995222247, latency = -73548
raop_rtp_mirror video ntp = 1610391995312464, now = 1610391995238655, latency = -73809
raop_rtp_mirror video ntp = 1610391995329132, now = 1610391995253201, latency = -75931
raop_rtp_mirror video ntp = 1610391995345801, now = 1610391995272209, latency = -73592
raop_rtp_mirror video ntp = 1610391995362470, now = 1610391995285099, latency = -77371
raop_rtp_mirror video ntp = 1610391995379139, now = 1610391995305520, latency = -73619
raop_rtp_mirror video ntp = 1610391995395807, now = 1610391995319338, latency = -76469
raop_rtp_mirror video ntp = 1610391995412476, now = 1610391995338452, latency = -74024
raop_rtp_mirror video ntp = 1610391995429145, now = 1610391995356065, latency = -73080
raop_rtp_mirror video ntp = 1610391995462482, now = 1610391995384954, latency = -77528
raop_rtp_mirror video ntp = 1610391995479151, now = 1610391995405099, latency = -74052
raop_rtp_mirror video ntp = 1610391995495820, now = 1610391995419462, latency = -76358
raop_rtp_mirror video ntp = 1610391995512489, now = 1610391995437446, latency = -75043
raop_rtp_mirror video ntp = 1610391995529157, now = 1610391995449827, latency = -79330
raop_rtp_mirror video ntp = 1610391995545826, now = 1610391995473323, latency = -72503
raop_rtp_mirror video ntp = 1610391995562495, now = 1610391995483663, latency = -78832
raop_rtp_mirror video ntp = 1610391995579164, now = 1610391995503629, latency = -75535
raop_rtp_mirror video ntp = 1610391995595832, now = 1610391995521666, latency = -74166
raop_rtp_mirror video ntp = 1610391995612501, now = 1610391995538817, latency = -73684
raop_rtp_mirror video ntp = 1610391995629170, now = 1610391995556308, latency = -72862
raop_rtp_mirror video ntp = 1610391995645839, now = 1610391995571797, latency = -74042
raop_rtp_mirror video ntp = 1610391995662507, now = 1610391995587916, latency = -74591
raop_rtp_mirror video ntp = 1610391995679176, now = 1610391995604362, latency = -74814
raop_rtp_mirror video ntp = 1610391995695845, now = 1610391995619471, latency = -76374
raop_rtp_mirror video ntp = 1610391995712514, now = 1610391995637708, latency = -74806
raop_rtp_mirror video ntp = 1610391995729182, now = 1610391995651875, latency = -77307
raop_rtp_mirror video ntp = 1610391995762520, now = 1610391995684693, latency = -77827
raop_rtp_mirror video ntp = 1610391995795857, now = 1610391995713996, latency = -81861
raop_rtp_mirror video ntp = 1610391995845864, now = 1610391995768665, latency = -77199
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_rtp_mirror video ntp = 1610391995862530, now = 1610391995818471, latency = -44059
raop_rtp_mirror video ntp = 1610391995879197, now = 1610391995834913, latency = -44284
raop_rtp_mirror video ntp = 1610391995895864, now = 1610391995851680, latency = -44184
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 1052
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = -26
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = -373
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 205
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 330
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 1469
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 1152
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 1238
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 689
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_rtp_mirror video ntp = 1610392121872546, now = 1610392121812323, latency = -60223
raop_rtp_mirror video ntp = 1610392121889213, now = 1610392121842023, latency = -47190
raop_rtp_mirror video ntp = 1610392121905880, now = 1610392121857447, latency = -48433
raop_rtp_mirror video ntp = 1610392121922546, now = 1610392121874027, latency = -48519
raop_rtp_mirror video ntp = 1610392121939213, now = 1610392121891899, latency = -47314
raop_rtp_mirror video ntp = 1610392122006742, now = 1610392121926557, latency = -80185
raop_rtp_mirror video ntp = 1610392122023408, now = 1610392121974387, latency = -49021
raop_rtp_mirror video ntp = 1610392122040075, now = 1610392121990930, latency = -49145
raop_rtp_mirror video ntp = 1610392122056742, now = 1610392122007869, latency = -48873
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 1418
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive timeout
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
httpd receiving on socket 28
conn_request
Handling request POST with URL /feedback
raop_handler_feedback
raop_ntp send_len = 32
raop_ntp receive time type_t packetlen = 32
raop_ntp sync correction = 0
^Z
Waester commented 3 years ago

@SanderBorgmans @CO2020 I am no expert on the rpiplay application, but I know that when the initial connection is established and when the mirroring is shown on the laptop there should be at the minimum three network connections established (more if audio is being played).

Can you verify if that is the case? You should be able to run "ss -tunp | grep rpiplay" to see that.

If you see anything less than three, then there might still be something that is blocking.

FYI, I don't think rpiplay support casting individual videos, like a youtube video. It has to be ipad mirroring. Someone correct me if I am wrong, because I never got casting video to work. Only mirroring the entire screen.

SanderBorgmans commented 3 years ago

@Waester I get the following output:

tcp   ESTAB  0       0                                         10.42.0.1:37785                       10.42.0.73:53930  users:(("rpiplay",pid=14255,fd=32))      
tcp   ESTAB  0       0                                         10.42.0.1:41293                       10.42.0.73:53931  users:(("rpiplay",pid=14255,fd=34))      
tcp   ESTAB  0       0                                         10.42.0.1:37785                       10.42.0.73:53929  users:(("rpiplay",pid=14255,fd=25)) 

And concerning the casting, I really want to use it for mirroring the whole screen. So that is not an issue.

CO2020 commented 3 years ago

@Waester I get the following output:

ss -tunp | grep rpiplay
tcp   ESTAB      0      0               192.168.179.160:7000    192.168.179.139:50293 users:(("rpiplay",pid=21836,fd=30))                                       
tcp   ESTAB      0      0               192.168.179.160:7100    192.168.179.139:50294 users:(("rpiplay",pid=21836,fd=32))                                       
tcp   ESTAB      0      0               192.168.179.160:7000    192.168.179.139:50292 users:(("rpiplay",pid=21836,fd=28))  

Any idea? Thanks in advance.

Waester commented 3 years ago

Network wise it seems to be fine for both of you.

Can you verify that all the dependacies is installed? If anything is missing you should install it and try again.

sudo apt install libavahi-compat-libdnssd1 libplist3 libssl1.1 libgstreamer1.0-0 libgstreamer-plugins-base1.0-0 gstreamer1.0-libav gstreamer1.0-vaapi gstreamer1.0-plugins-bad

Aside from that I have no further ideas, hopefully @FD- or @pallas can help you troubleshoot further.

SanderBorgmans commented 3 years ago

@Waester It seems fine, I get the following output:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
libplist3 is already the newest version (2.0.0-2ubuntu1).
libavahi-compat-libdnssd1 is already the newest version (0.7-3.1ubuntu1.2).
libavahi-compat-libdnssd1 set to manually installed.
libgstreamer-plugins-base1.0-0 is already the newest version (1.14.5-0ubuntu1~18.04.1).
libgstreamer1.0-0 is already the newest version (1.14.5-0ubuntu1~18.04.1).
libssl1.1 is already the newest version (1.1.1-1ubuntu2.1~18.04.7).
libssl1.1 set to manually installed.
gstreamer1.0-libav is already the newest version (1.14.5-0ubuntu1~18.04.1).
gstreamer1.0-plugins-bad is already the newest version (1.14.5-0ubuntu1~18.04.1).
gstreamer1.0-vaapi is already the newest version (1.14.5-0ubuntu1~ubuntu18.04.1).
0 to upgrade, 0 to newly install, 0 to remove and 0 not to upgrade.
CO2020 commented 3 years ago

@Waester It seems fine. I get the following output:

Paketlisten werden gelesen... Fertig
Abhängigkeitsbaum wird aufgebaut.       
Statusinformationen werden eingelesen.... Fertig
libavahi-compat-libdnssd1 ist schon die neueste Version (0.7-4ubuntu7).
libgstreamer-plugins-base1.0-0 ist schon die neueste Version (1.16.2-4).
libgstreamer1.0-0 ist schon die neueste Version (1.16.2-2).
libplist3 ist schon die neueste Version (2.1.0-4build2).
gstreamer1.0-libav ist schon die neueste Version (1.16.2-2).
gstreamer1.0-plugins-bad ist schon die neueste Version (1.16.2-2.1ubuntu1).
gstreamer1.0-vaapi ist schon die neueste Version (1.16.2-2).
libssl1.1 ist schon die neueste Version (1.1.1f-1ubuntu2.1).
0 aktualisiert, 0 neu installiert, 0 zu entfernen und 0 nicht aktualisiert.
CO2020 commented 3 years ago

I’m using Ubuntu 20.04 with nvidia drivers.

sudo apt remove gstreamer1.0-vaapi
sudo apt autoremove

Thanks!

Originally posted by @fduncanh in https://github.com/antimof/UxPlay/issues/27#issuecomment-757442460

SanderBorgmans commented 3 years ago

@CO2020 Amazingly this works! Thank you so much.

tanrax commented 3 years ago

That's how it worked for me. Thank you very much @CO2020

hdavid16 commented 3 years ago

Not working with Intel drivers

tanrax commented 3 years ago

@hdavid16 I use Intel drives and it does work for me, what equipment do you have?

hdavid16 commented 3 years ago

@hdavid16 I use Intel drives and it does work for me, what equipment do you have?

Intel 3rd gen core graphics Intel core i7 processor Ubuntu 20.04

I get the warnings mentioned at the beginning of this thread. I can connect via airplay, but the video window does not pop up on my Ubuntu:


Initialized server socket(s)
*** WARNING *** The program 'rpiplay' uses the Apple Bonjour compatibility layer of Avahi.
*** WARNING *** Please fix your application to use the native API of Avahi!
*** WARNING *** For more information see <http://0pointer.de/blog/projects/avahi-compat.html>
Accepted IPv4 client on socket 33
Local: 192.168.1.106
Remote: 192.168.1.103
Accepted IPv4 client on socket 35
Local: 192.168.1.106
Remote: 192.168.1.103
raop_rtp starting audio
kolaente commented 3 years ago

I'm having the same issue on nixos (see #246). Additionally I see a lot of these errors:

** (rpiplay:12676): CRITICAL **: 13:29:31.348: gst_app_src_push_internal: assertion 'GST_IS_APP_SRC (appsrc)' failed

Not quite sure if they are relevant to the error or not.

It seems to receiving video though, there's just no window opening to output it.

Full logs: https://gist.github.com/kolaente/e6afd18b07874fe56f2fe9a62b5e6b11

rogeriomcoelho commented 3 years ago

I’m using Ubuntu 20.04 with nvidia drivers.

sudo apt remove gstreamer1.0-vaapi
sudo apt autoremove
  • build it again
  • it works!

Thanks!

Originally posted by @fduncanh in antimof/UxPlay#27 (comment)

Thanks man!!!! It's works for me!!!