# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: music.proto

import sys
_b=sys.version_info[0]<3 and (lambda x:x) or (lambda x:x.encode('latin1'))
from google.protobuf import descriptor as _descriptor
from google.protobuf import message as _message
from google.protobuf import reflection as _reflection
from google.protobuf import symbol_database as _symbol_database
from google.protobuf import descriptor_pb2
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()




DESCRIPTOR = _descriptor.FileDescriptor(
  name='music.proto',
  package='tensorflow.magenta',
  syntax='proto3',
  serialized_pb=_b('\n\x0bmusic.proto\x12\x12tensorflow.magenta\"\xd3\x16\n\x0cNoteSequence\x12\n\n\x02id\x18\x01 \x01(\t\x12\x10\n\x08\x66ilename\x18\x02 \x01(\t\x12\x17\n\x0f\x63ollection_name\x18\x03 \x01(\t\x12\x19\n\x11ticks_per_quarter\x18\x04 \x01(\x05\x12G\n\x0ftime_signatures\x18\x05 \x03(\x0b\x32..tensorflow.magenta.NoteSequence.TimeSignature\x12\x45\n\x0ekey_signatures\x18\x06 \x03(\x0b\x32-.tensorflow.magenta.NoteSequence.KeySignature\x12\x36\n\x06tempos\x18\x07 \x03(\x0b\x32&.tensorflow.magenta.NoteSequence.Tempo\x12\x34\n\x05notes\x18\x08 \x03(\x0b\x32%.tensorflow.magenta.NoteSequence.Note\x12\x12\n\ntotal_time\x18\t \x01(\x01\x12?\n\x0bpitch_bends\x18\n \x03(\x0b\x32*.tensorflow.magenta.NoteSequence.PitchBend\x12G\n\x0f\x63ontrol_changes\x18\x0b \x03(\x0b\x32..tensorflow.magenta.NoteSequence.ControlChange\x12=\n\npart_infos\x18\x0c \x03(\x0b\x32).tensorflow.magenta.NoteSequence.PartInfo\x12@\n\x0bsource_info\x18\r \x01(\x0b\x32+.tensorflow.magenta.NoteSequence.SourceInfo\x12I\n\x10text_annotations\x18\x0e \x03(\x0b\x32/.tensorflow.magenta.NoteSequence.TextAnnotation\x1a\xf9\x01\n\x04Note\x12\r\n\x05pitch\x18\x01 \x01(\x05\x12>\n\npitch_name\x18\x0b \x01(\x0e\x32*.tensorflow.magenta.NoteSequence.PitchName\x12\x10\n\x08velocity\x18\x02 \x01(\x05\x12\x12\n\nstart_time\x18\x03 \x01(\x01\x12\x10\n\x08\x65nd_time\x18\x04 \x01(\x01\x12\x11\n\tnumerator\x18\x05 \x01(\x05\x12\x13\n\x0b\x64\x65nominator\x18\x06 \x01(\x05\x12\x12\n\ninstrument\x18\x07 \x01(\x05\x12\x0f\n\x07program\x18\x08 \x01(\x05\x12\x0f\n\x07is_drum\x18\t \x01(\x08\x12\x0c\n\x04part\x18\n \x01(\x05\x1a\x45\n\rTimeSignature\x12\x0c\n\x04time\x18\x01 \x01(\x01\x12\x11\n\tnumerator\x18\x02 \x01(\x05\x12\x13\n\x0b\x64\x65nominator\x18\x03 \x01(\x05\x1a\x89\x03\n\x0cKeySignature\x12\x0c\n\x04time\x18\x01 \x01(\x01\x12>\n\x03key\x18\x02 \x01(\x0e\x32\x31.tensorflow.magenta.NoteSequence.KeySignature.Key\x12@\n\x04mode\x18\x03 \x01(\x0e\x32\x32.tensorflow.magenta.NoteSequence.KeySignature.Mode\"\xb7\x01\n\x03Key\x12\x05\n\x01\x43\x10\x00\x12\x0b\n\x07\x43_SHARP\x10\x01\x12\n\n\x06\x44_FLAT\x10\x01\x12\x05\n\x01\x44\x10\x02\x12\x0b\n\x07\x44_SHARP\x10\x03\x12\n\n\x06\x45_FLAT\x10\x03\x12\x05\n\x01\x45\x10\x04\x12\x05\n\x01\x46\x10\x05\x12\x0b\n\x07\x46_SHARP\x10\x06\x12\n\n\x06G_FLAT\x10\x06\x12\x05\n\x01G\x10\x07\x12\x0b\n\x07G_SHARP\x10\x08\x12\n\n\x06\x41_FLAT\x10\x08\x12\x05\n\x01\x41\x10\t\x12\x0b\n\x07\x41_SHARP\x10\n\x12\n\n\x06\x42_FLAT\x10\n\x12\x05\n\x01\x42\x10\x0b\x1a\x02\x10\x01\"/\n\x04Mode\x12\t\n\x05MAJOR\x10\x00\x12\t\n\x05MINOR\x10\x01\x12\x11\n\rNOT_SPECIFIED\x10\x02\x1a\"\n\x05Tempo\x12\x0c\n\x04time\x18\x01 \x01(\x01\x12\x0b\n\x03qpm\x18\x02 \x01(\x01\x1a]\n\tPitchBend\x12\x0c\n\x04time\x18\x01 \x01(\x01\x12\x0c\n\x04\x62\x65nd\x18\x02 \x01(\x05\x12\x12\n\ninstrument\x18\x03 \x01(\x05\x12\x0f\n\x07program\x18\x04 \x01(\x05\x12\x0f\n\x07is_drum\x18\x05 \x01(\x08\x1a\x82\x01\n\rControlChange\x12\x0c\n\x04time\x18\x01 \x01(\x01\x12\x16\n\x0e\x63ontrol_number\x18\x02 \x01(\x05\x12\x15\n\rcontrol_value\x18\x03 \x01(\x05\x12\x12\n\ninstrument\x18\x04 \x01(\x05\x12\x0f\n\x07program\x18\x05 \x01(\x05\x12\x0f\n\x07is_drum\x18\x06 \x01(\x08\x1a&\n\x08PartInfo\x12\x0c\n\x04part\x18\x01 \x01(\x05\x12\x0c\n\x04name\x18\x02 \x01(\t\x1a\xc6\x03\n\nSourceInfo\x12K\n\x0bsource_type\x18\x01 \x01(\x0e\x32\x36.tensorflow.magenta.NoteSequence.SourceInfo.SourceType\x12O\n\rencoding_type\x18\x02 \x01(\x0e\x32\x38.tensorflow.magenta.NoteSequence.SourceInfo.EncodingType\x12\x42\n\x06parser\x18\x03 \x01(\x0e\x32\x32.tensorflow.magenta.NoteSequence.SourceInfo.Parser\"M\n\nSourceType\x12\x17\n\x13UNKNOWN_SOURCE_TYPE\x10\x00\x12\x0f\n\x0bSCORE_BASED\x10\x01\x12\x15\n\x11PERFORMANCE_BASED\x10\x02\"K\n\x0c\x45ncodingType\x12\x19\n\x15UNKNOWN_ENCODING_TYPE\x10\x00\x12\r\n\tMUSIC_XML\x10\x01\x12\x07\n\x03\x41\x42\x43\x10\x02\x12\x08\n\x04MIDI\x10\x03\":\n\x06Parser\x12\x12\n\x0eUNKNOWN_PARSER\x10\x00\x12\x0b\n\x07MUSIC21\x10\x01\x12\x0f\n\x0bPRETTY_MIDI\x10\x02\x1a\xbe\x01\n\x0eTextAnnotation\x12\x0c\n\x04time\x18\x01 \x01(\x01\x12\x0c\n\x04text\x18\x02 \x01(\t\x12[\n\x0f\x61nnotation_type\x18\x03 \x01(\x0e\x32\x42.tensorflow.magenta.NoteSequence.TextAnnotation.TextAnnotationType\"3\n\x12TextAnnotationType\x12\x0b\n\x07UNKNOWN\x10\x00\x12\x10\n\x0c\x43HORD_SYMBOL\x10\x01\"\xff\x03\n\tPitchName\x12\x16\n\x12UNKNOWN_PITCH_NAME\x10\x00\x12\x0f\n\x0b\x46_FLAT_FLAT\x10\x01\x12\x0f\n\x0b\x43_FLAT_FLAT\x10\x02\x12\x0f\n\x0bG_FLAT_FLAT\x10\x03\x12\x0f\n\x0b\x44_FLAT_FLAT\x10\x04\x12\x0f\n\x0b\x41_FLAT_FLAT\x10\x05\x12\x0f\n\x0b\x45_FLAT_FLAT\x10\x06\x12\x0f\n\x0b\x42_FLAT_FLAT\x10\x07\x12\n\n\x06\x46_FLAT\x10\x08\x12\n\n\x06\x43_FLAT\x10\t\x12\n\n\x06G_FLAT\x10\n\x12\n\n\x06\x44_FLAT\x10\x0b\x12\n\n\x06\x41_FLAT\x10\x0c\x12\n\n\x06\x45_FLAT\x10\r\x12\n\n\x06\x42_FLAT\x10\x0e\x12\x05\n\x01\x46\x10\x0f\x12\x05\n\x01\x43\x10\x10\x12\x05\n\x01G\x10\x11\x12\x05\n\x01\x44\x10\x12\x12\x05\n\x01\x41\x10\x13\x12\x05\n\x01\x45\x10\x14\x12\x05\n\x01\x42\x10\x15\x12\x0b\n\x07\x46_SHARP\x10\x16\x12\x0b\n\x07\x43_SHARP\x10\x17\x12\x0b\n\x07G_SHARP\x10\x18\x12\x0b\n\x07\x44_SHARP\x10\x19\x12\x0b\n\x07\x41_SHARP\x10\x1a\x12\x0b\n\x07\x45_SHARP\x10\x1b\x12\x0b\n\x07\x42_SHARP\x10\x1c\x12\x11\n\rF_SHARP_SHARP\x10\x1d\x12\x11\n\rC_SHARP_SHARP\x10\x1e\x12\x11\n\rG_SHARP_SHARP\x10\x1f\x12\x11\n\rD_SHARP_SHARP\x10 \x12\x11\n\rA_SHARP_SHARP\x10!\x12\x11\n\rE_SHARP_SHARP\x10\"\x12\x11\n\rB_SHARP_SHARP\x10#b\x06proto3')
)
_sym_db.RegisterFileDescriptor(DESCRIPTOR)



