mirror of
https://github.com/datarhei/core.git
synced 2025-09-26 20:11:29 +08:00
39 lines
837 B
Go
39 lines
837 B
Go
package parse
|
|
|
|
type statsData struct {
|
|
frame uint64 // counter
|
|
packet uint64 // counter
|
|
size uint64 // bytes
|
|
dup uint64 // counter
|
|
drop uint64 // counter
|
|
}
|
|
|
|
type stats struct {
|
|
last statsData
|
|
diff statsData
|
|
}
|
|
|
|
func (s *stats) updateFromProgress(p *ffmpegProgress) {
|
|
s.diff.frame = p.Frame - s.last.frame
|
|
s.diff.packet = p.Packet - s.last.packet
|
|
s.diff.size = p.Size - s.last.size
|
|
s.diff.drop = p.Drop - s.last.drop
|
|
s.diff.dup = p.Dup - s.last.dup
|
|
|
|
s.last.frame = p.Frame
|
|
s.last.packet = p.Packet
|
|
s.last.size = p.Size
|
|
s.last.dup = p.Dup
|
|
s.last.drop = p.Drop
|
|
}
|
|
|
|
func (s *stats) updateFromProgressIO(p *ffmpegProgressIO) {
|
|
s.diff.frame = p.Frame - s.last.frame
|
|
s.diff.packet = p.Packet - s.last.packet
|
|
s.diff.size = p.Size - s.last.size
|
|
|
|
s.last.frame = p.Frame
|
|
s.last.packet = p.Packet
|
|
s.last.size = p.Size
|
|
}
|