RTSPState Struct Reference

Private data for the RTSP demuxer. More...

#include <rtsp.h>


Data Fields

const AVClassclass
 Class for private options.
URLContextrtsp_hd
int nb_rtsp_streams
 number of items in the 'rtsp_streams' variable
struct RTSPStream ** rtsp_streams
 streams in this session
enum RTSPClientState state
 indicator of whether we are currently receiving data from the server.
int64_t seek_timestamp
 the seek value requested when calling av_seek_frame().
int seq
 RTSP command sequence number.
char session_id [512]
 copy of RTSPMessageHeader->session_id, i.e.
int timeout
 copy of RTSPMessageHeader->timeout, i.e.
int64_t last_cmd_time
 timestamp of the last RTSP command that we sent to the RTSP server.
enum RTSPTransport transport
 the negotiated data/packet transport protocol; e.g.
enum RTSPLowerTransport lower_transport
 the negotiated network layer transport protocol; e.g.
enum RTSPServerType server_type
 brand of server that we're talking to; e.g.
char real_challenge [64]
 the "RealChallenge1:" field from the server
char auth [128]
 plaintext authorization line (username:password)
HTTPAuthState auth_state
 authentication state
char last_reply [2048]
 The last reply of the server to a RTSP command.
void * cur_transport_priv
 RTSPStream->transport_priv of the last stream that we read a packet from.
enum AVDiscard
*real_setup_cache enum
AVDiscard *real_setup char
last_subscription[1024]
AVFormatContext *asf_ctx
uint64_t asf_pb_pos char
control_uri[1024] URLContext
*rtsp_hd_out enum
RTSPControlTransport 
control_transport
 stream setup during the last frame read.
int nb_byes
uint8_t * recvbuf
 Reusable buffer for receiving packets.
int filter_source
 Filter incoming UDP packets - receive packets only from the right source address and port.
int lower_transport_mask
 A mask with all requested transport methods.
uint64_t packets
 The number of returned packets.
struct pollfd * p
 Polling array for udp.
int get_parameter_supported
 Whether the server supports the GET_PARAMETER method.
int initial_pause
 Do not begin to play the stream immediately.
int rtp_muxer_flags
 Option flags for the chained RTP muxer.
int need_subscription
 The following are used for Real stream selection.


Detailed Description

Private data for the RTSP demuxer.

Todo:
Use AVIOContext instead of URLContext

Definition at line 200 of file rtsp.h.


Field Documentation

char RTSPState::auth[128]

plaintext authorization line (username:password)

Definition at line 258 of file rtsp.h.

authentication state

Definition at line 261 of file rtsp.h.

Class for private options.

Definition at line 201 of file rtsp.h.

enum AVDiscard* real_setup_cache enum AVDiscard* real_setup char last_subscription [1024] AVFormatContext* asf_ctx uint64_t asf_pb_pos char control_uri [1024] URLContext* rtsp_hd_out enum RTSPControlTransport RTSPState::control_transport

stream setup during the last frame read.

This is used to detect if we need to subscribe or unsubscribe to any new streams. current stream setup. This is a temporary buffer used to compare current setup to previous frame setup. the last value of the "SET_PARAMETER Subscribe:" RTSP command. this is used to send the same "Unsubscribe:" if stream setup changed, before sending a new "Subscribe:" command. The following are used for RTP/ASF streams ASF demuxer context for the embedded ASF stream from WMS servers cache for position of the asf demuxer, since we load a new data packet in the bytecontext for each incoming RTSP packet. some MS RTSP streams contain a URL in the SDP that we need to use for all subsequent RTSP requests, rather than the input URI; in other cases, this is a copy of AVFormatContext->filename. Additional output handle, used when input and output are done separately, eg for HTTP tunneling. RTSP transport mode, such as plain or tunneled.

Definition at line 309 of file rtsp.h.

RTSPStream->transport_priv of the last stream that we read a packet from.

Definition at line 268 of file rtsp.h.

Filter incoming UDP packets - receive packets only from the right source address and port.

Definition at line 321 of file rtsp.h.

Whether the server supports the GET_PARAMETER method.

Definition at line 341 of file rtsp.h.

Referenced by rtsp_read_packet().

Do not begin to play the stream immediately.

Definition at line 346 of file rtsp.h.

Referenced by rtsp_read_header().

