On 15 September 2013 07:54, Luca Barbato <[email protected]> wrote: > --- > libavformat/rtmpproto.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) > > diff --git a/libavformat/rtmpproto.c b/libavformat/rtmpproto.c > index 03f5761..e1a7782 100644 > --- a/libavformat/rtmpproto.c > +++ b/libavformat/rtmpproto.c > @@ -1903,6 +1903,13 @@ static int send_invoke_response(URLContext *s, > RTMPPacket *pkt) > // Send onStatus(NetStream.Publish.Start) > return write_status(s, pkt, "NetStream.Publish.Start", > filename); > + } else if (!strcmp(command, "play")) { > + ret = write_begin(s); > + if (ret < 0) > + return ret; > + rt->state = STATE_PUBLISHING; > + return write_status(s, pkt, "NetStream.Play.Start", > + filename); > } else { > if ((ret = ff_rtmp_packet_create(&spkt, RTMP_SYSTEM_CHANNEL, > RTMP_PT_INVOKE, 0, > @@ -2523,7 +2530,6 @@ reconnect: > } else { > if (read_connect(s, s->priv_data) < 0) > goto fail; > - rt->is_input = 1; > } > > do { > -- > 1.8.3.2 >
IIRC for compatibility with the Flash player you'll also need to send a (following the librtmp terminology) type-0 control message with the stream ID. This would correspond here to (the somewhat incorrectly named) RTMP_PT_PING, followed by a body of be16(zero), amf32(streamid). Can supply a proper patch for this in the morning. _______________________________________________ libav-devel mailing list [email protected] https://lists.libav.org/mailman/listinfo/libav-devel
