public override void ToBuffer(ref TSMessagePackWriter writer) { writer.WriteByte(Tag); if (ISO_639_Language_Infos != null) { writer.Skip(1, out int DescriptorLengthPosition); foreach (var item in ISO_639_Language_Infos) { writer.WriteUInt3(item.ISO_639_Language_Code >> 8); writer.WriteByte(item.Audio_Type); } writer.WriteByteReturn((byte)(writer.GetCurrentPosition() - DescriptorLengthPosition - 1), DescriptorLengthPosition); } else { writer.WriteByte(0); } }