summaryrefslogtreecommitdiff
path: root/libavformat/rtsp.h
diff options
context:
space:
mode:
authorEd Torbett <ed.torbett@simulation-systems.co.uk>2013-07-26 11:38:00 +0100
committerMartin Storsjö <martin@martin.st>2013-07-29 22:58:56 +0300
commit1f57d60129b0e297cd197c6031c4439b30a6b503 (patch)
tree616cc62559e692ef4bdefc03dc186a83bdacca24 /libavformat/rtsp.h
parent74972220909787af5a3ffe66f7fa8041827c2bd2 (diff)
rtsp: Support RFC4570 (source specific multicast) more properly.
Add support for domain names, for multiple source addresses, for exclusions, and for session level specification of addresses. Signed-off-by: Martin Storsjö <martin@martin.st>
Diffstat (limited to 'libavformat/rtsp.h')
-rw-r--r--libavformat/rtsp.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/libavformat/rtsp.h b/libavformat/rtsp.h
index eff5aa4db7..e01ba98e23 100644
--- a/libavformat/rtsp.h
+++ b/libavformat/rtsp.h
@@ -402,6 +402,10 @@ typedef struct RTSPState {
#define RTSP_FLAG_LISTEN 0x2 /**< Wait for incoming connections. */
#define RTSP_FLAG_CUSTOM_IO 0x4 /**< Do all IO via the AVIOContext. */
+typedef struct RTSPSource {
+ char addr[128]; /**< Source-specific multicast include source IP address (from SDP content) */
+} RTSPSource;
+
/**
* Describe a single stream, as identified by a single m= line block in the
* SDP content. In the case of RDT, one RTSPStream can represent multiple
@@ -425,7 +429,10 @@ typedef struct RTSPStream {
//@{
int sdp_port; /**< port (from SDP content) */
struct sockaddr_storage sdp_ip; /**< IP address (from SDP content) */
- char source_addr[100]; /**< Source-specific multicast source IP address (from SDP content) */
+ int nb_include_source_addrs; /**< Number of source-specific multicast include source IP addresses (from SDP content) */
+ struct RTSPSource **include_source_addrs; /**< Source-specific multicast include source IP addresses (from SDP content) */
+ int nb_exclude_source_addrs; /**< Number of source-specific multicast exclude source IP addresses (from SDP content) */
+ struct RTSPSource **exclude_source_addrs; /**< Source-specific multicast exclude source IP addresses (from SDP content) */
int sdp_ttl; /**< IP Time-To-Live (from SDP content) */
int sdp_payload_type; /**< payload type */
//@}