☰
Index
Modules:
rtmp
,
rtmp/private/memutils
,
rtmp/private/openssl_hmac
,
rtmp/rtmpclient
,
rtmp/rtmpplaylist
,
rtmp/rtmpserver
,
rtmp/server/actionmessage
,
rtmp/server/chunkstream
,
rtmp/server/handshake
,
rtmp/server/rtmpmonitor
.
API symbols
AacStreamState:
rtmpclient: type AacStreamState
AMF0_Boolean:
actionmessage: AMF0Type.AMF0_Boolean
AMF0_ECMAArray:
actionmessage: AMF0Type.AMF0_ECMAArray
AMF0_LongString:
actionmessage: AMF0Type.AMF0_LongString
AMF0_Null:
actionmessage: AMF0Type.AMF0_Null
AMF0_Number:
actionmessage: AMF0Type.AMF0_Number
AMF0_Object:
actionmessage: AMF0Type.AMF0_Object
amf0PutBool:
rtmpclient: proc amf0PutBool(b: bool; outp: var seq[byte])
amf0PutDouble:
rtmpclient: proc amf0PutDouble(v: float64; outp: var seq[byte])
amf0PutNull:
rtmpclient: proc amf0PutNull(outp: var seq[byte])
amf0PutNumber:
rtmpclient: proc amf0PutNumber(txid: int; outp: var seq[byte])
amf0PutString:
rtmpclient: proc amf0PutString(s: string; outp: var seq[byte])
amf0ReadNumberAsInt:
rtmpclient: proc amf0ReadNumberAsInt(b: openArray[byte]; i: var int): int
amf0ReadString:
rtmpclient: proc amf0ReadString(b: openArray[byte]; i: var int): string
AMF0_StrictArray:
actionmessage: AMF0Type.AMF0_StrictArray
AMF0_String:
actionmessage: AMF0Type.AMF0_String
amf0ToStr:
actionmessage: proc amf0ToStr(v: AMF0Value): string
AMF0Type:
actionmessage: enum AMF0Type
AMF0_Undefined:
actionmessage: AMF0Type.AMF0_Undefined
AMF0Value:
actionmessage: type AMF0Value
AMF3_Array:
actionmessage: AMF3Type.AMF3_Array
AMF3_ByteArray:
actionmessage: AMF3Type.AMF3_ByteArray
AMF3_Double:
actionmessage: AMF3Type.AMF3_Double
AMF3_False:
actionmessage: AMF3Type.AMF3_False
AMF3_Integer:
actionmessage: AMF3Type.AMF3_Integer
AMF3_Null:
actionmessage: AMF3Type.AMF3_Null
AMF3_Object:
actionmessage: AMF3Type.AMF3_Object
AMF3_String:
actionmessage: AMF3Type.AMF3_String
AMF3_True:
actionmessage: AMF3Type.AMF3_True
AMF3Type:
actionmessage: enum AMF3Type
AMF3_Undefined:
actionmessage: AMF3Type.AMF3_Undefined
amfObj:
actionmessage: proc amfObj(pairs: openArray[(string, AMF0Value)]): AMF0Value
apiRequestHandler:
rtmpserver: proc apiRequestHandler(req: HttpRequest; res: HttpResponse)
buildAacAsc:
rtmpclient: proc buildAacAsc(profile, sfIndex, channels: int): seq[byte]
ChunkHeader:
chunkstream: object ChunkHeader
ChunkMessageCb:
chunkstream: type ChunkMessageCb
ChunkStreamCtx:
chunkstream: type ChunkStreamCtx
ChunkStreamState:
rtmpclient: object ChunkStreamState
chunkstream: type ChunkStreamState
ConnCtx:
rtmpserver: type ConnCtx
ConnStage:
rtmpclient: enum ConnStage
createC1Enhanced:
handshake: proc createC1Enhanced(c1: ptr UncheckedArray[byte])
createS1Enhanced:
handshake: proc createS1Enhanced(s1: ptr UncheckedArray[byte])
decodeAllAMF0:
actionmessage: proc decodeAllAMF0(data: seq[byte]): seq[AMF0Value]
decodeAllAMF0Ptr:
actionmessage: proc decodeAllAMF0Ptr(data: ptr byte; dataLen: int): seq[AMF0Value]
decodeAllAMF0Seq:
actionmessage: proc decodeAllAMF0Seq(data: seq[byte]): seq[AMF0Value]
decodeAllAMF3:
actionmessage: proc decodeAllAMF3(data: seq[byte]): seq[AMF0Value]
decodeOneAMF0:
actionmessage: proc decodeOneAMF0(r: var ByteReader): AMF0Value
actionmessage: proc decodeOneAMF0(data: seq[byte]; idx: var int): AMF0Value
decodeOneAMF3:
actionmessage: proc decodeOneAMF3(data: seq[byte]; idx: var int): AMF0Value
DEFAULT_RTMP_PORT:
rtmpserver: const DEFAULT_RTMP_PORT
encodeAMF0Values:
actionmessage: proc encodeAMF0Values(vals: seq[AMF0Value]): seq[byte]
encodeOneAMF0:
actionmessage: proc encodeOneAMF0(v: AMF0Value; outSeq: var seq[byte])
EvpMd:
openssl_hmac: type EvpMd
EVP_sha256:
openssl_hmac: proc EVP_sha256(): EvpMd
feedBytes:
chunkstream: proc feedBytes(ctx: ChunkStreamCtx; data: ptr byte; len: int): int
FlvTagHeader:
rtmpclient: object FlvTagHeader
flvTagToRtmp:
rtmpclient: proc flvTagToRtmp(tagType: uint8): (uint8, uint8)
freemem:
memutils: template freemem(x: untyped)
GenuineFMSKey:
handshake: const GenuineFMSKey
GenuineFPKey:
handshake: const GenuineFPKey
gMonitor:
rtmpmonitor: var gMonitor
HMAC:
openssl_hmac: proc HMAC(md: EvpMd; key: pointer; keyLen: cint; data: pointer; dataLen: csize_t; output: pointer; outputLen: ptr cuint): pointer
HMACCtx:
openssl_hmac: type HMACCtx
hsDone:
rtmpclient: RtmpHandshakeState.hsDone
HS_DONE:
rtmpserver: const HS_DONE
HS_INIT:
rtmpserver: const HS_INIT
hsRecvS0S1S2:
rtmpclient: RtmpHandshakeState.hsRecvS0S1S2
HS_S0S1_SENT:
rtmpserver: const HS_S0S1_SENT
hsSendC0C1:
rtmpclient: RtmpHandshakeState.hsSendC0C1
hsSendC2:
rtmpclient: RtmpHandshakeState.hsSendC2
initChunkStreamCtx:
chunkstream: proc initChunkStreamCtx(peerChunkSize: int = 128): ChunkStreamCtx
isEnhancedC1:
handshake: proc isEnhancedC1(c1: ptr UncheckedArray[byte]): bool
isEnhancedS1:
handshake: proc isEnhancedS1(s1: ptr UncheckedArray[byte]): bool
loadPlaylist:
rtmpplaylist: proc loadPlaylist(filePath: string): seq[string]
malloc_trim:
memutils: proc malloc_trim(pad: csize_t = 0): bool
MAX_SUBSCRIBER_OUTBUF:
rtmpserver: const MAX_SUBSCRIBER_OUTBUF
monitorAddStream:
rtmpserver: proc monitorAddStream(name: string; pubConn: ConnCtx)
monitorAddSubscriber:
rtmpserver: proc monitorAddSubscriber(streamName: string; subConn: ConnCtx)
monitorRemoveStream:
rtmpserver: proc monitorRemoveStream(name: string)
monitorRemoveSubscriber:
rtmpserver: proc monitorRemoveSubscriber(streamName: string; subConn: ConnCtx)
newBoolean:
actionmessage: proc newBoolean(v: bool): AMF0Value
newEcmaArray:
actionmessage: proc newEcmaArray(): AMF0Value
newNull:
actionmessage: proc newNull(): AMF0Value
newNumber:
actionmessage: proc newNumber(v: float64): AMF0Value
newObject:
actionmessage: proc newObject(): AMF0Value
newRtmpClient:
rtmpclient: proc newRtmpClient(address: string): RtmpClient
newRTMPServer:
rtmpserver: proc newRTMPServer(settings: RtmpServerSettings = RtmpServerSettings()): RtmpServer
newStrictArray:
actionmessage: proc newStrictArray(items: seq[AMF0Value]): AMF0Value
newString:
actionmessage: proc newString(v: string): AMF0Value
newUndefined:
actionmessage: proc newUndefined(): AMF0Value
nextAudio:
rtmpplaylist: proc nextAudio(ps: PlaylistState): string
nextVideo:
rtmpplaylist: proc nextVideo(ps: PlaylistState): string
parseAdts:
rtmpclient: proc parseAdts(fd: cint; pos: int64; frameLen: var int; headerLen: var int; profile: var int; sfIndex: var int; channels: var int): bool
parseBasicHeader:
rtmpclient: proc parseBasicHeader(data: openArray[byte]; start: int): (uint8, uint32, int, bool)
parseRtmpUrl:
rtmpclient: proc parseRtmpUrl(address: string): RtmpUrl
peekNextFlvTagTs:
rtmpclient: proc peekNextFlvTagTs(fd: cint; pos: int64; nextTs: var uint32): bool
PlaylistState:
rtmpplaylist: type PlaylistState
readFlvHeader:
rtmpclient: proc readFlvHeader(fd: cint): int64
readFlvTagHeader:
rtmpclient: proc readFlvTagHeader(fd: cint; pos: int64; th: var FlvTagHeader): bool
releaseUnusedMemory:
memutils: proc releaseUnusedMemory(): bool
RtmpClient:
rtmpclient: type RtmpClient
rtmpmonitor: object RtmpClient
RtmpConnState:
rtmpserver: object RtmpConnState
RTMP_DEFAULT_CHUNK_SIZE:
rtmpserver: const RTMP_DEFAULT_CHUNK_SIZE
RTMP_HANDSHAKE_SIZE:
rtmpserver: const RTMP_HANDSHAKE_SIZE
handshake: const RTMP_HANDSHAKE_SIZE
RtmpHandshakeState:
rtmpclient: enum RtmpHandshakeState
RTMP_MAX_CHUNK_SIZE:
rtmpserver: const RTMP_MAX_CHUNK_SIZE
RtmpMonitor:
rtmpmonitor: type RtmpMonitor
RtmpPublisher:
rtmpmonitor: object RtmpPublisher
RtmpServer:
rtmpserver: type RtmpServer
RTMPServerError:
rtmpserver: object RTMPServerError
RtmpServerSettings:
rtmpserver: object RtmpServerSettings
RtmpStream:
rtmpmonitor: object RtmpStream
RtmpSubscriber:
rtmpmonitor: object RtmpSubscriber
RtmpUrl:
rtmpclient: object RtmpUrl
samplingRateFromIndex:
rtmpclient: proc samplingRateFromIndex(idx: int): int
setOnMessage:
chunkstream: proc setOnMessage(ctx: ChunkStreamCtx; cb: ChunkMessageCb; arg: pointer)
setPeerChunkSize:
chunkstream: proc setPeerChunkSize(ctx: ChunkStreamCtx; size: int)
signC2:
handshake: proc signC2(c2: ptr UncheckedArray[byte]; s1: ptr UncheckedArray[byte])
signS2:
handshake: proc signS2(s2: ptr UncheckedArray[byte]; c1: ptr UncheckedArray[byte])
startPacer:
rtmpclient: proc startPacer(client: RtmpClient; initCb: proc (c: RtmpClient) = nil)
startServer:
rtmpserver: proc startServer(server: RtmpServer)
startStreamAacAdtsZeroCopy:
rtmpclient: proc startStreamAacAdtsZeroCopy(client: RtmpClient; filePath: string; msgStreamId: uint32; csid: uint8 = 4'u8; lowWater: int = 256 * 1024; startTs: uint32 = 0'u32)
startStreamFlvZeroCopy:
rtmpclient: proc startStreamFlvZeroCopy(client: RtmpClient; filePath: string; msgStreamId: uint32; lowWater: int = 256 * 1024; startTs: uint32 = 0'u32)
stConnectOk:
rtmpclient: ConnStage.stConnectOk
stConnectSent:
rtmpclient: ConnStage.stConnectSent
stCreateStreamSent:
rtmpclient: ConnStage.stCreateStreamSent
stHandshakeDone:
rtmpclient: ConnStage.stHandshakeDone
stInit:
rtmpclient: ConnStage.stInit
stPublishing:
rtmpclient: ConnStage.stPublishing
stPublishSent:
rtmpclient: ConnStage.stPublishSent
StreamAudioCallback:
rtmpclient: type StreamAudioCallback
StreamEntry:
rtmpserver: type StreamEntry
StreamErrorCallback:
rtmpclient: type StreamErrorCallback
StreamFileCallback:
rtmpclient: type StreamFileCallback
StreamState:
rtmpclient: type StreamState
stStreamIdOk:
rtmpclient: ConnStage.stStreamIdOk
SubscriberEntry:
rtmpserver: object SubscriberEntry
u32be:
rtmpclient: proc u32be(b: openArray[byte]; i: int): uint32
validateC1Digest:
handshake: proc validateC1Digest(c1: ptr UncheckedArray[byte]): bool
validateC2:
handshake: proc validateC2(c2: ptr UncheckedArray[byte]; s1: ptr UncheckedArray[byte]): bool
validateS1Digest:
handshake: proc validateS1Digest(s1: ptr UncheckedArray[byte]): bool
validateS2:
handshake: proc validateS2(s2: ptr UncheckedArray[byte]; c1: ptr UncheckedArray[byte]): bool