joy4/stream.go
2016-05-25 07:44:31 +08:00

49 lines
828 B
Go

package mp4
import (
"github.com/nareix/av"
"github.com/nareix/mp4/atom"
"io"
)
type Stream struct {
av.CodecData
trackAtom *atom.Track
r io.ReadSeeker
idx int
timeScale int64
duration int64
muxer *Muxer
sample *atom.SampleTable
sampleIndex int
sampleOffsetInChunk int64
syncSampleIndex int
dts int64
sttsEntryIndex int
sampleIndexInSttsEntry int
cttsEntryIndex int
sampleIndexInCttsEntry int
chunkGroupIndex int
chunkIndex int
sampleIndexInChunk int
sttsEntry *atom.TimeToSampleEntry
cttsEntry *atom.CompositionOffsetEntry
}
func (self *Stream) timeToTs(time float64) int64 {
return int64(time * float64(self.timeScale))
}
func (self *Stream) tsToTime(ts int64) float64 {
return float64(ts) / float64(self.timeScale)
}