jareff-g / ALT-Scann8

ALT-Scann8 repository, alternative scanning app for use with T-Scann 8 film scanner, designed by Torulf Holmström
MIT License
2 stars 1 forks source link

Problem when using 'manual scan' saving in PNG format #152

Open jareff-g opened 2 months ago

jareff-g commented 2 months ago

Describe the bug Issue happens when using 'manual scan' to saving frames in PNG format. First snapshot is saved OK, but when clicking a second time in the 'Snap' button ALT-Scann8 freezes.

To Reproduce Steps to reproduce the behavior:

  1. Start ALT-Scann8 1.10.59 (could happen with earlier versions)
  2. In 'Damaged film' area, click on checkbix 'Enable manual scan'
  3. Click on 'Settings' button, select 'Type' field as 'PNG'
  4. Click on OK to dismiss the settings popup
  5. Click on 'Snap' button: 1st image is casptured
  6. Click on 'Snap' button a second time, ALT-Scann8 hangs

Expected behavior Should be able to click on 'Snap' button any number of times, each time a new frame must be captured and saved.

Screenshots NA

Desktop (please complete the following information): NA

Additional context ALT-Scann8 hangs after taking a second snapshot. Can only be stopped by pressing Ctrl-C in the terminal. This is the outpur after pressing Ctrl-C: 2024-08-12 12:32:19,408 [INFO] Saved <picamera2.request.Helpers object at 0x7fa8498af0> to file picture-14889.png. 2024-08-12 12:32:19,408 [INFO] Time taken for encode: 438.17914400005975 ms. ^CException in Tkinter callback Traceback (most recent call last): File "/usr/lib/python3.9/tkinter/init.py", line 1892, in call return self.func(*args) File "/home/juan/ALT-Scann8/ALT-Scann8-UserInterface.py", line 1293, in cmd_manual_scan_take_snap capture('manual') File "/home/juan/ALT-Scann8/ALT-Scann8-UserInterface.py", line 2098, in capture metadata = camera.capture_metadata() File "/usr/lib/python3/dist-packages/picamera2/picamera2.py", line 1322, in capture_metadata return self.dispatch_functions(functions, wait, signal_function) File "/usr/lib/python3/dist-packages/picamera2/picamera2.py", line 1203, in dispatch_functions return job.get_result() if wait else job File "/usr/lib/python3/dist-packages/picamera2/job.py", line 77, in get_result return self._future.result() File "/usr/lib/python3.9/concurrent/futures/_base.py", line 435, in result self._condition.wait(timeout) File "/usr/lib/python3.9/threading.py", line 312, in wait waiter.acquire() KeyboardInterrupt

jareff-g commented 2 months ago

Workaround: Start ALT-Scann8 with multi-threading disabled (usign '-t' command line parameter): ALT-Scann8-UserInterface.py -t