On Wed, 4 Jul 2012, Jordi Ortiz wrote:
---
libavformat/rtsp.c | 8 ++++++++
libavformat/rtsp.h | 3 +++
2 files changed, 11 insertions(+)
diff --git a/libavformat/rtsp.c b/libavformat/rtsp.c
index 76b5df8..551884b 100644
--- a/libavformat/rtsp.c
+++ b/libavformat/rtsp.c
@@ -749,6 +749,14 @@ static void rtsp_parse_transport(RTSPMessageHeader *reply,
const char *p)
get_word_sep(buf, sizeof(buf), ";,", &p);
av_strlcpy(th->source, buf, sizeof(th->source));
}
+ } else if (!strcmp(parameter, "mode")) {
+ if (*p == '=') {
+ p++;
+ get_word_sep(buf, sizeof(buf), ";, ", &p);
+ if (!strcmp(buf, "record") ||
+ !strcmp(buf, "receive"))
+ th->mode_record = 1;
+ }
}
while (*p != ';' && *p != '\0' && *p != ',')
diff --git a/libavformat/rtsp.h b/libavformat/rtsp.h
index e512336..55743b5 100644
--- a/libavformat/rtsp.h
+++ b/libavformat/rtsp.h
@@ -102,6 +102,9 @@ typedef struct RTSPTransportField {
* packets will be allowed to make before being discarded. */
int ttl;
+ /** transport set to record data */
+ int mode_record;
+
struct sockaddr_storage destination; /**< destination IP address */
char source[INET6_ADDRSTRLEN + 1]; /**< source IP address */
--
1.7.10
The patch looks good to me, but doesn't make sense on its own, so I'll
defer pushing it until the rest is ok.
The commit message could be improved though, to something like this:
--8<--
rtsp: Parse the mode=receive/record parameter in transport lines
We need to support the nonstandard mode=receive, for compatibility with
older libavformat clients.
--8<--
// Martin
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel