# -*- coding: utf-8 -*-
# Generated by the protocol buffer compiler.  DO NOT EDIT!
# source: song.proto

from google.protobuf.internal import enum_type_wrapper
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
# @@protoc_insertion_point(imports)

_sym_db = _symbol_database.Default()




DESCRIPTOR = _descriptor.FileDescriptor(
  name='song.proto',
  package='song',
  syntax='proto2',
  serialized_options=None,
  create_key=_descriptor._internal_create_key,
  serialized_pb=b'\n\nsong.proto\x12\x04song\"\x7f\n\x04Note\x12\r\n\x05pitch\x18\x01 \x01(\x05\x12\x10\n\x08velocity\x18\x02 \x01(\x05\x12\x12\n\nstart_tick\x18\x03 \x01(\x05\x12\x12\n\nstart_time\x18\x04 \x01(\x02\x12\x10\n\x08\x65nd_tick\x18\x05 \x01(\x05\x12\x10\n\x08\x65nd_time\x18\x06 \x01(\x02\x12\n\n\x02id\x18\x07 \x01(\r\"6\n\nTempoEvent\x12\r\n\x05ticks\x18\x01 \x01(\x05\x12\x0b\n\x03\x62pm\x18\x02 \x01(\x02\x12\x0c\n\x04time\x18\x03 \x01(\x02\"K\n\x12TimeSignatureEvent\x12\r\n\x05ticks\x18\x01 \x01(\x05\x12\x11\n\tnumerator\x18\x02 \x01(\x05\x12\x13\n\x0b\x64\x65nominator\x18\x03 \x01(\x05\"2\n\x0eInstrumentInfo\x12\x0f\n\x07program\x18\x01 \x01(\x05\x12\x0f\n\x07is_drum\x18\x02 \x01(\x08\"f\n\x0f\x41udioPluginInfo\x12\r\n\x05tf_id\x18\x01 \x01(\t\x12\x12\n\nis_enabled\x18\x02 \x01(\x08\x12\x19\n\x11local_instance_id\x18\x03 \x01(\t\x12\x15\n\rbase64_states\x18\x04 \x01(\t\"\xb2\x01\n\x10\x41utomationTarget\x12/\n\x04type\x18\x01 \x01(\x0e\x32!.song.AutomationTarget.TargetType\x12\x17\n\x0f\x61udio_plugin_id\x18\x02 \x01(\t\x12\x10\n\x08param_id\x18\x03 \x01(\t\"B\n\nTargetType\x12\r\n\tUNDEFINED\x10\x00\x12\n\n\x06VOLUME\x10\x01\x12\x07\n\x03PAN\x10\x02\x12\x10\n\x0c\x41UDIO_PLUGIN\x10\x03\"\x8c\x01\n\x0f\x41utomationValue\x12\x30\n\x06points\x18\x01 \x03(\x0b\x32 .song.AutomationValue.ParamValue\x12\x10\n\x08\x64isabled\x18\x02 \x01(\x08\x1a\x35\n\nParamValue\x12\x0c\n\x04tick\x18\x01 \x01(\x05\x12\r\n\x05value\x18\x02 \x01(\x02\x12\n\n\x02id\x18\x03 \x01(\x05\"\xc4\x01\n\x0e\x41utomationData\x12\'\n\x07targets\x18\x01 \x03(\x0b\x32\x16.song.AutomationTarget\x12=\n\rtarget_values\x18\x02 \x03(\x0b\x32&.song.AutomationData.TargetValuesEntry\x1aJ\n\x11TargetValuesEntry\x12\x0b\n\x03key\x18\x01 \x01(\t\x12$\n\x05value\x18\x02 \x01(\x0b\x32\x15.song.AutomationValue:\x02\x38\x01\"\xef\x01\n\tTrackSend\x12\x17\n\x0foutput_bus_rank\x18\x01 \x01(\x05\x12\x12\n\ngain_level\x18\x02 \x01(\x02\x12\x33\n\x08position\x18\x03 \x01(\x0e\x32!.song.TrackSend.TrackSendPosition\x12\r\n\x05muted\x18\x04 \x01(\x08\"q\n\x11TrackSendPosition\x12!\n\x1dUNDEFINED_TRACK_SEND_POSITION\x10\x00\x12\x1b\n\x17SEND_POSITION_PRE_FADER\x10\x01\x12\x1c\n\x18SEND_POSITION_POST_FADER\x10\x02\"\xca\x01\n\x0bTrackOutput\x12/\n\x04type\x18\x01 \x01(\x0e\x32!.song.TrackOutput.TrackOutputType\x12\x10\n\x08track_id\x18\x02 \x01(\t\x12\x13\n\x0b\x64\x65vice_name\x18\x03 \x01(\t\"c\n\x0fTrackOutputType\x12\x1f\n\x1bUNDEFINED_TRACK_OUTPUT_TYPE\x10\x00\x12\x17\n\x13TRACK_OUTPUT_DEVICE\x10\x01\x12\x16\n\x12TRACK_OUTPUT_TRACK\x10\x02\"&\n\x0c\x41uxTrackData\x12\x16\n\x0einput_bus_rank\x18\x01 \x01(\x05\"\xe2\x05\n\x05Track\x12(\n\ninstrument\x18\x01 \x01(\x0b\x32\x14.song.InstrumentInfo\x12\x1d\n\x05notes\x18\x02 \x03(\x0b\x32\n.song.NoteB\x02\x18\x01\x12\x33\n\x15suggested_instruments\x18\x03 \x03(\x0b\x32\x14.song.InstrumentInfo\x12\x0c\n\x04uuid\x18\x04 \x01(\t\x12\x0e\n\x06volume\x18\x05 \x01(\x02\x12\x0c\n\x04solo\x18\x06 \x01(\x08\x12\r\n\x05muted\x18\x07 \x01(\x08\x12\x0c\n\x04rank\x18\x08 \x01(\x05\x12\x18\n\x10track_start_tick\x18\t \x01(\x05\x12\x16\n\x0etrack_end_tick\x18\n \x01(\x05\x12-\n\x0esampler_plugin\x18\x0b \x01(\x0b\x32\x15.song.AudioPluginInfo\x12\x32\n\x0c\x61udio_plugin\x18\x0c \x03(\x0b\x32\x1c.song.Track.AudioPluginEntry\x12\x19\n\x05\x63lips\x18\r \x03(\x0b\x32\n.song.Clip\x12\x0b\n\x03pan\x18\x0e \x01(\x05\x12\x0c\n\x04name\x18\x0f \x01(\t\x12(\n\nautomation\x18\x10 \x01(\x0b\x32\x14.song.AutomationData\x12\x1d\n\x04type\x18\x11 \x01(\x0e\x32\x0f.song.TrackType\x12*\n\x0e\x61ux_track_data\x18\x12 \x01(\x0b\x32\x12.song.AuxTrackData\x12%\n\x05sends\x18\x13 \x03(\x0b\x32\x16.song.Track.SendsEntry\x12!\n\x06output\x18\x14 \x01(\x0b\x32\x11.song.TrackOutput\x1aI\n\x10\x41udioPluginEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12$\n\x05value\x18\x02 \x01(\x0b\x32\x15.song.AudioPluginInfo:\x02\x38\x01\x1a=\n\nSendsEntry\x12\x0b\n\x03key\x18\x01 \x01(\x05\x12\x1e\n\x05value\x18\x02 \x01(\x0b\x32\x0f.song.TrackSend:\x02\x38\x01\")\n\tAudioData\x12\x0c\n\x04\x64\x61ta\x18\x01 \x01(\x0c\x12\x0e\n\x06\x66ormat\x18\x02 \x01(\t\"\x9e\x01\n\rAudioClipData\x12\x17\n\x0f\x61udio_file_path\x18\x01 \x01(\t\x12\x12\n\nstart_tick\x18\x02 \x01(\x05\x12\x10\n\x08\x64uration\x18\x03 \x01(\x01\x12#\n\naudio_data\x18\x04 \x01(\x0b\x32\x0f.song.AudioData\x12\x13\n\x0bspeed_ratio\x18\x05 \x01(\x01\x12\x14\n\x0cpitch_offset\x18\x06 \x01(\x01\"\xb7\x01\n\x04\x43lip\x12\n\n\x02id\x18\x01 \x01(\t\x12\x17\n\x0f\x63lip_start_tick\x18\x02 \x01(\x05\x12\x15\n\rclip_end_tick\x18\x03 \x01(\x05\x12\x19\n\x05notes\x18\x04 \x03(\x0b\x32\n.song.Note\x12\x0c\n\x04name\x18\x05 \x01(\t\x12\x1c\n\x04type\x18\x06 \x01(\x0e\x32\x0e.song.ClipType\x12,\n\x0f\x61udio_clip_data\x18\x07 \x01(\x0b\x32\x13.song.AudioClipData\"\xf6\x01\n\x0fStructureMarker\x12\x0c\n\x04tick\x18\x01 \x01(\x05\x12\x31\n\x04type\x18\x02 \x01(\x0e\x32#.song.StructureMarker.StructureType\x12\x13\n\x0b\x63ustom_name\x18\x03 \x01(\t\"\x8c\x01\n\rStructureType\x12\x0b\n\x07UNKNOWN\x10\x00\x12\t\n\x05INTRO\x10\x01\x12\t\n\x05VERSE\x10\x02\x12\n\n\x06\x43HORUS\x10\x03\x12\n\n\x06\x42RIDGE\x10\x04\x12\t\n\x05OUTRO\x10\x05\x12\x0e\n\nPRE_CHORUS\x10\x06\x12\x0f\n\x0bPOST_CHORUS\x10\x07\x12\x08\n\x04\x46ILL\x10\x08\x12\n\n\x06\x43USTOM\x10\t\"!\n\x03\x42us\x12\x0c\n\x04rank\x18\x01 \x01(\x05\x12\x0c\n\x04name\x18\x02 \x01(\t\"\xb0\x02\n\x04Song\x12\x0b\n\x03PPQ\x18\x01 \x01(\x05\x12 \n\x06tempos\x18\x02 \x03(\x0b\x32\x10.song.TempoEvent\x12\x31\n\x0ftime_signatures\x18\x03 \x03(\x0b\x32\x18.song.TimeSignatureEvent\x12\x11\n\tlast_tick\x18\x04 \x01(\x05\x12\x10\n\x08\x64uration\x18\x05 \x01(\x02\x12\x1b\n\x06tracks\x18\x06 \x03(\x0b\x32\x0b.song.Track\x12!\n\x0cmaster_track\x18\x07 \x01(\x0b\x32\x0b.song.Track\x12)\n\nstructures\x18\x08 \x03(\x0b\x32\x15.song.StructureMarker\x12\x18\n\x05\x62uses\x18\t \x03(\x0b\x32\t.song.Bus\x12\x1c\n\x06lyrics\x18\n \x01(\x0b\x32\x0c.song.Lyrics\"(\n\x06Lyrics\x12\x1e\n\x05lines\x18\x01 \x03(\x0b\x32\x0f.song.LyricLine\"v\n\tLyricLine\x12(\n\x05words\x18\x01 \x03(\x0b\x32\x19.song.LyricLine.LyricWord\x1a?\n\tLyricWord\x12\x12\n\nstart_tick\x18\x01 \x01(\x05\x12\x10\n\x08\x65nd_tick\x18\x02 \x01(\x05\x12\x0c\n\x04word\x18\x03 \x01(\t*b\n\tTrackType\x12\x13\n\x0fUNDEFINED_TRACK\x10\x00\x12\x0e\n\nMIDI_TRACK\x10\x01\x12\x0f\n\x0b\x41UDIO_TRACK\x10\x02\x12\x10\n\x0cMASTER_TRACK\x10\x03\x12\r\n\tAUX_TRACK\x10\x04*=\n\x08\x43lipType\x12\x12\n\x0eUNDEFINED_CLIP\x10\x00\x12\r\n\tMIDI_CLIP\x10\x01\x12\x0e\n\nAUDIO_CLIP\x10\x02'
)

_TRACKTYPE = _descriptor.EnumDescriptor(
  name='TrackType',
  full_name='song.TrackType',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNDEFINED_TRACK', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='MIDI_TRACK', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='AUDIO_TRACK', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='MASTER_TRACK', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='AUX_TRACK', index=4, number=4,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=3332,
  serialized_end=3430,
)
_sym_db.RegisterEnumDescriptor(_TRACKTYPE)

TrackType = enum_type_wrapper.EnumTypeWrapper(_TRACKTYPE)
_CLIPTYPE = _descriptor.EnumDescriptor(
  name='ClipType',
  full_name='song.ClipType',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNDEFINED_CLIP', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='MIDI_CLIP', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='AUDIO_CLIP', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=3432,
  serialized_end=3493,
)
_sym_db.RegisterEnumDescriptor(_CLIPTYPE)

ClipType = enum_type_wrapper.EnumTypeWrapper(_CLIPTYPE)
UNDEFINED_TRACK = 0
MIDI_TRACK = 1
AUDIO_TRACK = 2
MASTER_TRACK = 3
AUX_TRACK = 4
UNDEFINED_CLIP = 0
MIDI_CLIP = 1
AUDIO_CLIP = 2


_AUTOMATIONTARGET_TARGETTYPE = _descriptor.EnumDescriptor(
  name='TargetType',
  full_name='song.AutomationTarget.TargetType',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNDEFINED', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='VOLUME', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='PAN', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='AUDIO_PLUGIN', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=551,
  serialized_end=617,
)
_sym_db.RegisterEnumDescriptor(_AUTOMATIONTARGET_TARGETTYPE)