_NOTESEQUENCE_KEYSIGNATURE_KEY = _descriptor.EnumDescriptor(
  name='Key',
  full_name='tensorflow.magenta.NoteSequence.KeySignature.Key',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='C', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='C_SHARP', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='D_FLAT', index=2, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='D', index=3, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='D_SHARP', index=4, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='E_FLAT', index=5, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='E', index=6, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='F', index=7, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='F_SHARP', index=8, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='G_FLAT', index=9, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='G', index=10, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='G_SHARP', index=11, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='A_FLAT', index=12, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='A', index=13, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='A_SHARP', index=14, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='B_FLAT', index=15, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='B', index=16, number=11,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=_descriptor._ParseOptions(descriptor_pb2.EnumOptions(), _b('\020\001')),
  serialized_start=1235,
  serialized_end=1418,
)
_sym_db.RegisterEnumDescriptor(_NOTESEQUENCE_KEYSIGNATURE_KEY)

_NOTESEQUENCE_KEYSIGNATURE_MODE = _descriptor.EnumDescriptor(
  name='Mode',
  full_name='tensorflow.magenta.NoteSequence.KeySignature.Mode',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='MAJOR', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MINOR', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='NOT_SPECIFIED', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=1420,
  serialized_end=1467,
)
_sym_db.RegisterEnumDescriptor(_NOTESEQUENCE_KEYSIGNATURE_MODE)

