ExoPlayer V2 re-uses decoder instances where possible as it plays through multiple periods of content (e.g. that have been concatenated using ConcatenatingMediaSource).
However the decoders are always released and re-instantiated if the user explicitly seeks to a period other than the one currently being played, even in cases where it's possible that the instances could be retained and re-used. We should look at optimizing this case.