Scan back is needed currently when reading through. Need to add some buffering layer for unseekable streams.