_NOTESEQUENCE_SOURCEINFO_SOURCETYPE = _descriptor.EnumDescriptor(
  name='SourceType',
  full_name='tensorflow.magenta.NoteSequence.SourceInfo.SourceType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN_SOURCE_TYPE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='SCORE_BASED', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='PERFORMANCE_BASED', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=2014,
  serialized_end=2091,
)
_sym_db.RegisterEnumDescriptor(_NOTESEQUENCE_SOURCEINFO_SOURCETYPE)

_NOTESEQUENCE_SOURCEINFO_ENCODINGTYPE = _descriptor.EnumDescriptor(
  name='EncodingType',
  full_name='tensorflow.magenta.NoteSequence.SourceInfo.EncodingType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN_ENCODING_TYPE', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MUSIC_XML', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='ABC', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MIDI', index=3, number=3,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=2093,
  serialized_end=2168,
)
_sym_db.RegisterEnumDescriptor(_NOTESEQUENCE_SOURCEINFO_ENCODINGTYPE)

_NOTESEQUENCE_SOURCEINFO_PARSER = _descriptor.EnumDescriptor(
  name='Parser',
  full_name='tensorflow.magenta.NoteSequence.SourceInfo.Parser',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN_PARSER', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='MUSIC21', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='PRETTY_MIDI', index=2, number=2,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=2170,
  serialized_end=2228,
)
_sym_db.RegisterEnumDescriptor(_NOTESEQUENCE_SOURCEINFO_PARSER)