_TRACKSEND_TRACKSENDPOSITION = _descriptor.EnumDescriptor(
  name='TrackSendPosition',
  full_name='song.TrackSend.TrackSendPosition',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNDEFINED_TRACK_SEND_POSITION', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='SEND_POSITION_PRE_FADER', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='SEND_POSITION_POST_FADER', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=1088,
  serialized_end=1201,
)
_sym_db.RegisterEnumDescriptor(_TRACKSEND_TRACKSENDPOSITION)

_TRACKOUTPUT_TRACKOUTPUTTYPE = _descriptor.EnumDescriptor(
  name='TrackOutputType',
  full_name='song.TrackOutput.TrackOutputType',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNDEFINED_TRACK_OUTPUT_TYPE', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='TRACK_OUTPUT_DEVICE', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='TRACK_OUTPUT_TRACK', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=1307,
  serialized_end=1406,
)
_sym_db.RegisterEnumDescriptor(_TRACKOUTPUT_TRACKOUTPUTTYPE)

_STRUCTUREMARKER_STRUCTURETYPE = _descriptor.EnumDescriptor(
  name='StructureType',
  full_name='song.StructureMarker.StructureType',
  filename=None,
  file=DESCRIPTOR,
  create_key=_descriptor._internal_create_key,
  values=[
    _descriptor.EnumValueDescriptor(
      name='UNKNOWN', index=0, number=0,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='INTRO', index=1, number=1,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='VERSE', index=2, number=2,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='CHORUS', index=3, number=3,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='BRIDGE', index=4, number=4,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='OUTRO', index=5, number=5,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='PRE_CHORUS', index=6, number=6,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='POST_CHORUS', index=7, number=7,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='FILL', index=8, number=8,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
    _descriptor.EnumValueDescriptor(
      name='CUSTOM', index=9, number=9,
      serialized_options=None,
      type=None,
      create_key=_descriptor._internal_create_key),
  ],
  containing_type=None,
  serialized_options=None,
  serialized_start=2686,
  serialized_end=2826,
)
_sym_db.RegisterEnumDescriptor(_STRUCTUREMARKER_STRUCTURETYPE)


_NOTE = _descriptor.Descriptor(
  name='Note',
  full_name='song.Note',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='pitch', full_name='song.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='velocity', full_name='song.Note.velocity', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='start_tick', full_name='song.Note.start_tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='start_time', full_name='song.Note.start_time', index=3,
      number=4, type=2, cpp_type=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='end_tick', full_name='song.Note.end_tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='end_time', full_name='song.Note.end_time', index=5,
      number=6, type=2, cpp_type=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='id', full_name='song.Note.id', index=6,
      number=7, type=13, cpp_type=3, label=1,
      has_default_value=False, default_value=0,
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=20,
  serialized_end=147,
)


_TEMPOEVENT = _descriptor.Descriptor(
  name='TempoEvent',
  full_name='song.TempoEvent',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='ticks', full_name='song.TempoEvent.ticks', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='bpm', full_name='song.TempoEvent.bpm', index=1,
      number=2, type=2, cpp_type=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='time', full_name='song.TempoEvent.time', index=2,
      number=3, type=2, cpp_type=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=149,
  serialized_end=203,
)


_TIMESIGNATUREEVENT = _descriptor.Descriptor(
  name='TimeSignatureEvent',
  full_name='song.TimeSignatureEvent',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='ticks', full_name='song.TimeSignatureEvent.ticks', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='numerator', full_name='song.TimeSignatureEvent.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='denominator', full_name='song.TimeSignatureEvent.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=205,
  serialized_end=280,
)


_INSTRUMENTINFO = _descriptor.Descriptor(
  name='InstrumentInfo',
  full_name='song.InstrumentInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='program', full_name='song.InstrumentInfo.program', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='is_drum', full_name='song.InstrumentInfo.is_drum', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=282,
  serialized_end=332,
)


_AUDIOPLUGININFO = _descriptor.Descriptor(
  name='AudioPluginInfo',
  full_name='song.AudioPluginInfo',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='tf_id', full_name='song.AudioPluginInfo.tf_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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='is_enabled', full_name='song.AudioPluginInfo.is_enabled', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='local_instance_id', full_name='song.AudioPluginInfo.local_instance_id', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='base64_states', full_name='song.AudioPluginInfo.base64_states', index=3,
      number=4, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=334,
  serialized_end=436,
)


_AUTOMATIONTARGET = _descriptor.Descriptor(
  name='AutomationTarget',
  full_name='song.AutomationTarget',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='song.AutomationTarget.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='audio_plugin_id', full_name='song.AutomationTarget.audio_plugin_id', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='param_id', full_name='song.AutomationTarget.param_id', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _AUTOMATIONTARGET_TARGETTYPE,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=439,
  serialized_end=617,
)


_AUTOMATIONVALUE_PARAMVALUE = _descriptor.Descriptor(
  name='ParamValue',
  full_name='song.AutomationValue.ParamValue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='tick', full_name='song.AutomationValue.ParamValue.tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='value', full_name='song.AutomationValue.ParamValue.value', index=1,
      number=2, type=2, cpp_type=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='id', full_name='song.AutomationValue.ParamValue.id', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=707,
  serialized_end=760,
)

_AUTOMATIONVALUE = _descriptor.Descriptor(
  name='AutomationValue',
  full_name='song.AutomationValue',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='points', full_name='song.AutomationValue.points', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='disabled', full_name='song.AutomationValue.disabled', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_AUTOMATIONVALUE_PARAMVALUE, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=620,
  serialized_end=760,
)


_AUTOMATIONDATA_TARGETVALUESENTRY = _descriptor.Descriptor(
  name='TargetValuesEntry',
  full_name='song.AutomationData.TargetValuesEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='song.AutomationData.TargetValuesEntry.key', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='value', full_name='song.AutomationData.TargetValuesEntry.value', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'8\001',
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=885,
  serialized_end=959,
)

_AUTOMATIONDATA = _descriptor.Descriptor(
  name='AutomationData',
  full_name='song.AutomationData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='targets', full_name='song.AutomationData.targets', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='target_values', full_name='song.AutomationData.target_values', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_AUTOMATIONDATA_TARGETVALUESENTRY, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=763,
  serialized_end=959,
)


_TRACKSEND = _descriptor.Descriptor(
  name='TrackSend',
  full_name='song.TrackSend',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='output_bus_rank', full_name='song.TrackSend.output_bus_rank', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='gain_level', full_name='song.TrackSend.gain_level', index=1,
      number=2, type=2, cpp_type=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='position', full_name='song.TrackSend.position', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='muted', full_name='song.TrackSend.muted', index=3,
      number=4, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _TRACKSEND_TRACKSENDPOSITION,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=962,
  serialized_end=1201,
)


_TRACKOUTPUT = _descriptor.Descriptor(
  name='TrackOutput',
  full_name='song.TrackOutput',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='type', full_name='song.TrackOutput.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='track_id', full_name='song.TrackOutput.track_id', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='device_name', full_name='song.TrackOutput.device_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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _TRACKOUTPUT_TRACKOUTPUTTYPE,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1204,
  serialized_end=1406,
)


_AUXTRACKDATA = _descriptor.Descriptor(
  name='AuxTrackData',
  full_name='song.AuxTrackData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='input_bus_rank', full_name='song.AuxTrackData.input_bus_rank', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1408,
  serialized_end=1446,
)


_TRACK_AUDIOPLUGINENTRY = _descriptor.Descriptor(
  name='AudioPluginEntry',
  full_name='song.Track.AudioPluginEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='song.Track.AudioPluginEntry.key', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='value', full_name='song.Track.AudioPluginEntry.value', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'8\001',
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2051,
  serialized_end=2124,
)

_TRACK_SENDSENTRY = _descriptor.Descriptor(
  name='SendsEntry',
  full_name='song.Track.SendsEntry',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='key', full_name='song.Track.SendsEntry.key', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='value', full_name='song.Track.SendsEntry.value', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=b'8\001',
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2126,
  serialized_end=2187,
)

_TRACK = _descriptor.Descriptor(
  name='Track',
  full_name='song.Track',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='instrument', full_name='song.Track.instrument', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='notes', full_name='song.Track.notes', index=1,
      number=2, 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,
      serialized_options=b'\030\001', file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='suggested_instruments', full_name='song.Track.suggested_instruments', index=2,
      number=3, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='uuid', full_name='song.Track.uuid', index=3,
      number=4, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='volume', full_name='song.Track.volume', index=4,
      number=5, type=2, cpp_type=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='solo', full_name='song.Track.solo', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='muted', full_name='song.Track.muted', index=6,
      number=7, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='rank', full_name='song.Track.rank', index=7,
      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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='track_start_tick', full_name='song.Track.track_start_tick', index=8,
      number=9, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='track_end_tick', full_name='song.Track.track_end_tick', index=9,
      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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='sampler_plugin', full_name='song.Track.sampler_plugin', index=10,
      number=11, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='audio_plugin', full_name='song.Track.audio_plugin', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='clips', full_name='song.Track.clips', index=12,
      number=13, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='pan', full_name='song.Track.pan', index=13,
      number=14, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='name', full_name='song.Track.name', index=14,
      number=15, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='automation', full_name='song.Track.automation', index=15,
      number=16, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='type', full_name='song.Track.type', index=16,
      number=17, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='aux_track_data', full_name='song.Track.aux_track_data', index=17,
      number=18, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='sends', full_name='song.Track.sends', index=18,
      number=19, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='output', full_name='song.Track.output', index=19,
      number=20, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_TRACK_AUDIOPLUGINENTRY, _TRACK_SENDSENTRY, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=1449,
  serialized_end=2187,
)


_AUDIODATA = _descriptor.Descriptor(
  name='AudioData',
  full_name='song.AudioData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='data', full_name='song.AudioData.data', index=0,
      number=1, type=12, cpp_type=9, label=1,
      has_default_value=False, default_value=b"",
      message_type=None, enum_type=None, containing_type=None,
      is_extension=False, extension_scope=None,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='format', full_name='song.AudioData.format', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2189,
  serialized_end=2230,
)


_AUDIOCLIPDATA = _descriptor.Descriptor(
  name='AudioClipData',
  full_name='song.AudioClipData',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='audio_file_path', full_name='song.AudioClipData.audio_file_path', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='start_tick', full_name='song.AudioClipData.start_tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='duration', full_name='song.AudioClipData.duration', index=2,
      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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='audio_data', full_name='song.AudioClipData.audio_data', index=3,
      number=4, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='speed_ratio', full_name='song.AudioClipData.speed_ratio', index=4,
      number=5, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='pitch_offset', full_name='song.AudioClipData.pitch_offset', index=5,
      number=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2233,
  serialized_end=2391,
)


_CLIP = _descriptor.Descriptor(
  name='Clip',
  full_name='song.Clip',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='id', full_name='song.Clip.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='clip_start_tick', full_name='song.Clip.clip_start_tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='clip_end_tick', full_name='song.Clip.clip_end_tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='notes', full_name='song.Clip.notes', index=3,
      number=4, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='name', full_name='song.Clip.name', index=4,
      number=5, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='type', full_name='song.Clip.type', index=5,
      number=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='audio_clip_data', full_name='song.Clip.audio_clip_data', index=6,
      number=7, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2394,
  serialized_end=2577,
)


_STRUCTUREMARKER = _descriptor.Descriptor(
  name='StructureMarker',
  full_name='song.StructureMarker',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='tick', full_name='song.StructureMarker.tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='type', full_name='song.StructureMarker.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='custom_name', full_name='song.StructureMarker.custom_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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
    _STRUCTUREMARKER_STRUCTURETYPE,
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2580,
  serialized_end=2826,
)


_BUS = _descriptor.Descriptor(
  name='Bus',
  full_name='song.Bus',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='rank', full_name='song.Bus.rank', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='name', full_name='song.Bus.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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2828,
  serialized_end=2861,
)


_SONG = _descriptor.Descriptor(
  name='Song',
  full_name='song.Song',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='PPQ', full_name='song.Song.PPQ', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='tempos', full_name='song.Song.tempos', index=1,
      number=2, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='time_signatures', full_name='song.Song.time_signatures', index=2,
      number=3, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='last_tick', full_name='song.Song.last_tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='duration', full_name='song.Song.duration', index=4,
      number=5, type=2, cpp_type=6, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='tracks', full_name='song.Song.tracks', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='master_track', full_name='song.Song.master_track', index=6,
      number=7, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='structures', full_name='song.Song.structures', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='buses', full_name='song.Song.buses', index=8,
      number=9, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='lyrics', full_name='song.Song.lyrics', index=9,
      number=10, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=2864,
  serialized_end=3168,
)


_LYRICS = _descriptor.Descriptor(
  name='Lyrics',
  full_name='song.Lyrics',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='lines', full_name='song.Lyrics.lines', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3170,
  serialized_end=3210,
)


_LYRICLINE_LYRICWORD = _descriptor.Descriptor(
  name='LyricWord',
  full_name='song.LyricLine.LyricWord',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='start_tick', full_name='song.LyricLine.LyricWord.start_tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='end_tick', full_name='song.LyricLine.LyricWord.end_tick', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
    _descriptor.FieldDescriptor(
      name='word', full_name='song.LyricLine.LyricWord.word', 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3267,
  serialized_end=3330,
)

_LYRICLINE = _descriptor.Descriptor(
  name='LyricLine',
  full_name='song.LyricLine',
  filename=None,
  file=DESCRIPTOR,
  containing_type=None,
  create_key=_descriptor._internal_create_key,
  fields=[
    _descriptor.FieldDescriptor(
      name='words', full_name='song.LyricLine.words', index=0,
      number=1, 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,
      serialized_options=None, file=DESCRIPTOR,  create_key=_descriptor._internal_create_key),
  ],
  extensions=[
  ],
  nested_types=[_LYRICLINE_LYRICWORD, ],
  enum_types=[
  ],
  serialized_options=None,
  is_extendable=False,
  syntax='proto2',
  extension_ranges=[],
  oneofs=[
  ],
  serialized_start=3212,
  serialized_end=3330,
)

_AUTOMATIONTARGET.fields_by_name['type'].enum_type = _AUTOMATIONTARGET_TARGETTYPE
_AUTOMATIONTARGET_TARGETTYPE.containing_type = _AUTOMATIONTARGET
_AUTOMATIONVALUE_PARAMVALUE.containing_type = _AUTOMATIONVALUE
_AUTOMATIONVALUE.fields_by_name['points'].message_type = _AUTOMATIONVALUE_PARAMVALUE
_AUTOMATIONDATA_TARGETVALUESENTRY.fields_by_name['value'].message_type = _AUTOMATIONVALUE
_AUTOMATIONDATA_TARGETVALUESENTRY.containing_type = _AUTOMATIONDATA
_AUTOMATIONDATA.fields_by_name['targets'].message_type = _AUTOMATIONTARGET
_AUTOMATIONDATA.fields_by_name['target_values'].message_type = _AUTOMATIONDATA_TARGETVALUESENTRY
_TRACKSEND.fields_by_name['position'].enum_type = _TRACKSEND_TRACKSENDPOSITION
_TRACKSEND_TRACKSENDPOSITION.containing_type = _TRACKSEND
_TRACKOUTPUT.fields_by_name['type'].enum_type = _TRACKOUTPUT_TRACKOUTPUTTYPE
_TRACKOUTPUT_TRACKOUTPUTTYPE.containing_type = _TRACKOUTPUT
_TRACK_AUDIOPLUGINENTRY.fields_by_name['value'].message_type = _AUDIOPLUGININFO
_TRACK_AUDIOPLUGINENTRY.containing_type = _TRACK
_TRACK_SENDSENTRY.fields_by_name['value'].message_type = _TRACKSEND
_TRACK_SENDSENTRY.containing_type = _TRACK
_TRACK.fields_by_name['instrument'].message_type = _INSTRUMENTINFO
_TRACK.fields_by_name['notes'].message_type = _NOTE
_TRACK.fields_by_name['suggested_instruments'].message_type = _INSTRUMENTINFO
_TRACK.fields_by_name['sampler_plugin'].message_type = _AUDIOPLUGININFO
_TRACK.fields_by_name['audio_plugin'].message_type = _TRACK_AUDIOPLUGINENTRY
_TRACK.fields_by_name['clips'].message_type = _CLIP
_TRACK.fields_by_name['automation'].message_type = _AUTOMATIONDATA
_TRACK.fields_by_name['type'].enum_type = _TRACKTYPE
_TRACK.fields_by_name['aux_track_data'].message_type = _AUXTRACKDATA
_TRACK.fields_by_name['sends'].message_type = _TRACK_SENDSENTRY
_TRACK.fields_by_name['output'].message_type = _TRACKOUTPUT
_AUDIOCLIPDATA.fields_by_name['audio_data'].message_type = _AUDIODATA
_CLIP.fields_by_name['notes'].message_type = _NOTE
_CLIP.fields_by_name['type'].enum_type = _CLIPTYPE
_CLIP.fields_by_name['audio_clip_data'].message_type = _AUDIOCLIPDATA
_STRUCTUREMARKER.fields_by_name['type'].enum_type = _STRUCTUREMARKER_STRUCTURETYPE
_STRUCTUREMARKER_STRUCTURETYPE.containing_type = _STRUCTUREMARKER
_SONG.fields_by_name['tempos'].message_type = _TEMPOEVENT
_SONG.fields_by_name['time_signatures'].message_type = _TIMESIGNATUREEVENT
_SONG.fields_by_name['tracks'].message_type = _TRACK
_SONG.fields_by_name['master_track'].message_type = _TRACK
_SONG.fields_by_name['structures'].message_type = _STRUCTUREMARKER
_SONG.fields_by_name['buses'].message_type = _BUS
_SONG.fields_by_name['lyrics'].message_type = _LYRICS
_LYRICS.fields_by_name['lines'].message_type = _LYRICLINE
_LYRICLINE_LYRICWORD.containing_type = _LYRICLINE
_LYRICLINE.fields_by_name['words'].message_type = _LYRICLINE_LYRICWORD
DESCRIPTOR.message_types_by_name['Note'] = _NOTE
DESCRIPTOR.message_types_by_name['TempoEvent'] = _TEMPOEVENT
DESCRIPTOR.message_types_by_name['TimeSignatureEvent'] = _TIMESIGNATUREEVENT
DESCRIPTOR.message_types_by_name['InstrumentInfo'] = _INSTRUMENTINFO
DESCRIPTOR.message_types_by_name['AudioPluginInfo'] = _AUDIOPLUGININFO
DESCRIPTOR.message_types_by_name['AutomationTarget'] = _AUTOMATIONTARGET
DESCRIPTOR.message_types_by_name['AutomationValue'] = _AUTOMATIONVALUE
DESCRIPTOR.message_types_by_name['AutomationData'] = _AUTOMATIONDATA
DESCRIPTOR.message_types_by_name['TrackSend'] = _TRACKSEND
DESCRIPTOR.message_types_by_name['TrackOutput'] = _TRACKOUTPUT
DESCRIPTOR.message_types_by_name['AuxTrackData'] = _AUXTRACKDATA
DESCRIPTOR.message_types_by_name['Track'] = _TRACK
DESCRIPTOR.message_types_by_name['AudioData'] = _AUDIODATA
DESCRIPTOR.message_types_by_name['AudioClipData'] = _AUDIOCLIPDATA
DESCRIPTOR.message_types_by_name['Clip'] = _CLIP
DESCRIPTOR.message_types_by_name['StructureMarker'] = _STRUCTUREMARKER
DESCRIPTOR.message_types_by_name['Bus'] = _BUS
DESCRIPTOR.message_types_by_name['Song'] = _SONG
DESCRIPTOR.message_types_by_name['Lyrics'] = _LYRICS
DESCRIPTOR.message_types_by_name['LyricLine'] = _LYRICLINE
DESCRIPTOR.enum_types_by_name['TrackType'] = _TRACKTYPE
DESCRIPTOR.enum_types_by_name['ClipType'] = _CLIPTYPE
_sym_db.RegisterFileDescriptor(DESCRIPTOR)

Note = _reflection.GeneratedProtocolMessageType('Note', (_message.Message,), {
  'DESCRIPTOR' : _NOTE,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.Note)
  })
_sym_db.RegisterMessage(Note)

TempoEvent = _reflection.GeneratedProtocolMessageType('TempoEvent', (_message.Message,), {
  'DESCRIPTOR' : _TEMPOEVENT,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.TempoEvent)
  })
