Index: sample_scripts/ammos_viewer.py
===================================================================
--- sample_scripts/ammos_viewer.py	(revision bcacddcf4241b42aa64dd6651ee1f08d0254d9d2)
+++ sample_scripts/ammos_viewer.py	(revision 577ce87d7c43b5ec174ce7a8ae84ef5246c52001)
@@ -4,4 +4,6 @@
 from PIL import Image, ImageTk
 from random import randbytes
+
+from ammosreader.AmmosAudioReader import AmmosAudioReader
 
 class MainApplication(tk.Frame):
@@ -14,8 +16,10 @@
         self.parent = parent
         self.file_name = "../sample_data/audio_data_sample.bin"
+        self.ammos_container = AmmosAudioReader(self.file_name).read_all_frames_left()
         self.file = open(self.file_name, 'rb')
-        self.bytes = self.file.read(2116*50)
-        self.cycle = 2116
+        self.bytes = self.file.read(-1)
+        self.cycle = self.ammos_container.unique_frame_sizes()[0]
         self.cache = 500000000
+        self.canvas_size = (800, 600)
         self.offset = 0
         self.buildup()
@@ -28,14 +32,18 @@
         image_frame = tk.Frame(self)
         image_frame.pack(side=tk.LEFT)
-        self.canvas = tk.Canvas(image_frame, bg="#000000", width=self.cycle, height=600)
+        self.canvas = tk.Canvas(image_frame, bg="#000000", width=self.canvas_size[0], height=self.canvas_size[1])
         self.canvas.pack()
-        random_bytes = randbytes(480000)
-        if len(self.bytes) < 480000:
-            random_bytes = self.bytes[self.offset:] + bytearray([0xff] * (480000-len(self.bytes)-self.offset))
-        self.image = ImageTk.PhotoImage(Image.frombytes("L", (self.cycle, int(len(random_bytes) / self.cycle)), random_bytes))
-        # self.image.show()
+        # display_size = self.canvas_size[0] * self.canvas_size[1]
+        # bytes_to_display = randbytes(display_size)
+        # if len(self.bytes) < display_size:
+        #    bytes_to_display = self.bytes[self.offset:] + bytearray([0xff] * (display_size-len(self.bytes)-self.offset))
+        current_bytes = b"".join([self.bytes[each: each+self.canvas_size[0]] for each in range(0, len(self.bytes),
+                                                                                               self.cycle)])
+        print("Bytes size", len(current_bytes))
+        pil_image = Image.frombytes("L", self.canvas_size, current_bytes)
+        self.image = ImageTk.PhotoImage(pil_image)
+        # pil_image.show()
         button_frame = tk.Frame(self)
         self.canvas.create_image(0, 0, anchor='nw', image=self.image)
-        # image_label. = self.image
         button_frame.pack(side="right")
 
