~ubuntu-branches/ubuntu/saucy/gst-libav1.0/saucy-proposed

« back to all changes in this revision

Viewing changes to gst-libs/ext/libav/libavformat/rtsp.h

  • Committer: Package Import Robot
  • Author(s): Sebastian Dröge
  • Date: 2013-07-30 09:00:15 UTC
  • mfrom: (1.1.16) (7.1.7 experimental)
  • Revision ID: package-import@ubuntu.com-20130730090015-sc1ou2yssu7q5w4e
Tags: 1.1.3-1
* New upstream development snapshot:
  + debian/control:
    - Build depend on GStreamer and gst-plugins-base >= 1.1.3.

Show diffs side-by-side

added added

removed removed

Lines of Context:
42
42
    RTSP_LOWER_TRANSPORT_HTTP = 8,          /**< HTTP tunneled - not a proper
43
43
                                                 transport mode as such,
44
44
                                                 only for use via AVOptions */
 
45
    RTSP_LOWER_TRANSPORT_CUSTOM = 16,       /**< Custom IO - not a public
 
46
                                                 option for lower_transport_mask,
 
47
                                                 but set in the SDP demuxer based
 
48
                                                 on a flag. */
45
49
};
46
50
 
47
51
/**
52
56
enum RTSPTransport {
53
57
    RTSP_TRANSPORT_RTP, /**< Standards-compliant RTP */
54
58
    RTSP_TRANSPORT_RDT, /**< Realmedia Data Transport */
 
59
    RTSP_TRANSPORT_RAW, /**< Raw data (over UDP) */
55
60
    RTSP_TRANSPORT_NB
56
61
};
57
62
 
102
107
     * packets will be allowed to make before being discarded. */
103
108
    int ttl;
104
109
 
 
110
    /** transport set to record data */
 
111
    int mode_record;
 
112
 
105
113
    struct sockaddr_storage destination; /**< destination IP address */
106
114
    char source[INET6_ADDRSTRLEN + 1]; /**< source IP address */
107
115
 
171
179
     * returned
172
180
     */
173
181
    char reason[256];
 
182
 
 
183
    /**
 
184
     * Content type header
 
185
     */
 
186
    char content_type[64];
174
187
} RTSPMessageHeader;
175
188
 
176
189
/**
302
315
     * other cases, this is a copy of AVFormatContext->filename. */
303
316
    char control_uri[1024];
304
317
 
 
318
    /** The following are used for parsing raw mpegts in udp */
 
319
    //@{
 
320
    struct MpegTSContext *ts;
 
321
    int recvbuf_pos;
 
322
    int recvbuf_len;
 
323
    //@}
 
324
 
305
325
    /** Additional output handle, used when input and output are done
306
326
     * separately, eg for HTTP tunneling. */
307
327
    URLContext *rtsp_hd_out;
359
379
     * Mask of all requested media types
360
380
     */
361
381
    int media_type_mask;
 
382
 
 
383
    /**
 
384
     * Minimum and maximum local UDP ports.
 
385
     */
 
386
    int rtp_port_min, rtp_port_max;
 
387
 
 
388
    /**
 
389
     * Timeout to wait for incoming connections.
 
390
     */
 
391
    int initial_timeout;
 
392
 
 
393
    /**
 
394
     * Size of RTP packet reordering queue.
 
395
     */
 
396
    int reordering_queue_size;
362
397
} RTSPState;
363
398
 
364
399
#define RTSP_FLAG_FILTER_SRC  0x1    /**< Filter incoming UDP packets -
365
400
                                          receive packets only from the right
366
401
                                          source address and port. */
 
402
#define RTSP_FLAG_LISTEN      0x2    /**< Wait for incoming connections. */
 
403
#define RTSP_FLAG_CUSTOM_IO   0x4    /**< Do all IO via the AVIOContext. */
367
404
 
368
405
/**
369
406
 * Describe a single stream, as identified by a single m= line block in the
392
429
    int sdp_payload_type;     /**< payload type */
393
430
    //@}
394
431
 
395
 
    /** The following are used for dynamic protocols (rtp_*.c/rdt.c) */
 
432
    /** The following are used for dynamic protocols (rtpdec_*.c/rdt.c) */
396
433
    //@{
397
434
    /** handler structure */
398
435
    RTPDynamicProtocolHandler *dynamic_handler;
516
553
int ff_rtsp_setup_output_streams(AVFormatContext *s, const char *addr);
517
554
 
518
555
/**
 
556
 * Parse RTSP commands (OPTIONS, PAUSE and TEARDOWN) during streaming in
 
557
 * listen mode.
 
558
 */
 
559
int ff_rtsp_parse_streaming_commands(AVFormatContext *s);
 
560
 
 
561
/**
519
562
 * Parse an SDP description of streams by populating an RTSPState struct
520
563
 * within the AVFormatContext; also allocate the RTP streams and the
521
564
 * pollfd array used for UDP streams.
548
591
 */
549
592
void ff_rtsp_undo_setup(AVFormatContext *s);
550
593
 
 
594
/**
 
595
 * Open RTSP transport context.
 
596
 */
 
597
int ff_rtsp_open_transport_ctx(AVFormatContext *s, RTSPStream *rtsp_st);
 
598
 
551
599
extern const AVOption ff_rtsp_options[];
552
600
 
553
601
#endif /* AVFORMAT_RTSP_H */