summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michaelni@gmx.at>2013-01-15 16:12:18 +0100
committerMichael Niedermayer <michaelni@gmx.at>2013-01-15 16:12:24 +0100
commit77041e2474a107bb86259ab2c8b1bc6600ed093f (patch)
tree277dab3d3787cb6e12441f465c4881baf03bf1b4
parentb52925d2cde98b2a3ffaf451248191c8627d356a (diff)
parent094a7405e5d8463d7d167d893e04934ec1a84ecd (diff)
Merge commit '094a7405e5d8463d7d167d893e04934ec1a84ecd'
* commit '094a7405e5d8463d7d167d893e04934ec1a84ecd': x86: ABSB: port to cpuflags sdp: Include SRTP crypto params if using the srtp protocol Merged-by: Michael Niedermayer <michaelni@gmx.at>
-rw-r--r--libavformat/sdp.c15
-rw-r--r--libavutil/x86/x86util.asm11
2 files changed, 19 insertions, 7 deletions
diff --git a/libavformat/sdp.c b/libavformat/sdp.c
index cdc3e212ef..0124218495 100644
--- a/libavformat/sdp.c
+++ b/libavformat/sdp.c
@@ -128,7 +128,7 @@ static int sdp_get_address(char *dest_addr, int size, int *ttl, const char *url)
*ttl = 0;
- if (strcmp(proto, "rtp")) {
+ if (strcmp(proto, "rtp") && strcmp(proto, "srtp")) {
/* The url isn't for the actual rtp sessions,
* don't parse out anything else than the destination.
*/
@@ -681,6 +681,19 @@ int av_sdp_create(AVFormatContext *ac[], int n_files, char *buf, int size)
av_strlcatf(buf, size,
"a=control:streamid=%d\r\n", i + j);
}
+ if (ac[i]->pb && ac[i]->pb->av_class) {
+ uint8_t *crypto_suite = NULL, *crypto_params = NULL;
+ av_opt_get(ac[i]->pb, "srtp_out_suite", AV_OPT_SEARCH_CHILDREN,
+ &crypto_suite);
+ av_opt_get(ac[i]->pb, "srtp_out_params", AV_OPT_SEARCH_CHILDREN,
+ &crypto_params);
+ if (crypto_suite && crypto_suite[0])
+ av_strlcatf(buf, size,
+ "a=crypto:1 %s inline:%s\r\n",
+ crypto_suite, crypto_params);
+ av_free(crypto_suite);
+ av_free(crypto_params);
+ }
}
}
diff --git a/libavutil/x86/x86util.asm b/libavutil/x86/x86util.asm
index 6768dec595..babe34cf28 100644
--- a/libavutil/x86/x86util.asm
+++ b/libavutil/x86/x86util.asm
@@ -210,10 +210,14 @@
%endif
%endmacro
-%macro ABSB_MMX 2
+%macro ABSB 2 ; source mmreg, temp mmreg (unused for ssse3)
+%if cpuflag(ssse3)
+ pabsb %1, %1
+%else
pxor %2, %2
psubb %2, %1
pminub %1, %2
+%endif
%endmacro
%macro ABSB2_MMX 4
@@ -236,10 +240,6 @@
psubd %2, %4
%endmacro
-%macro ABSB_SSSE3 2
- pabsb %1, %1
-%endmacro
-
%macro ABSB2_SSSE3 4
pabsb %1, %1
pabsb %2, %2
@@ -250,7 +250,6 @@
ABS2 %3, %4, %5, %6
%endmacro
-%define ABSB ABSB_MMX
%define ABSB2 ABSB2_MMX
%macro SPLATB_LOAD 3