_NOTESEQUENCE_TEXTANNOTATION_TEXTANNOTATIONTYPE = _descriptor.EnumDescriptor(
  name='TextAnnotationType',
  full_name='tensorflow.magenta.NoteSequence.TextAnnotation.TextAnnotationType',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='CHORD_SYMBOL', index=1, number=1,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=2370,
  serialized_end=2421,
)
_sym_db.RegisterEnumDescriptor(_NOTESEQUENCE_TEXTANNOTATION_TEXTANNOTATIONTYPE)

_NOTESEQUENCE_PITCHNAME = _descriptor.EnumDescriptor(
  name='PitchName',
  full_name='tensorflow.magenta.NoteSequence.PitchName',
  filename=None,
  file=DESCRIPTOR,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN_PITCH_NAME', index=0, number=0,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='F_FLAT_FLAT', index=1, number=1,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='C_FLAT_FLAT', index=2, number=2,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='G_FLAT_FLAT', index=3, number=3,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='D_FLAT_FLAT', index=4, number=4,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='A_FLAT_FLAT', index=5, number=5,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='E_FLAT_FLAT', index=6, number=6,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='B_FLAT_FLAT', index=7, number=7,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='F_FLAT', index=8, number=8,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='C_FLAT', index=9, number=9,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='G_FLAT', index=10, number=10,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='D_FLAT', index=11, number=11,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='A_FLAT', index=12, number=12,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='E_FLAT', index=13, number=13,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='B_FLAT', index=14, number=14,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='F', index=15, number=15,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='C', index=16, number=16,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='G', index=17, number=17,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='D', index=18, number=18,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='A', index=19, number=19,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='E', index=20, number=20,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='B', index=21, number=21,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='F_SHARP', index=22, number=22,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='C_SHARP', index=23, number=23,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='G_SHARP', index=24, number=24,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='D_SHARP', index=25, number=25,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='A_SHARP', index=26, number=26,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='E_SHARP', index=27, number=27,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='B_SHARP', index=28, number=28,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='F_SHARP_SHARP', index=29, number=29,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='C_SHARP_SHARP', index=30, number=30,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='G_SHARP_SHARP', index=31, number=31,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='D_SHARP_SHARP', index=32, number=32,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='A_SHARP_SHARP', index=33, number=33,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='E_SHARP_SHARP', index=34, number=34,
      options=None,
      type=None),
    _descriptor.EnumValueDescriptor(
      name='B_SHARP_SHARP', index=35, number=35,
      options=None,
      type=None),
  ],
  containing_type=None,
  options=None,
  serialized_start=2424,
  serialized_end=2935,
)
_sym_db.RegisterEnumDescriptor(_NOTESEQUENCE_PITCHNAME)


