rtmp

package
v1.9.1 Latest Latest
Warning

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

Go to latest
Published: Sep 15, 2024 License: MIT Imports: 26 Imported by: 0

Documentation

Overview

Package rtmp provides RTMP connectivity.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func FromStream added in v1.9.1

func FromStream(
	stream *stream.Stream,
	writer *asyncwriter.Writer,
	conn *Conn,
	nconn net.Conn,
	writeTimeout time.Duration,
	l logger.Writer,
) error

FromStream maps a MediaMTX stream to a RTMP stream.

func ToStream added in v1.9.1

func ToStream(r *Reader, stream **stream.Stream) ([]*description.Media, error)

ToStream maps a RTMP stream to a MediaMTX stream.

Types

type Conn

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

Conn is a RTMP connection.

func NewClientConn

func NewClientConn(rw io.ReadWriter, u *url.URL, publish bool) (*Conn, error)

NewClientConn initializes a client-side connection.

func NewServerConn

func NewServerConn(rw io.ReadWriter) (*Conn, *url.URL, bool, error)

NewServerConn initializes a server-side connection.

func (*Conn) BytesReceived

func (c *Conn) BytesReceived() uint64

BytesReceived returns the number of bytes received.

func (*Conn) BytesSent

func (c *Conn) BytesSent() uint64

BytesSent returns the number of bytes sent.

func (*Conn) Read

func (c *Conn) Read() (message.Message, error)

Read reads a message.

func (*Conn) Write

func (c *Conn) Write(msg message.Message) error

Write writes a message.

type OnDataAV1Func

type OnDataAV1Func func(pts time.Duration, tu [][]byte)

OnDataAV1Func is the prototype of the callback passed to OnDataAV1().

type OnDataG711Func added in v1.4.2

type OnDataG711Func func(pts time.Duration, samples []byte)

OnDataG711Func is the prototype of the callback passed to OnDataG711().

type OnDataH26xFunc

type OnDataH26xFunc func(pts time.Duration, au [][]byte)

OnDataH26xFunc is the prototype of the callback passed to OnDataH26x().

type OnDataLPCMFunc added in v1.4.2

type OnDataLPCMFunc func(pts time.Duration, samples []byte)

OnDataLPCMFunc is the prototype of the callback passed to OnDataLPCM().

type OnDataMPEG1AudioFunc

type OnDataMPEG1AudioFunc func(pts time.Duration, frame []byte)

OnDataMPEG1AudioFunc is the prototype of the callback passed to OnDataMPEG1Audio().

type OnDataMPEG4AudioFunc

type OnDataMPEG4AudioFunc func(pts time.Duration, au []byte)

OnDataMPEG4AudioFunc is the prototype of the callback passed to OnDataMPEG4Audio().

type OnDataVP9Func

type OnDataVP9Func func(pts time.Duration, frame []byte)

OnDataVP9Func is the prototype of the callback passed to OnDataVP9().

type Reader

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

Reader is a wrapper around Conn that provides utilities to demux incoming data.

func NewReader

func NewReader(conn *Conn) (*Reader, error)

NewReader allocates a Reader.

func (*Reader) OnDataAV1

func (r *Reader) OnDataAV1(cb OnDataAV1Func)

OnDataAV1 sets a callback that is called when AV1 data is received.

func (*Reader) OnDataG711 added in v1.4.2

func (r *Reader) OnDataG711(cb OnDataG711Func)

OnDataG711 sets a callback that is called when G711 data is received.

func (*Reader) OnDataH264

func (r *Reader) OnDataH264(cb OnDataH26xFunc)

OnDataH264 sets a callback that is called when H264 data is received.

func (*Reader) OnDataH265

func (r *Reader) OnDataH265(cb OnDataH26xFunc)

OnDataH265 sets a callback that is called when H265 data is received.

func (*Reader) OnDataLPCM added in v1.4.2

func (r *Reader) OnDataLPCM(cb OnDataLPCMFunc)

OnDataLPCM sets a callback that is called when LPCM data is received.

func (*Reader) OnDataMPEG1Audio

func (r *Reader) OnDataMPEG1Audio(cb OnDataMPEG1AudioFunc)

OnDataMPEG1Audio sets a callback that is called when MPEG-1 Audio data is received.

func (*Reader) OnDataMPEG4Audio

func (r *Reader) OnDataMPEG4Audio(cb OnDataMPEG4AudioFunc)

OnDataMPEG4Audio sets a callback that is called when MPEG-4 Audio data is received.

func (*Reader) OnDataVP9

func (r *Reader) OnDataVP9(cb OnDataVP9Func)

OnDataVP9 sets a callback that is called when VP9 data is received.

func (*Reader) Read

func (r *Reader) Read() error

Read reads data.

func (*Reader) Tracks

func (r *Reader) Tracks() (format.Format, format.Format)

Tracks returns detected tracks

type Writer

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

Writer is a wrapper around Conn that provides utilities to mux outgoing data.

func NewWriter

func NewWriter(conn *Conn, videoTrack format.Format, audioTrack format.Format) (*Writer, error)

NewWriter allocates a Writer.

func (*Writer) WriteH264

func (w *Writer) WriteH264(pts time.Duration, dts time.Duration, idrPresent bool, au [][]byte) error

WriteH264 writes H264 data.

func (*Writer) WriteMPEG1Audio

func (w *Writer) WriteMPEG1Audio(pts time.Duration, h *mpeg1audio.FrameHeader, frame []byte) error

WriteMPEG1Audio writes MPEG-1 Audio data.

func (*Writer) WriteMPEG4Audio

func (w *Writer) WriteMPEG4Audio(pts time.Duration, au []byte) error

WriteMPEG4Audio writes MPEG-4 Audio data.

Directories

Path Synopsis
Package amf0 contains an AMF0 marshaler and unmarshaler.
Package amf0 contains an AMF0 marshaler and unmarshaler.
Package bytecounter contains a reader/writer that allows to count bytes.
Package bytecounter contains a reader/writer that allows to count bytes.
Package chunk implements RTMP chunks.
Package chunk implements RTMP chunks.
Package h264conf contains a H264 configuration parser.
Package h264conf contains a H264 configuration parser.
Package handshake contains the RTMP handshake mechanism.
Package handshake contains the RTMP handshake mechanism.
Package message contains a RTMP message reader/writer.
Package message contains a RTMP message reader/writer.
Package rawmessage contains a RTMP raw message reader/writer.
Package rawmessage contains a RTMP raw message reader/writer.

Jump to

Keyboard shortcuts

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