Description | Hierarchy | Fields | Methods | Properties |
type TunaIPReceiver = class(unaIPStreamer)
Basic IP receiving class.
function doGetRTCP(): unaRTCPstack; override; |
|
function doOpen(): bool; override; |
|
function doWrite(_data: pointer; _len: uint; provider: pointer = nil): uint; override; |
|
function isActive(): bool; override; |
|
function onNewData(_data: pointer; _len: uint; provider: pointer = nil): bool; override; |
|
procedure AfterConstruction(); override; |
|
procedure BeforeDestruction(); override; |
|
procedure doClose(); override; |
|
procedure needHoles(st: int; const host, portRTP: string; const portRTCP: string = ''); override; |
|
procedure onFormatChange(rate, channels, bits, encoding, bitrate: int); override; |
|
procedure onNewText(data: pointer; len: int); virtual; |
|
procedure onRTPHdr(hdr: prtp_hdr; data: pointer; len: int); virtual; |
|
procedure rtspGotError(const uri, control: string; req: int; errorCode: HRESULT); virtual; |
|
procedure rtspGotResponse(const uri, control: string; req: int; response: unaHTTPparser); virtual; |
|
procedure setupSessionParams(); override; |
property CNresendInterval: int read getCNRI write setCNRI default c_def_CNresendInterval; |
|
property mpegTS_demuxer: unaMpegTSDemuxer read getDemuxer; |
|
property onAfterDecodeWrite: unavcIPDataWrite read f_onAfterDecodeWrite write f_onAfterDecodeWrite; |
|
property onBeforeDecodeWrite: unavcIPDataWrite read f_onBeforeDecodeWrite write f_onBeforeDecodeWrite; |
|
property onRTPHeader: unavcIPReceiverRTPHdr read f_onRTPHdr write f_onRTPHdr; |
|
property onText: unavcIPReceiverTextEvent read f_onText write f_onText; |
|
property rec: unaRTPReceiver read f_receiverRTP; |
|
property reconnectIfNoData: boolean read f_rifnd write f_rifnd default true; |
|
property STUNserver; |
|
property URI; |
function doGetRTCP(): unaRTCPstack; override; |
|
Returns internal RTCP stack object. |
function doOpen(): bool; override; |
|
Creates and opens internal receiver/decoder classes. |
function doWrite(_data: pointer; _len: uint; provider: pointer = nil): uint; override; |
|
Passes compressed data to decoders according to encoding property. |
function isActive(): bool; override; |
|
Returns component's active state. ReturnsTrue if component was activated succesfully. |
function onNewData(_data: pointer; _len: uint; provider: pointer = nil): bool; override; |
|
Processes new data available from the pipe. ReturnsTrue if successfull. |
procedure AfterConstruction(); override; |
|
Creates encoders and decoders for receiver |
procedure BeforeDestruction(); override; |
|
Disposes receivers, encoders and decoders |
procedure doClose(); override; |
|
Closes the receiver. |
procedure needHoles(st: int; const host, portRTP: string; const portRTCP: string = ''); override; |
|
Sends RTCP and RTP packets to remote side to make holes in NAT |
procedure onFormatChange(rate, channels, bits, encoding, bitrate: int); override; |
|
Applies new format on decoders. |
procedure onNewText(data: pointer; len: int); virtual; |
|
Fired when new portion of text is received from remote side. |
procedure onRTPHdr(hdr: prtp_hdr; data: pointer; len: int); virtual; |
|
Fired when new RTP header is received. |
procedure rtspGotError(const uri, control: string; req: int; errorCode: HRESULT); virtual; |
|
RTSP error |
procedure rtspGotResponse(const uri, control: string; req: int; response: unaHTTPparser); virtual; |
|
RTSP response |
procedure setupSessionParams(); override; |
|
Applies required changes on RTCP object. |
property CNresendInterval: int read getCNRI write setCNRI default c_def_CNresendInterval; |
|
Resend interval for CN packets. |
property mpegTS_demuxer: unaMpegTSDemuxer read getDemuxer; |
|
MPEG TS demuxer. |
property onAfterDecodeWrite: unavcIPDataWrite read f_onAfterDecodeWrite write f_onAfterDecodeWrite; |
|
Fired when data is decoded and is about to be passed to consumer(s) |
property onBeforeDecodeWrite: unavcIPDataWrite read f_onBeforeDecodeWrite write f_onBeforeDecodeWrite; |
|
Fired before data received from network is about to be passed to decoders. |
property onRTPHeader: unavcIPReceiverRTPHdr read f_onRTPHdr write f_onRTPHdr; |
|
Fired when new RTP packet is received. |
property onText: unavcIPReceiverTextEvent read f_onText write f_onText; |
|
Fired when new text is received. |
property rec: unaRTPReceiver read f_receiverRTP; |
|
Low-level RTP receiver. |
property reconnectIfNoData: boolean read f_rifnd write f_rifnd default true; |
|
Reconnects to remote stream if no data is received for some time. |
property STUNserver; |
|
RTSP client should use it |
property URI; |
|
Possible values: – RAW – udp://192.168.0.10:7654 - receive RAW unicast stream (set SDP to specify stream format) 192.168.0.10 - remote address 7654 - remote port udp://224.0.1.2:7654 - receive RAW multicast stream (set SDP to specify stream format) 224.0.1.2 - join this multicast group 7654 - communicate on this port tcp://192.168.0.170:5008 - RAW unicast TCP stream 192.168.0.170 - remote server address 5008 - remote server port – RTP – rtp://192.168.0.12:1254 - receive RTP unicast stream (may need additional SDP in case of dynamic payload) 192.168.0.12 - use this IP for streaming 1254 - use this port for RTP (1255 will be used for RTCP) rtp://224.0.1.2:1254 - receive RTP multicast stream (may need additional SDP in case of dynamic payload) 224.0.1.2 - join this multicast group 1254 - communicate on this port – RTSP – rtsp://192.168.0.170/ - use RTSP streaming negotiation (check SDP for details) 192.168.0.170 - connect to this host for RTSP server Default port is 554 – SHOUTcast – http://87.98.132.103:8230 - receive SHOUTcast stream 87.98.132.103 - connect to this host for SHOUTcast stream 8230 - use this port for communication |
(c) 2012 Lake of Soft