_NOTESEQUENCE_NOTE = _descriptor.Descriptor(
  name='Note',
  full_name='tensorflow.magenta.NoteSequence.Note',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='pitch', full_name='tensorflow.magenta.NoteSequence.Note.pitch', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='pitch_name', full_name='tensorflow.magenta.NoteSequence.Note.pitch_name', index=1,
      number=11, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='velocity', full_name='tensorflow.magenta.NoteSequence.Note.velocity', index=2,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='start_time', full_name='tensorflow.magenta.NoteSequence.Note.start_time', index=3,
      number=3, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='end_time', full_name='tensorflow.magenta.NoteSequence.Note.end_time', index=4,
      number=4, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='numerator', full_name='tensorflow.magenta.NoteSequence.Note.numerator', index=5,
      number=5, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='denominator', full_name='tensorflow.magenta.NoteSequence.Note.denominator', index=6,
      number=6, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='instrument', full_name='tensorflow.magenta.NoteSequence.Note.instrument', index=7,
      number=7, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='program', full_name='tensorflow.magenta.NoteSequence.Note.program', index=8,
      number=8, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='is_drum', full_name='tensorflow.magenta.NoteSequence.Note.is_drum', index=9,
      number=9, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='part', full_name='tensorflow.magenta.NoteSequence.Note.part', index=10,
      number=10, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=751,
  serialized_end=1000,
)

_NOTESEQUENCE_TIMESIGNATURE = _descriptor.Descriptor(
  name='TimeSignature',
  full_name='tensorflow.magenta.NoteSequence.TimeSignature',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='tensorflow.magenta.NoteSequence.TimeSignature.time', index=0,
      number=1, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='numerator', full_name='tensorflow.magenta.NoteSequence.TimeSignature.numerator', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='denominator', full_name='tensorflow.magenta.NoteSequence.TimeSignature.denominator', index=2,
      number=3, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1002,
  serialized_end=1071,
)

_NOTESEQUENCE_KEYSIGNATURE = _descriptor.Descriptor(
  name='KeySignature',
  full_name='tensorflow.magenta.NoteSequence.KeySignature',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='tensorflow.magenta.NoteSequence.KeySignature.time', index=0,
      number=1, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='key', full_name='tensorflow.magenta.NoteSequence.KeySignature.key', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='mode', full_name='tensorflow.magenta.NoteSequence.KeySignature.mode', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _NOTESEQUENCE_KEYSIGNATURE_KEY,
    _NOTESEQUENCE_KEYSIGNATURE_MODE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1074,
  serialized_end=1467,
)

_NOTESEQUENCE_TEMPO = _descriptor.Descriptor(
  name='Tempo',
  full_name='tensorflow.magenta.NoteSequence.Tempo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='tensorflow.magenta.NoteSequence.Tempo.time', index=0,
      number=1, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='qpm', full_name='tensorflow.magenta.NoteSequence.Tempo.qpm', index=1,
      number=2, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1469,
  serialized_end=1503,
)

_NOTESEQUENCE_PITCHBEND = _descriptor.Descriptor(
  name='PitchBend',
  full_name='tensorflow.magenta.NoteSequence.PitchBend',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='tensorflow.magenta.NoteSequence.PitchBend.time', index=0,
      number=1, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='bend', full_name='tensorflow.magenta.NoteSequence.PitchBend.bend', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='instrument', full_name='tensorflow.magenta.NoteSequence.PitchBend.instrument', index=2,
      number=3, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='program', full_name='tensorflow.magenta.NoteSequence.PitchBend.program', index=3,
      number=4, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='is_drum', full_name='tensorflow.magenta.NoteSequence.PitchBend.is_drum', index=4,
      number=5, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1505,
  serialized_end=1598,
)

_NOTESEQUENCE_CONTROLCHANGE = _descriptor.Descriptor(
  name='ControlChange',
  full_name='tensorflow.magenta.NoteSequence.ControlChange',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='tensorflow.magenta.NoteSequence.ControlChange.time', index=0,
      number=1, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='control_number', full_name='tensorflow.magenta.NoteSequence.ControlChange.control_number', index=1,
      number=2, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='control_value', full_name='tensorflow.magenta.NoteSequence.ControlChange.control_value', index=2,
      number=3, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='instrument', full_name='tensorflow.magenta.NoteSequence.ControlChange.instrument', index=3,
      number=4, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='program', full_name='tensorflow.magenta.NoteSequence.ControlChange.program', index=4,
      number=5, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='is_drum', full_name='tensorflow.magenta.NoteSequence.ControlChange.is_drum', index=5,
      number=6, type=8, cpp_type=7, label=1,
      has_default_value=False, default_value=False,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1601,
  serialized_end=1731,
)