_sym_db.RegisterMessage(TempoEvent)

TimeSignatureEvent = _reflection.GeneratedProtocolMessageType('TimeSignatureEvent', (_message.Message,), {
  'DESCRIPTOR' : _TIMESIGNATUREEVENT,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.TimeSignatureEvent)
  })
_sym_db.RegisterMessage(TimeSignatureEvent)

InstrumentInfo = _reflection.GeneratedProtocolMessageType('InstrumentInfo', (_message.Message,), {
  'DESCRIPTOR' : _INSTRUMENTINFO,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.InstrumentInfo)
  })
_sym_db.RegisterMessage(InstrumentInfo)

AudioPluginInfo = _reflection.GeneratedProtocolMessageType('AudioPluginInfo', (_message.Message,), {
  'DESCRIPTOR' : _AUDIOPLUGININFO,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.AudioPluginInfo)
  })
_sym_db.RegisterMessage(AudioPluginInfo)

AutomationTarget = _reflection.GeneratedProtocolMessageType('AutomationTarget', (_message.Message,), {
  'DESCRIPTOR' : _AUTOMATIONTARGET,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.AutomationTarget)
  })
_sym_db.RegisterMessage(AutomationTarget)

AutomationValue = _reflection.GeneratedProtocolMessageType('AutomationValue', (_message.Message,), {

  'ParamValue' : _reflection.GeneratedProtocolMessageType('ParamValue', (_message.Message,), {
    'DESCRIPTOR' : _AUTOMATIONVALUE_PARAMVALUE,
    '__module__' : 'song_pb2'
    # @@protoc_insertion_point(class_scope:song.AutomationValue.ParamValue)
    })
  ,
  'DESCRIPTOR' : _AUTOMATIONVALUE,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.AutomationValue)
  })
