For seekable
streams, this seeks to the given time. For implementing seeking in a player,
this is the only function generally needed. This also updates everything needed within the
decoder, so you can immediately call ov_read() and get data from
the newly seeked to position. For obvious reasons, this doesn't work for unseekable streams.