Esempio n. 1
0
 def format_datagram(cls, datagram):
     result = []
     result.append('size {}'.format(len(datagram)))
     index = 0
     while index < len(datagram):
         chunk = datagram[index:index + 16]
         line = '{: >4}   '.format(index)
         hex_blocks = []
         ascii_block = ''
         for chunk in utils.group_iterable_by_count(chunk, 4):
             hex_block = []
             for byte in chunk:
                 char = int(byte)
                 if 31 < char < 127:
                     char = chr(char)
                 else:
                     char = '.'
                 ascii_block += char
                 hexed = hex(byte)[2:].zfill(2)
                 hex_block.append(hexed)
             hex_block = ' '.join(hex_block)
             hex_blocks.append(hex_block)
         hex_blocks = '  '.join(hex_blocks)
         ascii_block = '|{}|'.format(ascii_block)
         hex_blocks = '{: <53}'.format(hex_blocks)
         line += hex_blocks
         line += ascii_block
         result.append(line)
         index += 16
     result = '\n'.join(result)
     return result
def format_datagram(datagram):
    result = []
    result.append("size {}".format(len(datagram)))
    index = 0
    while index < len(datagram):
        chunk = datagram[index : index + 16]
        line = "{: >4}   ".format(index)
        hex_blocks = []
        ascii_block = ""
        for chunk in utils.group_iterable_by_count(chunk, 4):
            hex_block = []
            for byte in chunk:
                char = int(byte)
                if 31 < char < 127:
                    char = chr(char)
                else:
                    char = "."
                ascii_block += char
                hexed = hex(byte)[2:].zfill(2)
                hex_block.append(hexed)
            hex_block = " ".join(hex_block)
            hex_blocks.append(hex_block)
        hex_blocks = "  ".join(hex_blocks)
        ascii_block = "|{}|".format(ascii_block)
        hex_blocks = "{: <53}".format(hex_blocks)
        line += hex_blocks
        line += ascii_block
        result.append(line)
        index += 16
    result = "\n".join(result)
    return result
Esempio n. 3
0
 def _handle_input_levels(self, message):
     contents = message.contents[2:]
     peak_levels = []
     rms_levels = []
     for peak, rms in utils.group_iterable_by_count(contents, 2):
         peak_levels.append(peak)
         rms_levels.append(rms)
     self._input_meter_peak_levels = tuple(peak_levels)
     self._input_meter_rms_levels = tuple(rms_levels)
Esempio n. 4
0
 def _handle_output_levels(self, message):
     contents = message.contents[2:]
     peak_levels = []
     rms_levels = []
     for peak, rms in utils.group_iterable_by_count(contents, 2):
         peak_levels.append(peak)
         rms_levels.append(rms)
     self._output_meter_peak_levels = tuple(peak_levels)
     self._output_meter_rms_levels = tuple(rms_levels)
     supriya.system.PubSub.notify(
         "server-meters",
         {
             "input_meter_peak_levels": self._input_meter_peak_levels,
             "input_meter_rms_levels": self._input_meter_rms_levels,
             "output_meter_peak_levels": self._output_meter_peak_levels,
             "output_meter_rms_levels": self._output_meter_rms_levels,
         },
     )
Esempio n. 5
0
    def new(cls, sources):
        import supriya.synthdefs
        import supriya.ugens

        sources = cls._flatten_sources(sources)
        summed_sources = []
        for part in utils.group_iterable_by_count(sources, 4):
            if len(part) == 4:
                summed_sources.append(supriya.ugens.Sum4(*part))
            elif len(part) == 3:
                summed_sources.append(supriya.ugens.Sum3(*part))
            elif len(part) == 2:
                summed_sources.append(part[0] + part[1])
            else:
                summed_sources.append(part[0])
        if len(summed_sources) == 1:
            return summed_sources[0]
        return Mix.new(summed_sources)
Esempio n. 6
0
    def new(cls, sources):
        import supriya.synthdefs
        import supriya.ugens

        sources = cls._flatten_sources(sources)
        summed_sources = []
        for part in utils.group_iterable_by_count(sources, 4):
            if len(part) == 4:
                summed_sources.append(supriya.ugens.Sum4(*part))
            elif len(part) == 3:
                summed_sources.append(supriya.ugens.Sum3(*part))
            elif len(part) == 2:
                summed_sources.append(part[0] + part[1])
            else:
                summed_sources.append(part[0])
        if len(summed_sources) == 1:
            return summed_sources[0]
        return Mix.new(summed_sources)
Esempio n. 7
0
 def new(cls, sources):
     import supriya.synthdefs
     import supriya.ugens
     flattened_sources = []
     for source in sources:
         if isinstance(source, supriya.synthdefs.UGenArray):
             flattened_sources.extend(source)
         else:
             flattened_sources.append(source)
     sources = supriya.synthdefs.UGenArray(flattened_sources)
     summed_sources = []
     for part in utils.group_iterable_by_count(sources, 4):
         if len(part) == 4:
             summed_sources.append(supriya.ugens.Sum4(*part))
         elif len(part) == 3:
             summed_sources.append(supriya.ugens.Sum3(*part))
         elif len(part) == 2:
             summed_sources.append(part[0] + part[1])
         else:
             summed_sources.append(part[0])
     if len(summed_sources) == 1:
         return summed_sources[0]
     return Mix.new(summed_sources)