_NOTESEQUENCE_PARTINFO = _descriptor.Descriptor(
  name='PartInfo',
  full_name='tensorflow.magenta.NoteSequence.PartInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='part', full_name='tensorflow.magenta.NoteSequence.PartInfo.part', index=0,
      number=1, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='name', full_name='tensorflow.magenta.NoteSequence.PartInfo.name', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1733,
  serialized_end=1771,
)

_NOTESEQUENCE_SOURCEINFO = _descriptor.Descriptor(
  name='SourceInfo',
  full_name='tensorflow.magenta.NoteSequence.SourceInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='source_type', full_name='tensorflow.magenta.NoteSequence.SourceInfo.source_type', index=0,
      number=1, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='encoding_type', full_name='tensorflow.magenta.NoteSequence.SourceInfo.encoding_type', index=1,
      number=2, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='parser', full_name='tensorflow.magenta.NoteSequence.SourceInfo.parser', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _NOTESEQUENCE_SOURCEINFO_SOURCETYPE,
    _NOTESEQUENCE_SOURCEINFO_ENCODINGTYPE,
    _NOTESEQUENCE_SOURCEINFO_PARSER,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1774,
  serialized_end=2228,
)

_NOTESEQUENCE_TEXTANNOTATION = _descriptor.Descriptor(
  name='TextAnnotation',
  full_name='tensorflow.magenta.NoteSequence.TextAnnotation',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='time', full_name='tensorflow.magenta.NoteSequence.TextAnnotation.time', index=0,
      number=1, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='text', full_name='tensorflow.magenta.NoteSequence.TextAnnotation.text', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='annotation_type', full_name='tensorflow.magenta.NoteSequence.TextAnnotation.annotation_type', index=2,
      number=3, type=14, cpp_type=8, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _NOTESEQUENCE_TEXTANNOTATION_TEXTANNOTATIONTYPE,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2231,
  serialized_end=2421,
)

_NOTESEQUENCE = _descriptor.Descriptor(
  name='NoteSequence',
  full_name='tensorflow.magenta.NoteSequence',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='tensorflow.magenta.NoteSequence.id', index=0,
      number=1, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='filename', full_name='tensorflow.magenta.NoteSequence.filename', index=1,
      number=2, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='collection_name', full_name='tensorflow.magenta.NoteSequence.collection_name', index=2,
      number=3, type=9, cpp_type=9, label=1,
      has_default_value=False, default_value=_b("").decode('utf-8'),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='ticks_per_quarter', full_name='tensorflow.magenta.NoteSequence.ticks_per_quarter', index=3,
      number=4, type=5, cpp_type=1, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='time_signatures', full_name='tensorflow.magenta.NoteSequence.time_signatures', index=4,
      number=5, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='key_signatures', full_name='tensorflow.magenta.NoteSequence.key_signatures', index=5,
      number=6, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='tempos', full_name='tensorflow.magenta.NoteSequence.tempos', index=6,
      number=7, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='notes', full_name='tensorflow.magenta.NoteSequence.notes', index=7,
      number=8, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='total_time', full_name='tensorflow.magenta.NoteSequence.total_time', index=8,
      number=9, type=1, cpp_type=5, label=1,
      has_default_value=False, default_value=float(0),
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='pitch_bends', full_name='tensorflow.magenta.NoteSequence.pitch_bends', index=9,
      number=10, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='control_changes', full_name='tensorflow.magenta.NoteSequence.control_changes', index=10,
      number=11, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='part_infos', full_name='tensorflow.magenta.NoteSequence.part_infos', index=11,
      number=12, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='source_info', full_name='tensorflow.magenta.NoteSequence.source_info', index=12,
      number=13, type=11, cpp_type=10, label=1,
      has_default_value=False, default_value=None,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
    _descriptor.FieldDescriptor(
      name='text_annotations', full_name='tensorflow.magenta.NoteSequence.text_annotations', index=13,
      number=14, type=11, cpp_type=10, label=3,
      has_default_value=False, default_value=[],
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      options=None),
  ],
  extensions=[
  ],
  nested_types=[_NOTESEQUENCE_NOTE, _NOTESEQUENCE_TIMESIGNATURE, _NOTESEQUENCE_KEYSIGNATURE, _NOTESEQUENCE_TEMPO, _NOTESEQUENCE_PITCHBEND, _NOTESEQUENCE_CONTROLCHANGE, _NOTESEQUENCE_PARTINFO, _NOTESEQUENCE_SOURCEINFO, _NOTESEQUENCE_TEXTANNOTATION, ],
  enum_types=[
    _NOTESEQUENCE_PITCHNAME,
  ],
  options=None,
  is_extendable=False,
  syntax='proto3',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=36,
  serialized_end=2935,
)

