This CL separates the types and code paths for textures vs byte buffers in MediaCodecVideoDecoder.dequeueOutputBuffer() and MediaCodecVideoDecoder::DeliverPendingOutputs(). The purpose is to prepare for lifetime management of textures received from the SurfaceTexture. This CL is a part of the plan in https://codereview.webrtc.org/1357923002/. BUG=webrtc:4993 Review URL: https://codereview.webrtc.org/1379383002 Cr-Commit-Position: refs/heads/master@{#10156}