docs: def new_result(self, data_mode='value', time_mode='framewise'):
          '''
          Create a new result
  
          Attributes
          ----------
          data_object : MetadataObject
          id_metadata : MetadataObject
          audio_metadata : MetadataObject
          frame_metadata : MetadataObject
          label_metadata : MetadataObject
          parameters : dict
  
          '''
  
          from datetime import datetime
  
          result = AnalyzerResult(data_mode=data_mode,
                                  time_mode=time_mode)
  
          # Automatically write known metadata
          result.id_metadata.date = datetime.now().replace(
              microsecond=0).isoformat(' ')
          result.id_metadata.version = timeside.core.__version__
          result.id_metadata.author = 'TimeSide'
          result.id_metadata.id = self.id()
          result.id_metadata.name = self.name()
          result.id_metadata.description = self.description()
          result.id_metadata.unit = self.unit()
          result.id_metadata.proc_uuid = self.uuid()
  
          result.audio_metadata.uri = self.mediainfo()['uri']
          result.audio_metadata.sha1 = self.mediainfo()['sha1']
          result.audio_metadata.start = self.mediainfo()['start']
          result.audio_metadata.duration = self.mediainfo()['duration']
          result.audio_metadata.is_segment = self.mediainfo()['is_segment']
          result.audio_metadata.channels = self.channels()
  
          result.parameters = Parameters(self.get_parameters())
  
          if time_mode == 'framewise':
              result.data_object.frame_metadata.samplerate = self.result_samplerate
              result.data_object.frame_metadata.blocksize = self.result_blocksize
              result.data_object.frame_metadata.stepsize = self.result_stepsize
  
          return result