membraneframework-labs / membrane_videoroom

Apache License 2.0
42 stars 8 forks source link

MV-304 Optimize requested simulcast layer #121

Closed kamil-stasiak closed 1 year ago

kamil-stasiak commented 1 year ago

Few minor things: 1. Screenshot 2023-02-14 at 13 49 19 It would be nice to have encoding dropdown button next to the current target value.

The first line shows the selected target. It's based on tile size, user input, and additional rules. It shows our last request.

The second one shows just user input which is the upper bound.

Edit:

image

~~Target: h - current selected target, either by user or by algorithm L M H - buttons for force change encoding, you could use them to bypass user's upper limit or algorithm value Target limit: - it sets the encoding upper limit, the automatic algorithm cannot ignore that value.~~

bblaszkow06 commented 1 year ago

Target: h - current selected target, either by user or by algorithm L M H - buttons for force change encoding, you could use them to bypass user's upper limit > or algorithm value Target cap: - it sets the encoding upper limit, the automatic algorithm cannot ignore that value.

It is important to ensure this info is available to others:

  1. It would be nice to add additional info shown on hover
  2. Anything not mentioned there should be in comments in code
kamil-stasiak commented 1 year ago

I've change that menu. Now this menu depends on Smart layer switching value.

image

Smart layer switching selected:

image image

Smart layer switching not selected:

image image

It's easier to separate automatic and manual layer switching. It's hard to decide which value should be superior: tile size or the last requester layer. I have tested many solutions, but none of them were satisfactory. Some of them made the algorithm unnecessarily complicated, which is not desirable for a simple developer menu.