![]() |
libgpac
Documentation of the core library of GPAC
|
import <nodejs.idl;
Public Member Functions | |
| void | on_period_reset (unsigned long reset_type) |
| void | on_new_group (_DASHGroup group) |
| long | on_rate_adaptation (_DASHGroup group, _DASHGroup base_group, boolean force_low_complexity, _DASHGroupStatistics stats) |
| long | on_download_monitor (_DASHGroup group, _DASHGroupDownloadStatistics stats) |
interface for custom DASH algorithms
Callbacks may be changed at runtime, however if the object passed to initialize the binding has no on_download_monitor function, rate monitoring will be disabled for the binding
| void _DASHCustomAlgorithm::on_period_reset | ( | unsigned long | reset_type | ) |
Callback (optional) called upon a period reset.
| reset_type | indicate the type of period reset. Values can be:
|
| void _DASHCustomAlgorithm::on_new_group | ( | _DASHGroup | group | ) |
Callback (optional) called when a new group (adaptation set) is created
| group | the newly created dash group |
| long _DASHCustomAlgorithm::on_rate_adaptation | ( | _DASHGroup | group, |
| _DASHGroup | base_group, | ||
| boolean | force_low_complexity, | ||
| _DASHGroupStatistics | stats | ||
| ) |
Callback (mandatory) called at the end of the segment download to perform rate adaptation
| group | the group on which to perform adaptation |
| base_group | the associated base group (tiling only), or None if no base group |
| force_low_complexity | indicates that the client would like a lower complexity (typically because it is dropping frames) |
| stats | the statistics for the downloaded segment |
| long _DASHCustomAlgorithm::on_download_monitor | ( | _DASHGroup | group, |
| _DASHGroupDownloadStatistics | stats | ||
| ) |
Callback (optional) called on regular basis during a segment download
| group | the group associated with the current download |
| stats | the current statistics for the download |
-1 to continue download-2 to abort download but without retrying to downloading the same segment at lower quality