_NOTESEQUENCE_NOTE.fields_by_name['pitch_name'].enum_type = _NOTESEQUENCE_PITCHNAME
_NOTESEQUENCE_NOTE.containing_type = _NOTESEQUENCE
_NOTESEQUENCE_TIMESIGNATURE.containing_type = _NOTESEQUENCE
_NOTESEQUENCE_KEYSIGNATURE.fields_by_name['key'].enum_type = _NOTESEQUENCE_KEYSIGNATURE_KEY
_NOTESEQUENCE_KEYSIGNATURE.fields_by_name['mode'].enum_type = _NOTESEQUENCE_KEYSIGNATURE_MODE
_NOTESEQUENCE_KEYSIGNATURE.containing_type = _NOTESEQUENCE
_NOTESEQUENCE_KEYSIGNATURE_KEY.containing_type = _NOTESEQUENCE_KEYSIGNATURE
_NOTESEQUENCE_KEYSIGNATURE_MODE.containing_type = _NOTESEQUENCE_KEYSIGNATURE
_NOTESEQUENCE_TEMPO.containing_type = _NOTESEQUENCE
_NOTESEQUENCE_PITCHBEND.containing_type = _NOTESEQUENCE
_NOTESEQUENCE_CONTROLCHANGE.containing_type = _NOTESEQUENCE
_NOTESEQUENCE_PARTINFO.containing_type = _NOTESEQUENCE
_NOTESEQUENCE_SOURCEINFO.fields_by_name['source_type'].enum_type = _NOTESEQUENCE_SOURCEINFO_SOURCETYPE
_NOTESEQUENCE_SOURCEINFO.fields_by_name['encoding_type'].enum_type = _NOTESEQUENCE_SOURCEINFO_ENCODINGTYPE
_NOTESEQUENCE_SOURCEINFO.fields_by_name['parser'].enum_type = _NOTESEQUENCE_SOURCEINFO_PARSER
_NOTESEQUENCE_SOURCEINFO.containing_type = _NOTESEQUENCE
_NOTESEQUENCE_SOURCEINFO_SOURCETYPE.containing_type = _NOTESEQUENCE_SOURCEINFO
_NOTESEQUENCE_SOURCEINFO_ENCODINGTYPE.containing_type = _NOTESEQUENCE_SOURCEINFO
_NOTESEQUENCE_SOURCEINFO_PARSER.containing_type = _NOTESEQUENCE_SOURCEINFO
_NOTESEQUENCE_TEXTANNOTATION.fields_by_name['annotation_type'].enum_type = _NOTESEQUENCE_TEXTANNOTATION_TEXTANNOTATIONTYPE
_NOTESEQUENCE_TEXTANNOTATION.containing_type = _NOTESEQUENCE
_NOTESEQUENCE_TEXTANNOTATION_TEXTANNOTATIONTYPE.containing_type = _NOTESEQUENCE_TEXTANNOTATION
_NOTESEQUENCE.fields_by_name['time_signatures'].message_type = _NOTESEQUENCE_TIMESIGNATURE
_NOTESEQUENCE.fields_by_name['key_signatures'].message_type = _NOTESEQUENCE_KEYSIGNATURE
_NOTESEQUENCE.fields_by_name['tempos'].message_type = _NOTESEQUENCE_TEMPO
_NOTESEQUENCE.fields_by_name['notes'].message_type = _NOTESEQUENCE_NOTE
_NOTESEQUENCE.fields_by_name['pitch_bends'].message_type = _NOTESEQUENCE_PITCHBEND
_NOTESEQUENCE.fields_by_name['control_changes'].message_type = _NOTESEQUENCE_CONTROLCHANGE
_NOTESEQUENCE.fields_by_name['part_infos'].message_type = _NOTESEQUENCE_PARTINFO
_NOTESEQUENCE.fields_by_name['source_info'].message_type = _NOTESEQUENCE_SOURCEINFO
_NOTESEQUENCE.fields_by_name['text_annotations'].message_type = _NOTESEQUENCE_TEXTANNOTATION
_NOTESEQUENCE_PITCHNAME.containing_type = _NOTESEQUENCE
DESCRIPTOR.message_types_by_name['NoteSequence'] = _NOTESEQUENCE

