roc-streaming / roc-toolkit

Real-time audio streaming over the network.
https://roc-streaming.org
Mozilla Public License 2.0
1.09k stars 213 forks source link

Pipeline tests for jitter & dynamic latency #765

Closed baranovmv closed 3 months ago

baranovmv commented 4 months ago
  1. [x] smoke test: automatic latency works (e.g.: enable latency tuning, run receiver for a while, check that niq latency is close to target; increase jitter, check that after a while niq latency is close to new target; decrease jitter, check; repeat a few times)

    it would be also great to add same test, but with automatic latency disabled, and check that niq latency stays close to target no matter what is the jitter

  2. [x] smoke test: start latency works (set start latency different from target and see how niq latency starts with start_latency and goes to target)

  3. [x] smoke test: min/max latency works (bounding of target latency)

  4. [x] smoke test: jitter metric calculation

    https://github.com/roc-streaming/roc-toolkit/blob/987f5e325920704f8490725572ae82658c0a6c94/src/tests/roc_pipeline/test_receiver_source.cpp#L3567-L3570