API call trace
const ms = new MediaSource()
video.src = URL.createObjectURL(ms)
ms.addEventListener('sourceopen', ...)
const sb = ms.addSourceBuffer(mimeType)
sb.appendBuffer(initSegment)
sb.appendBuffer(seg_0) // 360p 0–6s
sb.appendBuffer(seg_1) // 360p 6–12s
sb.appendBuffer(seg_2) ↑ ABR 720p
sb.appendBuffer(seg_3) // 720p 18–24s
sb.appendBuffer(seg_4) ↑ ABR 1080p
sb.appendBuffer(seg_5..N) // loop