Files
monibuca/plugin/mp4/pkg/box/mvex.go
2024-09-06 16:15:08 +08:00

17 lines
469 B
Go

package box
func makeMvex(muxer *Movmuxer) []byte {
trexs := make([]byte, 0, 64)
for i := uint32(1); i < muxer.nextTrackId; i++ {
trex := NewTrackExtendsBox(muxer.tracks[i].trackId)
trex.DefaultSampleDescriptionIndex = 1
_, boxData := trex.Encode()
trexs = append(trexs, boxData...)
}
mvex := BasicBox{Type: [4]byte{'m', 'v', 'e', 'x'}}
mvex.Size = 8 + uint64(len(trexs))
offset, mvexBox := mvex.Encode()
copy(mvexBox[offset:], trexs)
return mvexBox
}