Changeset d2f9280 in ammosreader for sample_scripts/ammos_viewer.py


Ignore:
Timestamp:
07/04/22 11:14:06 (3 years ago)
Author:
Enrico Schwass <ennoausberlin@…>
Branches:
AmmosSource, guix
Children:
0033a40
Parents:
09b290d
Message:

use bitstring to allow offsets other then modulo 8

File:
1 edited

Legend:

Unmodified
Added
Removed
  • sample_scripts/ammos_viewer.py

    r09b290d rd2f9280  
    44from PIL import Image, ImageTk
    55from random import randbytes
     6import bitstring
    67
    78from ammosreader.AmmosAudioReader import AmmosAudioReader
     9
    810
    911class MainApplication(tk.Frame):
     
    7476
    7577    def current_bytes(self):
    76         return b"".join([self.bytes[each: each+self.canvas_size[0]] for each in range(self.offset.get(),
    77                                                                                       len(self.bytes),
    78                                                                                       self.cycle.get())])
     78        if self.offset.get() % 8 == 0:
     79            return b"".join([self.bytes[each: each+self.canvas_size[0]] for each in range(self.offset.get(),
     80                                                                                          len(self.bytes),
     81                                                                                          self.cycle.get())])
     82        bits = bitstring.BitArray(self.bytes)
     83        return (bits << self.offset.get()).tobytes()
     84
    7985    def update_canvas(self):
    8086        self.image = ImageTk.PhotoImage(Image.frombytes("L", self.canvas_size, self.current_bytes()))
Note: See TracChangeset for help on using the changeset viewer.