_sym_db.RegisterMessage(AutomationValue)
_sym_db.RegisterMessage(AutomationValue.ParamValue)

AutomationData = _reflection.GeneratedProtocolMessageType('AutomationData', (_message.Message,), {

  'TargetValuesEntry' : _reflection.GeneratedProtocolMessageType('TargetValuesEntry', (_message.Message,), {
    'DESCRIPTOR' : _AUTOMATIONDATA_TARGETVALUESENTRY,
    '__module__' : 'song_pb2'
    # @@protoc_insertion_point(class_scope:song.AutomationData.TargetValuesEntry)
    })
  ,
  'DESCRIPTOR' : _AUTOMATIONDATA,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.AutomationData)
  })
_sym_db.RegisterMessage(AutomationData)
_sym_db.RegisterMessage(AutomationData.TargetValuesEntry)

TrackSend = _reflection.GeneratedProtocolMessageType('TrackSend', (_message.Message,), {
  'DESCRIPTOR' : _TRACKSEND,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.TrackSend)
  })
_sym_db.RegisterMessage(TrackSend)

TrackOutput = _reflection.GeneratedProtocolMessageType('TrackOutput', (_message.Message,), {
  'DESCRIPTOR' : _TRACKOUTPUT,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.TrackOutput)
  })
_sym_db.RegisterMessage(TrackOutput)

