Skip to main content
. 2022 Nov 29;22(23):9307. doi: 10.3390/s22239307
Algorithm 2. Server side algorithm.
Let S and T be the spatial and temporal resolution vector, respectively, given by:
S={SR1, SR2, SR3, SR4,SR5}, T={TR1, TR2, TR3, TR4, TR5}.
  • (1)

    Initially set SR1 and TR1 to a default value (SQCIF,Td);

  • (2)

    Continue:

Read feedback message (status) from the client;
If (Status ==Stabilized),
     continue with the existing setup;
Else if (Status ==Progressive),
     call A-LSTM(status), ##Increase Spatial/Temporal resolution;
Else if (Status ==Fluctuated),
     find Switch_time (bit rate),
   call A-LSTM(status), ##Update Spatial/Temporal resolution;
Else if (Status ==Degraded),
     call A-LSTM(status), ##decrease Spatial/Temporal resolution;
Else if (Status ==Nonmonotonic),
     wait till next feedback message arrives;
  • (3)

    Continue till connection is terminated;

A. Function Find_Switch_Time (bit rate):
Calculate time for quality switch Tswitch=TQSk+1TQSk:
     #where TQSk+1 is the time instant at the end of kth served quality switching,
     # request, and TQSk is the present time instant attending previous quality,
     # switching request;
Set a timer when request for quality switch is received;
Wait for the next feedback message;
If (Tswitch> TFluctuation_time),
     discard the request for quality switching and wait for next client
     feedback message;
Else,
     serve the request for quality switching.