Files
monibuca/plugin/rtmp/pkg/const.go
T
2024-04-18 09:01:09 +08:00

43 lines
819 B
Go

package rtmp
import (
"fmt"
"time"
"m7s.live/m7s/v5/pkg/util"
)
const (
PacketTypeSequenceStart = iota
PacketTypeCodedFrames
PacketTypeSequenceEnd
PacketTypeCodedFramesX
PacketTypeMetadata
PacketTypeMPEG2TSSequenceStart
)
type RTMPData struct {
Timestamp uint32
util.Buffers
util.RecyclableMemory
}
func (avcc *RTMPData) GetSize() int {
return avcc.Length
}
func (avcc *RTMPData) MarshalJSON() ([]byte, error) {
return []byte(fmt.Sprintf(`{"Timestamp":%d,"Size":%d,"Data":"%s"}`, avcc.Timestamp, avcc.Length, avcc.String())), nil
}
func (avcc *RTMPData) String() string {
return fmt.Sprintf("% 02X", avcc.Buffers.Buffers[0][:5])
}
func (avcc *RTMPData) GetTimestamp() time.Duration {
return time.Duration(avcc.Timestamp) * time.Millisecond
}
func (avcc *RTMPData) IsIDR() bool {
return false
}