AuxTrackData = _reflection.GeneratedProtocolMessageType('AuxTrackData', (_message.Message,), {
  'DESCRIPTOR' : _AUXTRACKDATA,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.AuxTrackData)
  })
_sym_db.RegisterMessage(AuxTrackData)

Track = _reflection.GeneratedProtocolMessageType('Track', (_message.Message,), {

  'AudioPluginEntry' : _reflection.GeneratedProtocolMessageType('AudioPluginEntry', (_message.Message,), {
    'DESCRIPTOR' : _TRACK_AUDIOPLUGINENTRY,
    '__module__' : 'song_pb2'
    # @@protoc_insertion_point(class_scope:song.Track.AudioPluginEntry)
    })
  ,

  'SendsEntry' : _reflection.GeneratedProtocolMessageType('SendsEntry', (_message.Message,), {
    'DESCRIPTOR' : _TRACK_SENDSENTRY,
    '__module__' : 'song_pb2'
    # @@protoc_insertion_point(class_scope:song.Track.SendsEntry)
    })
  ,
  'DESCRIPTOR' : _TRACK,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.Track)
  })
_sym_db.RegisterMessage(Track)
_sym_db.RegisterMessage(Track.AudioPluginEntry)
_sym_db.RegisterMessage(Track.SendsEntry)

