protected Task SendAsync(Action<RTMPBinaryWriter> proc, CancellationToken cancel_token)
{
var memstream = new MemoryStream();
using (memstream) {
using (var writer=new RTMPBinaryWriter(memstream)) {
proc.Invoke(writer);
}
}
return connection.Stream.WriteAsync(memstream.ToArray(), cancel_token);
}