summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorLuca Barbato <lu_zero@gentoo.org>2012-08-08 11:49:02 +0200
committerLuca Barbato <lu_zero@gentoo.org>2012-08-08 14:22:34 +0200
commit82613564cfae459796642b22fc0163927d7f49e0 (patch)
tree2a155565f5885eafdf98398811d714e0c624ecc5 /libavformat
parente78e6c37efc98189c4c3d89acd3265d7a7ba6d05 (diff)
rtmp: send check_bw as notification
Set the transactionId to 0 to signal the server a return _result/_error is not expected. Solves the problems experienced with strict rtmp servers.
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/rtmp.h9
-rw-r--r--libavformat/rtmpproto.c2
2 files changed, 10 insertions, 1 deletions
diff --git a/libavformat/rtmp.h b/libavformat/rtmp.h
index b9c5f1e430..c9aa67e056 100644
--- a/libavformat/rtmp.h
+++ b/libavformat/rtmp.h
@@ -33,6 +33,15 @@
#define HMAC_OPAD_VAL 0x5C
/**
+ * A non-zero transaction id requires the server to send back
+ * a _result or _error response.
+ * Setting it to 0 marks the message as a notification not
+ * requiring feedback.
+ */
+
+#define RTMP_NOTIFICATION 0
+
+/**
* emulated Flash client version - 9.0.124.2 on Linux
* @{
*/
diff --git a/libavformat/rtmpproto.c b/libavformat/rtmpproto.c
index 19b6874791..f6607774c2 100644
--- a/libavformat/rtmpproto.c
+++ b/libavformat/rtmpproto.c
@@ -573,7 +573,7 @@ static int gen_check_bw(URLContext *s, RTMPContext *rt)
p = pkt.data;
ff_amf_write_string(&p, "_checkbw");
- ff_amf_write_number(&p, ++rt->nb_invokes);
+ ff_amf_write_number(&p, RTMP_NOTIFICATION);
ff_amf_write_null(&p);
ret = ff_rtmp_packet_write(rt->stream, &pkt, rt->chunk_size,