AudioData = _reflection.GeneratedProtocolMessageType('AudioData', (_message.Message,), {
  'DESCRIPTOR' : _AUDIODATA,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.AudioData)
  })
_sym_db.RegisterMessage(AudioData)

AudioClipData = _reflection.GeneratedProtocolMessageType('AudioClipData', (_message.Message,), {
  'DESCRIPTOR' : _AUDIOCLIPDATA,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.AudioClipData)
  })
_sym_db.RegisterMessage(AudioClipData)

Clip = _reflection.GeneratedProtocolMessageType('Clip', (_message.Message,), {
  'DESCRIPTOR' : _CLIP,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.Clip)
  })
_sym_db.RegisterMessage(Clip)

StructureMarker = _reflection.GeneratedProtocolMessageType('StructureMarker', (_message.Message,), {
  'DESCRIPTOR' : _STRUCTUREMARKER,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.StructureMarker)
  })
_sym_db.RegisterMessage(StructureMarker)

Bus = _reflection.GeneratedProtocolMessageType('Bus', (_message.Message,), {
  'DESCRIPTOR' : _BUS,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.Bus)
  })
_sym_db.RegisterMessage(Bus)

Song = _reflection.GeneratedProtocolMessageType('Song', (_message.Message,), {
  'DESCRIPTOR' : _SONG,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.Song)
  })
