audio: refactor update metadata process

The meta data isn't updated when stream volume was changed on MMAP
playback thread.
  - Move readAndClearHasChanged() and
    setMetadataHasChanged() from Track to TrackBase and changes of meta
    data is able to be noticed for all types of track.

  - Added the flow to check every track's status on
    ActiveTracks<T>::readAndClearHasChanged().

  - Added isStreamInitialized() in ThreadBase  to simplify the processed
    flow for each thread.

Bug: 187769565
Test: mmap playback/deep-buffer/offload/low-latency

Signed-off-by: Jasmine Cha <chajasmine@google.com>
Change-Id: I949772cf38c77de4e41d4d699231c1edecf70f76
Merged-In: I949772cf38c77de4e41d4d699231c1edecf70f76
4 files changed