def __parse_genre(self, atom, data): # Translate to a freeform genre. genre = cdata.short_be(data[16:18]) if b"\xa9gen" not in self: try: self[b"\xa9gen"] = [GENRES[genre - 1]] except IndexError: pass
def __parse_replaygain_packet(self, fileobj, data_size): data = fileobj.read(data_size) if data_size != 9: raise MusepackHeaderError("Invalid RG packet size.") if len(data) != data_size: raise MusepackHeaderError("RG packet ended unexpectedly.") title_gain = cdata.short_be(data[1:3]) title_peak = cdata.short_be(data[3:5]) album_gain = cdata.short_be(data[5:7]) album_peak = cdata.short_be(data[7:9]) if title_gain: self.title_gain = _calc_sv8_gain(title_gain) if title_peak: self.title_peak = _calc_sv8_peak(title_peak) if album_gain: self.album_gain = _calc_sv8_gain(album_gain) if album_peak: self.album_peak = _calc_sv8_peak(album_peak)