_sym_db.RegisterMessage(Song)

Lyrics = _reflection.GeneratedProtocolMessageType('Lyrics', (_message.Message,), {
  'DESCRIPTOR' : _LYRICS,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.Lyrics)
  })
_sym_db.RegisterMessage(Lyrics)

LyricLine = _reflection.GeneratedProtocolMessageType('LyricLine', (_message.Message,), {

  'LyricWord' : _reflection.GeneratedProtocolMessageType('LyricWord', (_message.Message,), {
    'DESCRIPTOR' : _LYRICLINE_LYRICWORD,
    '__module__' : 'song_pb2'
    # @@protoc_insertion_point(class_scope:song.LyricLine.LyricWord)
    })
  ,
  'DESCRIPTOR' : _LYRICLINE,
  '__module__' : 'song_pb2'
  # @@protoc_insertion_point(class_scope:song.LyricLine)
  })
_sym_db.RegisterMessage(LyricLine)
_sym_db.RegisterMessage(LyricLine.LyricWord)


_AUTOMATIONDATA_TARGETVALUESENTRY._options = None
_TRACK_AUDIOPLUGINENTRY._options = None
_TRACK_SENDSENTRY._options = None
_TRACK.fields_by_name['notes']._options = None
# @@protoc_insertion_point(module_scope)
