wiki:statmux_priorities
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
wiki:statmux_priorities [2016/12/09 09:07] – [Specifications] walkeradmin | wiki:statmux_priorities [2023/03/09 22:35] (current) – external edit 127.0.0.1 | ||
---|---|---|---|
Line 8: | Line 8: | ||
\\ | \\ | ||
\\ | \\ | ||
+ | |||
+ | ---- | ||
==== Context ==== | ==== Context ==== | ||
\\ | \\ | ||
Line 16: | Line 18: | ||
\\ | \\ | ||
\\ | \\ | ||
+ | |||
+ | ---- | ||
==== Specifications ==== | ==== Specifications ==== | ||
- | \\ | ||
\\ | \\ | ||
In this first version, the priority will be set only by mpeg4.cfg by specifying for each channel the prioritized level (1 or 0), using the following line: | In this first version, the priority will be set only by mpeg4.cfg by specifying for each channel the prioritized level (1 or 0), using the following line: | ||
Line 29: | Line 32: | ||
\\ | \\ | ||
{{: | {{: | ||
+ | \\ | ||
+ | \\ | ||
+ | To set a priority to this channel: | ||
+ | \\ | ||
+ | \\ | ||
+ | <color red> | ||
+ | \\ | ||
+ | \\ | ||
+ | By default, all channels will set to un-prioritized. | ||
+ | \\ | ||
+ | \\ | ||
+ | The expected behaviour is that a prioritized channel will have a better average objective video quality than without being prioritized. It could be checked by comparing in the same pool the same channel with and without priority. | ||
+ | \\ | ||
+ | \\ | ||
+ | The improved VQ will be achieved by allocating more bitrate to prioritized channels compared to others. However, a prioritized channel could have in particular cases, a lower bitrate and so a lower VQ compared to non-prioritized channel. | ||
+ | \\ | ||
+ | \\ | ||
+ | The maximal increase of bitrate, i.e. by comparing a channel bitrate with a VERY HIGH PRIORITY and the same channel with a normal priority, could be changed by mpeg4.cfg using the following parameter: | ||
+ | \\ | ||
+ | \\ | ||
+ | <color red> | ||
+ | \\ | ||
+ | \\ | ||
+ | The default value is 0.2. The overridden value is clipped between 0.05 and 1. | ||
+ | \\ | ||
+ | \\ | ||
+ | |||
+ | ---- | ||
+ | ==== 3 Priorities design ==== | ||
+ | \\ | ||
+ | Five priority levels have been planned. However, in the current state, only two priorities are used (VERY_HIGH and NORMAL): | ||
+ | \\ | ||
+ | * SMX_PRIORITY_VERY_HIGH = 5 | ||
+ | * SMX_PRIORITY_HIGH = 4 | ||
+ | * SMX_PRIORITY_NORMAL = 3 | ||
+ | * SMX_PRIORITY_LOW = 2 | ||
+ | * SMX_PRIORITY_VERY_LOW = 1 | ||
+ | \\ | ||
+ | \\ | ||
+ | According to the maximal increase of bitrate | ||
+ | \\ | ||
+ | \\ | ||
+ | {{: | ||
+ | \\ | ||
+ | \\ | ||
+ | Once the priority factor is computed, the statmux algorithm weights the complexity (STC) with each priority in order to balance the channel bit rate. Priorities are computed each time a channel is added or removed from the pool. | ||
+ | \\ | ||
+ | \\ | ||
+ | |||
+ | ---- | ||
+ | ==== 4 Priorities and distortion control ==== | ||
+ | \\ | ||
+ | The distortion control aims at weighting channel’s complexity according to their MSE. Bigger the channel’s MSE, bigger the distortion factor is. Factors are computed every four statmux iterations (around twice a second). Factors are clipped between 0.5 and 2. | ||
+ | \\ | ||
+ | \\ | ||
+ | However, when priorities are enabled, the distortion control could in some cases nullify the priority. | ||
+ | To avoid such cases, factors are clipped according to the channel’s complexity: | ||
+ | \\ | ||
+ | * 1.00 < F < 2.0 with a very high priority | ||
+ | * 0.75 < F < 2.0 with a high complexity | ||
+ | * 0.50 < F < 2.0 with a normal priority | ||
+ | * 0.50 < F < 1.5 with a low priority | ||
+ | * 0.50 < F < 1.0 with a very low complexity. | ||
+ | \\ | ||
\\ | \\ | ||
wiki/statmux_priorities.1481274423.txt.gz · Last modified: 2023/03/09 22:35 (external edit)