timestamp of the last RTSP command that we sent to the RTSP server.

This is used to calculate when to send dummy commands to keep the connection alive, in conjunction with timeout.

Definition at line 240 of file rtsp.h.

Referenced by rtsp_read_packet().

The last reply of the server to a RTSP command.

Definition at line 264 of file rtsp.h.

the negotiated network layer transport protocol; e.g.

TCP or UDP uni-/multicast

Definition at line 247 of file rtsp.h.

Referenced by ff_rtsp_undo_setup(), rtsp_open_transport_ctx(), rtsp_read_close(), rtsp_read_packet(), and rtsp_write_packet().

A mask with all requested transport methods.

Definition at line 326 of file rtsp.h.

Referenced by rtsp_read_packet().

Definition at line 314 of file rtsp.h.

Referenced by rtsp_read_play().

number of items in the 'rtsp_streams' variable

Definition at line 205 of file rtsp.h.

Referenced by ff_rtsp_close_streams(), ff_rtsp_setup_output_streams(), ff_rtsp_tcp_read_packet(), ff_rtsp_undo_setup(), rtsp_read_packet(), rtsp_read_play(), and rtsp_write_packet().

The following are used for Real stream selection.

whether we need to send a "SET_PARAMETER Subscribe:" command

Definition at line 273 of file rtsp.h.

Referenced by rtsp_read_packet(), rtsp_read_pause(), and rtsp_read_play().

struct pollfd* RTSPState::p [read]

Polling array for udp.

Definition at line 336 of file rtsp.h.

Referenced by ff_rtsp_close_streams().

The number of returned packets.

Definition at line 331 of file rtsp.h.

Referenced by rtsp_read_packet().

the "RealChallenge1:" field from the server

Definition at line 255 of file rtsp.h.

Referenced by resetup_tcp().

Reusable buffer for receiving packets.

Definition at line 317 of file rtsp.h.

Referenced by ff_rtsp_close_streams().

Option flags for the chained RTP muxer.

Definition at line 351 of file rtsp.h.

Definition at line 202 of file rtsp.h.

Referenced by ff_rtsp_tcp_read_packet(), and rtsp_write_packet().

the seek value requested when calling av_seek_frame().

This value is subsequently used as part of the "Range" parameter when emitting the RTSP PLAY command. If we are currently playing, this command is called instantly. If we are currently paused, this command is called whenever we resume playback. Either way, the value is only used once, see rtsp_read_play() and rtsp_read_seek().

Definition at line 221 of file rtsp.h.

Referenced by rtsp_read_play(), and rtsp_read_seek().

RTSP command sequence number.

Definition at line 226 of file rtsp.h.

brand of server that we're talking to; e.g.

WMS, REAL or other. Detected based on the value of RTSPMessageHeader->server or the presence of RTSPMessageHeader->real_challenge

Definition at line 252 of file rtsp.h.

Referenced by ff_rtsp_setup_input_streams(), rtsp_read_packet(), rtsp_read_pause(), and rtsp_read_play().

copy of RTSPMessageHeader->session_id, i.e.

the server-provided session identifier that the client should re-transmit in each RTSP command

Definition at line 230 of file rtsp.h.

Referenced by rtsp_read_packet().

indicator of whether we are currently receiving data from the server.

Basically this isn't more than a simple cache of the last PLAY/PAUSE command sent to the server, to make sure we don't send 2x the same unexpectedly or commands in the wrong state.

Definition at line 213 of file rtsp.h.

Referenced by ff_rtsp_tcp_read_packet(), rtsp_read_packet(), rtsp_read_pause(), rtsp_read_play(), rtsp_read_seek(), rtsp_write_packet(), and rtsp_write_record().

copy of RTSPMessageHeader->timeout, i.e.

the time (in seconds) that the server will go without traffic on the RTSP/TCP line before it closes the connection.

Definition at line 235 of file rtsp.h.

Referenced by rtsp_read_packet().

the negotiated data/packet transport protocol; e.g.

RTP or RDT

Definition at line 243 of file rtsp.h.

Referenced by ff_rtsp_tcp_read_packet(), ff_rtsp_undo_setup(), rtsp_open_transport_ctx(), and rtsp_read_play().


The documentation for this struct was generated from the following file:

Generated on Fri Oct 26 02:39:53 2012 for FFmpeg by  doxygen 1.5.8