keep AV sync after seek
This commit is contained in:
parent
0162e613e6
commit
3a136cd8f5
13
demuxer.go
13
demuxer.go
@ -299,10 +299,23 @@ func (self *Demuxer) ReadPacket() (pkt av.Packet, err error) {
|
||||
|
||||
func (self *Demuxer) SeekToTime(time float64) (err error) {
|
||||
for _, stream := range(self.streams) {
|
||||
if stream.IsVideo() {
|
||||
if err = stream.seekToTime(time); err != nil {
|
||||
return
|
||||
}
|
||||
time = stream.TsToTime(stream.dts)
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
for _, stream := range(self.streams) {
|
||||
if !stream.IsVideo() {
|
||||
if err = stream.seekToTime(time); err != nil {
|
||||
return
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return
|
||||
}
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user