[roll] Roll fuchsia [mixer_service] Add MixJobContext to PipelineStage::Advance

This change also splits Advance function into two functions:
- The private AdvanceSelf (with AdvanceSelfImpl) function that is used
  to release any resources of that stage prior to the given frame.
- The public Advance (with AdvanceSourcesImpl) function that internally
  calls AdvanceSelf, as well as, recursively advances any connected
  sources in the chain via AdvanceSourcesImpl.

In practice, AdvanceSelf is mainly aimed for freeing up the stage's self
resources after a returned packet from a Read call is consumed and
discarded. On the other hand, Advance is still a public call that can
explicitly be used to skip any frames in the pipeline without having to
process those frames via Read call.

The addition of MixJobContext to Advance will allow the pipeline stages
to have access to ClockSnapshots in order to translate any frames into
the connected sources in their chain, as they would have done in a Read
call.

Original-Bug: 87651

Multiply: audio_services_mixer_mix_unittests
Multiply: audio_mixer_unittests
Multiply: audio-core-api-pipeline-tests
Original-Reviewed-on: https://fuchsia-review.googlesource.com/c/fuchsia/+/701184
Original-Revision: 44b200de77625b08b88b7cf1ab82b716e8eadbd4
GitOrigin-RevId: 72fe2ceb9ca02c76d9f46a2dfa0f47691014e020
Change-Id: If0c47a2939982e31e78470bfebc387977956247d
1 file changed
tree: 020d5a6334fd91d4f3ecda8e61fb591b94085659
  1. infra/
  2. third_party/
  3. cts
  4. firmware
  5. flower
  6. jiri.lock
  7. minimal
  8. prebuilts
  9. README.md
  10. stem
  11. test_durations
  12. toolchain
README.md

Integration

This repository contains Fuchsia's Global Integration manifest files.

Making changes

All changes should be made to the internal version of this repository. Our infrastructure automatically updates this version when the internal one changes.

Currently all changes must be made by a Google employee. Non-Google employees wishing to make a change can ask for assistance via the IRC channel #fuchsia on Freenode.

Obtaining the source

First install Jiri.

Next run:

$ jiri init
$ jiri import minimal https://fuchsia.googlesource.com/integration
$ jiri update

Third party

Third party projects should have their own subdirectory in ./third_party.