I'm with @heff. Perhaps the "extra buffer" that HLS needs should be abstracted away in the plugin itself? That is, the plugin should report a duration that is slightly behind what it actually is aware of so that developers can rely on the same seek semantics they would have with VOD.