Browse Source

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.
tags/n1.0
Luca Barbato 13 years ago
parent
commit
82613564cf
2 changed files with 10 additions and 1 deletions
  1. +9
    -0
      libavformat/rtmp.h
  2. +1
    -1
      libavformat/rtmpproto.c

+ 9
- 0
libavformat/rtmp.h View File

@@ -32,6 +32,15 @@
#define HMAC_IPAD_VAL 0x36
#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
* @{


+ 1
- 1
libavformat/rtmpproto.c View File

@@ -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,


Loading…
Cancel
Save