我正在使用 MSE(MediaSource Extensions API)将字节附加到缓冲区(我正在实现 DASH)。似乎 MSE API 提供的源缓冲区并没有公开正在缓冲的实际字节。
因此,在将字节提供给缓冲区之后:
buffer.appendBuffer(bytes);
如果我想重用这些字节 - 我需要从 bytes 变量中获取它们。但这是一个糟糕的解决方案,因为这意味着有双倍的内存占用——每个字节变量一个,每个源缓冲区一个。
通过使用 start 和 end 方法迭代 range 变量,可以很容易地获得缓冲范围:
var ranges = sourceBuffer.buffered;
是否也有可能以某种方式获取缓冲区缓存的实际字节,以便我可以重用它们?