private void WriteMessage(Stream stream, RTMPMessage msg, long time_origin)
{
var timestamp = Math.Max(0, msg.Timestamp-time_origin);
using (var writer=new RTMPBinaryWriter(stream, true)) {
writer.Write((byte)msg.MessageType);
writer.WriteUInt24(msg.Body.Length);
writer.WriteUInt24((int)timestamp & 0xFFFFFF);
writer.Write((byte)((timestamp>>24) & 0xFF));
writer.WriteUInt24(0);
writer.Write(msg.Body, 0, msg.Body.Length);
writer.Write(msg.Body.Length+11);
}
}