SAP streams list constantly refreshing

For questions and discussion that is NOT (I repeat NOT) specific to a certain Operating System.
eug950
New Cone
New Cone
Posts: 8
Joined: 27 Jan 2011 12:26

SAP streams list constantly refreshing

Postby eug950 » 18 Aug 2011 16:06

I have a list of about 90 channels multicasted in the network. When Itry to use SAP announcement instead of playlist in file, I get constantly refreshing playlist with items shuffling here and there. Search on this forum shows that the problem is not new, see viewtopic.php?f=2&t=88020&hilit=sap and viewtopic.php?f=14&t=74301

Looking into the code the problem is in modules/services_discovery/sap.c in function Run, specifically in this code:

Code: Select all

/* Remove the annoucement, if the last announcement was 1 hour ago * or if the last packet emitted was 3 times the average time * between two packets */ if( ( p_announce->i_period_trust > 5 && i_last_period > 3 * p_announce->i_period ) || i_last_period > i_timeout ) { RemoveAnnounce( p_sd, p_announce ); } else ...
When I change part of the condition from

Code: Select all

i_last_period > 3 * p_announce->i_period
to

Code: Select all

i_last_period > 30 * p_announce->i_period
everything is fixed and SAP list is rock solid.
Can this number be configurable for those of us who hit this problem?

Rémi Denis-Courmont
Developer
Developer
Posts: 15266
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: SAP streams list constantly refreshing

Postby Rémi Denis-Courmont » 18 Aug 2011 16:37

Obviously no, they are not configurable. And I guess they shouldn't be. The values may be wrong though.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

eug950
New Cone
New Cone
Posts: 8
Joined: 27 Jan 2011 12:26

Re: SAP streams list constantly refreshing

Postby eug950 » 18 Aug 2011 17:20

I've added a code to show the values of dynamic timeout,

Code: Select all

if( ( p_announce->i_period_trust > 5 && i_last_period > 3 * p_announce->i_period ) ) msg_Dbg( p_sd, "hit the leg: i_last_period %llu, i_period %llu", i_last_period, p_announce->i_period );
here is the output:

Code: Select all

sap debug: hit the leg: i_last_period 5071153, i_period 1682680 sap debug: hit the leg: i_last_period 5071243, i_period 1682680 sap debug: hit the leg: i_last_period 5069620, i_period 1683637 sap debug: hit the leg: i_last_period 5069692, i_period 1683637 sap debug: hit the leg: i_last_period 5072075, i_period 1683018 sap debug: hit the leg: i_last_period 5072146, i_period 1683018 sap debug: hit the leg: i_last_period 5072124, i_period 1683007 sap debug: hit the leg: i_last_period 5072226, i_period 1683007 sap debug: hit the leg: i_last_period 5072120, i_period 1683002 sap debug: hit the leg: i_last_period 5072292, i_period 1683002 sap debug: hit the leg: i_last_period 5072167, i_period 1682998 sap debug: hit the leg: i_last_period 5072238, i_period 1682998 sap debug: hit the leg: i_last_period 5072138, i_period 1683014 sap debug: hit the leg: i_last_period 5072211, i_period 1683014 sap debug: hit the leg: i_last_period 5072154, i_period 1683000 sap debug: hit the leg: i_last_period 5072226, i_period 1683000 sap debug: hit the leg: i_last_period 5072140, i_period 1683008 sap debug: hit the leg: i_last_period 5072212, i_period 1683008 sap debug: hit the leg: i_last_period 5074245, i_period 1683192 sap debug: hit the leg: i_last_period 5074318, i_period 1683192 sap debug: hit the leg: i_last_period 5072145, i_period 1682720 sap debug: hit the leg: i_last_period 5072217, i_period 1682720 sap debug: hit the leg: i_last_period 5070211, i_period 1683813 sap debug: hit the leg: i_last_period 5070295, i_period 1683813
minisapserver in my network runs with sap_delay=5, I think i_last_period shows exactly this value in usecs.
Not sure how this correlates...

Rémi Denis-Courmont
Developer
Developer
Posts: 15266
Joined: 07 Jun 2004 16:01
VLC version: master
Operating System: Linux
Contact:

Re: SAP streams list constantly refreshing

Postby Rémi Denis-Courmont » 18 Aug 2011 17:44

I don't really grasp the timeout logic in the SAP receiver either.
Rémi Denis-Courmont
https://www.remlab.net/
Private messages soliciting support will be systematically discarded

eug950
New Cone
New Cone
Posts: 8
Joined: 27 Jan 2011 12:26

Re: SAP streams list constantly refreshing

Postby eug950 » 18 Aug 2011 18:34

All I can add for now is that if I change sap_delay for minisapserver then timeout values change accordingly.
for example with sap_delay=15 I've got i_last_period 14949523, i_period 4960453.
Have to find the logic here...


Return to “General VLC media player Troubleshooting”

Who is online

Users browsing this forum: No registered users and 20 guests