class_docstr: Stores a configuration for a Performance RNN.
  
  Attributes:
    num_velocity_bins: Number of velocity bins to use. If 0, don't use velocity
        at all.
    control_signals: List of PerformanceControlSignal objects to use for
        conditioning, or None if not conditioning on anything.
    optional_conditioning: If True, conditioning can be disabled by setting a
        flag as part of the conditioning input.
code: def __init__(
      self,
      details,
      encoder_decoder,
      hparams,
      num_velocity_bins=0,
      control_signals=None,
      optional_conditioning=False,
      note_performance=False,
  ):
      if control_signals is not None:
          control_encoder = note_seq.MultipleEventSequenceEncoder(
              [control.encoder for control in control_signals]
          )
          if optional_conditioning:
              control_encoder = note_seq.OptionalEventSequenceEncoder(
                  control_encoder
              )
          encoder_decoder = (
              note_seq.ConditionalEventSequenceEncoderDecoder(
                  control_encoder, encoder_decoder
              )
          )
  
      super(PerformanceRnnConfig, self).__init__(
          details, encoder_decoder, hparams
      )
      self.num_velocity_bins = num_velocity_bins
      self.control_signals = control_signals
      self.optional_conditioning = optional_conditioning
      self.note_performance = note_performance
  
file_path: magenta/magenta/models/performance_rnn/performance_model.py
imports: import collections
  import functools
  from magenta.contrib import training
  from magenta.models.shared import events_rnn_model
  import note_seq
  from note_seq.protobuf import generator_pb2
label_desc: Use image node_id 1 to create a new PerformanceRnnConfig object from inherited base classes: events_rnn_model with example: obj = PerformanceRnnConfig(details, encoder_decoder, hparams, num_velocity_bins, control_signals, optional_conditioning, note_performance)