• A
    Release Extractors on the loading thread · 7b5bdd3c
    andrewlewis 提交于
    Releasing the player released the internal playback thread once renderers were
    released. Releasing a MediaPeriod queued a Loader.ReleaseTask on the loading
    thread which would post back to the playback thread. If the playback thread had
    been quit by the time this happened, the release task wouldn't be run.
    
    Release on the loading thread instead of the playback thread. This avoids
    needing to block releasing the player until the loading threads have ended, and
    ensures that release tasks will run eventually. As part of this change,
    ExtractorMediaPeriod's call to Extractor.release will now run on the loading
    thread (which means that all Extractor methods are called on that thread) and
    other cleanup in ReleaseCallback will run on the loading thread instead of the
    playback thread.
    
    -------------
    Created by MOE: https://github.com/google/moe
    MOE_MIGRATED_REVID=185651320
    7b5bdd3c
Loader.java 13.7 KB