NoteSequence = _reflection.GeneratedProtocolMessageType('NoteSequence', (_message.Message,), dict(

  Note = _reflection.GeneratedProtocolMessageType('Note', (_message.Message,), dict(
    DESCRIPTOR = _NOTESEQUENCE_NOTE,
    __module__ = 'music_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence.Note)
    ))
  ,

  TimeSignature = _reflection.GeneratedProtocolMessageType('TimeSignature', (_message.Message,), dict(
    DESCRIPTOR = _NOTESEQUENCE_TIMESIGNATURE,
    __module__ = 'music_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence.TimeSignature)
    ))
  ,

  KeySignature = _reflection.GeneratedProtocolMessageType('KeySignature', (_message.Message,), dict(
    DESCRIPTOR = _NOTESEQUENCE_KEYSIGNATURE,
    __module__ = 'music_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence.KeySignature)
    ))
  ,

  Tempo = _reflection.GeneratedProtocolMessageType('Tempo', (_message.Message,), dict(
    DESCRIPTOR = _NOTESEQUENCE_TEMPO,
    __module__ = 'music_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence.Tempo)
    ))
  ,

  PitchBend = _reflection.GeneratedProtocolMessageType('PitchBend', (_message.Message,), dict(
    DESCRIPTOR = _NOTESEQUENCE_PITCHBEND,
    __module__ = 'music_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence.PitchBend)
    ))
  ,

  ControlChange = _reflection.GeneratedProtocolMessageType('ControlChange', (_message.Message,), dict(
    DESCRIPTOR = _NOTESEQUENCE_CONTROLCHANGE,
    __module__ = 'music_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence.ControlChange)
    ))
  ,

  PartInfo = _reflection.GeneratedProtocolMessageType('PartInfo', (_message.Message,), dict(
    DESCRIPTOR = _NOTESEQUENCE_PARTINFO,
    __module__ = 'music_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence.PartInfo)
    ))
  ,

  SourceInfo = _reflection.GeneratedProtocolMessageType('SourceInfo', (_message.Message,), dict(
    DESCRIPTOR = _NOTESEQUENCE_SOURCEINFO,
    __module__ = 'music_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence.SourceInfo)
    ))
  ,

  TextAnnotation = _reflection.GeneratedProtocolMessageType('TextAnnotation', (_message.Message,), dict(
    DESCRIPTOR = _NOTESEQUENCE_TEXTANNOTATION,
    __module__ = 'music_pb2'
    # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence.TextAnnotation)
    ))
  ,
  DESCRIPTOR = _NOTESEQUENCE,
  __module__ = 'music_pb2'
  # @@protoc_insertion_point(class_scope:tensorflow.magenta.NoteSequence)
  ))
_sym_db.RegisterMessage(NoteSequence)
_sym_db.RegisterMessage(NoteSequence.Note)
_sym_db.RegisterMessage(NoteSequence.TimeSignature)
_sym_db.RegisterMessage(NoteSequence.KeySignature)
_sym_db.RegisterMessage(NoteSequence.Tempo)
_sym_db.RegisterMessage(NoteSequence.PitchBend)
_sym_db.RegisterMessage(NoteSequence.ControlChange)
_sym_db.RegisterMessage(NoteSequence.PartInfo)
_sym_db.RegisterMessage(NoteSequence.SourceInfo)
_sym_db.RegisterMessage(NoteSequence.TextAnnotation)


_NOTESEQUENCE_KEYSIGNATURE_KEY.has_options = True
_NOTESEQUENCE_KEYSIGNATURE_KEY._options = _descriptor._ParseOptions(descriptor_pb2.EnumOptions(), _b('\020\001'))
# @@protoc_insertion_point(module_scope)
