Help us shape the future of Go! Take the 2026 Go Developer Survey

rtpmjpeg

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 7, 2023 License: MIT Imports: 9 Imported by: 0

Documentation

Overview

Package rtpmjpeg contains a RTP/M-JPEG decoder and encoder.

Index

Constants

This section is empty.

Variables

View Source
var ErrMorePacketsNeeded = errors.New("need more packets")

ErrMorePacketsNeeded is returned when more packets are needed.

View Source
var ErrNonStartingPacketAndNoPrevious = errors.New(
	"received a non-starting fragment without any previous starting fragment")

ErrNonStartingPacketAndNoPrevious is returned when we received a non-starting fragment of an image and we didn't received anything before. It's normal to receive this when decoding a stream that has been already running for some time.

Functions

This section is empty.

Types

type Decoder

type Decoder struct {
	// contains filtered or unexported fields
}

Decoder is a RTP/M-JPEG decoder. Specification: https://datatracker.ietf.org/doc/html/rfc2435

func (*Decoder) Decode

func (d *Decoder) Decode(pkt *rtp.Packet) ([]byte, time.Duration, error)

Decode decodes an image from a RTP packet.

func (*Decoder) Init

func (d *Decoder) Init()

Init initializes the decoder.

type Encoder

type Encoder struct {
	// SSRC of packets (optional).
	// It defaults to a random value.
	SSRC *uint32

	// initial sequence number of packets (optional).
	// It defaults to a random value.
	InitialSequenceNumber *uint16

	// initial timestamp of packets (optional).
	// It defaults to a random value.
	InitialTimestamp *uint32

	// maximum size of packet payloads (optional).
	// It defaults to 1460.
	PayloadMaxSize int
	// contains filtered or unexported fields
}

Encoder is a RTP/M-JPEG encoder. Specification: https://datatracker.ietf.org/doc/html/rfc2435

func (*Encoder) Encode

func (e *Encoder) Encode(image []byte, pts time.Duration) ([]*rtp.Packet, error)

Encode encodes an image into RTP/M-JPEG packets.

func (*Encoder) Init

func (e *Encoder) Init()

Init initializes the encoder.

Directories

Path Synopsis
Package headers contains RTP/M-JPEG headers.
Package headers contains RTP/M-JPEG headers.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL