28 lines
606 B
Go
28 lines
606 B
Go
|
// Package media provides media writer and filters
|
||
|
package media
|
||
|
|
||
|
import (
|
||
|
"time"
|
||
|
|
||
|
"github.com/pion/rtp"
|
||
|
)
|
||
|
|
||
|
// A Sample contains encoded media and timing information
|
||
|
type Sample struct {
|
||
|
Data []byte
|
||
|
Timestamp time.Time
|
||
|
Duration time.Duration
|
||
|
PacketTimestamp uint32
|
||
|
PrevDroppedPackets uint16
|
||
|
}
|
||
|
|
||
|
// Writer defines an interface to handle
|
||
|
// the creation of media files
|
||
|
type Writer interface {
|
||
|
// Add the content of an RTP packet to the media
|
||
|
WriteRTP(packet *rtp.Packet) error
|
||
|
// Close the media
|
||
|
// Note: Close implementation must be idempotent
|
||
|
Close() error
|
||
|
}
|