ALT‐Scann8: Description of user interface - jareff-g/ALT-Scann8 GitHub Wiki
Description of UI elements in ALT-Scann8
Main window
- Exit: Terminates application (current settings are saved on exit, so that they can be reloaded upon next start, to allow resuming work at the same point
- START Scan: Initiates the film scanning process
- Target Folder: Defines the folder where scanned frames will be stored
- New: Creates a new folder in user's home folder
- Existing: Selects an existing folder. After selecting the folder, you will be asked for the frame number where the scan process should start (in case the folder already contains frames scanned previously)
- Scanned frames: Displays the sequential number of the frame being scanned. It also displays:
- The number of frames scanned per minute, calculation based in the last 60 seconds
- The timestamp of the current frame since the start of the scan (basically converting the number of scanned frames to time, accounting for the film type)
- Frames to go: If you enter here the remaining number of frames, it will display the estimated remaining time to complete the scanning process for the current reel. Here you some figures with the average number of frames per reel depending on reel diameter and film type:
Reel diam. Frames 8mm Frames S8 7,6 cm 4150 3500 10,2 cm 8300 7000 13 cm 16600 14000 15 cm 24900 21000 18 cm 33200 28000 - Film type: Selects the type of film being scanned. R8 has bigger holes and smaller frames than S8 (details can be found in Wikipedia)
- RPi Temp.: Raspberry Pi's temperature
- Movie Forward: Advances the film, without scanning, while the film is routed via the film gate. Slightly faster than scanning in case some scene needs to be skipped. Real time display might be activated while the movie advances
- '<<' (Rewind): Rewinds the film, with the film routed via the upper path of T-Scann 8. ALT-Scann 8 will try to detect if film is still routed via the film gate, and block the operation in case it does. However, the detection mechanism is based in parameters that might vary for each scanner, so be ready to power down your scanner the first time you try this in case it doesn't work.
- '>>' (Fast Forward): Same as previous point, but advancing the film. Same warning.
- Negative film: Inverts the color of the captured image to allow handling negative film (untested with actual negative film, as I do not have any, not sure resulting images will look fine)
- Focus view: Activates PiCamera2 preview window. As stated in the readme of this project, preview mode of PiCamera 2 is not usable for scanning, however it is still a must to allow focusing the camera. Therefore it is only activated on demand via this button
- Zoom view: While real time display is activated, this button zooms the image in order to make the film grain more visible, to facilitate the focusing process.
- Zoom control: While zooming into the image, allows to select a specific area of the image when performing focus. Also zoom in and out of the image
- Auto Stop if: If selected, allows to automatically stop the scan process when one of two conditions are met:
- No film: When film is no longer detected at film gate
- Count zero: When the frames-to-go counter reaches zero
- Settings: Opens the settings window, where other non-critical options can be selected
- Avg time: Displays the average time (last 50 frames) spent in some scanning tasks:
- Save: Time spent saving frame
- Prvw: Time spent displaying preview image
- AWB: Time spent waiting for white balance to converge to automatic value
- AE: Time spent waiting for exposure to converge to automatic value
- Auto Exposure / White balance area
- Exposure: Clicking on this button toggles automatic exposure mode. When disabled, manual adjustment of exposure value of the camera is allowed.
- AWB Red/Blue: Same as for the exposure, double clicking on any of these two buttons allows to toggle automatic white balance mode. When disabled, values for the red and blue gains of the camera can be manually set.
- Match margin: This one affects both automatic exposure and automatic white balance. When set at 0%, no margin will be allowed, the process will wait until the camera has determined the correct value for AE or AWB. 100% will allow some margin (8000 um for exposure, 1 for WB) so that the scanning process will continue as soon as the camera exposure ow white balance value is within that margin. Intermediate values allow to balance the scanning speed vs AE/AWB accuracy.
- Match wait: Can be selected when the corresponding value is in automatic mode (green background button). When selected, the scanning process will wait until the camera sets the automatic exposure or white balance value (within the tolerance specified by 'Match margin field).
- AE Const. Mode (AeConstraintMode): Sets the constraint mode of the AEC/AGC algorithm
- Normal - normal metering
- Highlight - meter for highlights
- Shadows - meter for shadows
- AE Meter Mode (AeMeteringMode): Sets the metering mode of the AEC/AGC algorithm
- CentreWeighted - centre weighted metering
- Spot - spot metering
- Matrix - matrix metering
- AE ExposureMode (AeExposureMode): Sets the exposure mode of the AEC/AGC algorithm
- Normal - normal exposures
- Short - use shorter exposures
- Long - use longer exposures
- AWB Mode (AwbMode): Sets the mode of the AWB algorithm
- Auto - any illumant
- Tungsten - tungsten lighting
- Fluorescent - fluorescent lighting
- Indoor - indoor illumination
- Daylight - daylight illumination
- Cloudy - cloudy illumination
- Brightness/Contrast area
- Brightness: Adjusts the image brightness where -1.0 is very dark, 1.0 is very bright, and 0.0 is the default "normal" brightness.
- Contrast: Sets the contrast of the image, where zero means "no contrast", 1.0 is the default "normal" contrast, and larger values increase the contrast proportionately.
- Saturation: Amount of color saturation, where zero produces grey-scale images, 1.0 represents default "normal" saturation, and higher values produce more saturated colors.
- Analog. gain (AnalogueGain): Analogue gain applied by the sensor.
- Sharpness: Defines the sharpness of the camera at PiCamera2 level
- Exp. Comp. (ExposureValue): Exposure compensation value in "stops", which adjusts the target of the AEC/AGC algorithm. Positive values increase the target brightness, and negative values decrease it. Zero represents the base or "normal" exposure level.
- Frame align area: These parameters are critical in achieving frames to be correctly positioned before the snapshot is taken. Since October 2023, both can be automatically calculated by ALT-Scann8, so no need to adjust them manually in most cases. If you face a specific case where automatic settings do not work, manual mode can be toggled by double clicking on the text box for each value. Anyhow below you can find a brief description of each field.
- Steps/Frame: Number of steps to be performed by the stepper motor to advance to next frame. This parameter depends on the total diameter of the capstan (3D printer piece + thickness of material recovering it). Click on the button to toggle the automatic calculation of this parameter
- PT Level: Since the previous parameter (steps/frame) may not not be enough to precisely position the frame, this second parameter is used to achieve a more precise position. After the stepper motor has unconditionally advanced the number of steps defined by the previous parameter, the scanner will perform additional steps, checking after each step if the photo-transistor has reached the level indicated here; If it does, it will stop and take the snapshot, otherwise it will perform another step and check again. This parameter depends on multiple factors, among them the IR led and photo-transistors used in each specific scanner build, but also the film might have an influence.
- Fine tune: Allows minor adjustment of the frame up or down. If the deviation is too big to be corrected with this parameter, you'll have to adjust the position of the film-gate, moving it to the left (moves the frame down) or to the right (moves it up). Click on the button to toggle the automatic calculation of this parameter
- Extra Steps: When positive, will perform that number of steps, unconditionally, after a new frame has been detected, and before the snapshot of the frame is taken. If negative, it will be deducted dynamically from the steps/frame value, allowing the earlier frame detection. In principle negative values were not included since in theory they should not be required, but...
- Speed / Quality
- Scan speed: This value allow adjusting the scan process speed. Can be set from 1 (slowest) to 10 (fastest). As of version 1.8.33, frame positioning should be quite stable even at the highest speed, but still recommendation is to start with 5 and test up and down from there to select the speed best adapted to your scanner
- Stabilization delay (ms): When using faster scan speeds, captured image can be blurry. This parameter pauses the process for the number of milliseconds stated in order to allow the film to completely stop before the snapshot is taken. Recommended value is 100 ms, but this should be quite specific to each scanner
- Plotter area: Enabled with the '-p' command line parameter. Displays the photo-transistor level (in clue) as reported by Arduino, with the value of the maximum level reached, and the threshold level (in red) at which a frame will be detected. Useful to adjust the photo-transistor height without requiring Arduino IDE
Experimental mode
Experimental mode can be enabled with command line parameter '-x'
- ⚠️ Multi-exposure fusion: These parameters allow to enable and control the multi-exposure capture mode (pseudo-HDR). This mode causes the scanning process to be 20 times slower than the standard one. This is due to the time the camera needs to adjust itself after each exposure change. As far as I can tell, not much to optimize here except finding a quicker (and probably more expensive) camera.
- Active: This checkbox enables the multi-exposure mode. Disabled while scan is ongoing to prevent accidental change. All other controls in this area can be changed during scanning, to allow dynamic adjustment depending on the scene
- View X4: In multi-exposure mode ALT-Scann8 takes 3 snapshots of each frame, which different exposures (within the bracket defined in the two parameters below). This checkbox makes ALT-Scan to display the preview as a mosaic with the three snapshots, instead of a single image. This helps to tune the bracket dynamically, while scan is ongoing
- Lower exp.: Lower value of the exposure bracket, in milliseconds
- Higher exp.: Higher value of the exposure bracket, in milliseconds
- Bracket width: Sets the width of the multi-exposure bracket
- Auto bracket: Alt-Scann8 will recalculate every 8 frames the bracket settings according to the automatic exposure reported by the camera, so that this exposure is in the middle of the bracket
- ⚠️ Warning: This feature is experimental. Mertens algorithm used for merging the different exposures is applied to each set independently, which often results in slight different overall brightness, causing an ugly flickering in the final video. Together with the heavy processing required by this capture mode, both at scan time and during post-processing, is a good reason not to use this mode (alternatively, you can try to use the soon-to-be-added gamma correction feature in AfterScan)
- RW/FF speed: Sets the speed of rewind/fast forward operation
- Damaged film: Facilitates manual scanning of films which have the sprocket holes damages, and cannot be recognized by ALT-Scann8. It allows you to advance the film by 5 or 20 stepper motor steps ('+5', '+20'), and take a snapshot of the current frame ('Snap')
- Movie backwards: Moves the film backwards. To be used carefully, since it requires constant manual action on the reel on the right size to collect the film being pulled by the capstan. Implemented since every now an then i was doing this by turning the capstan manually, not a big deal for a few frames, but painful for more.
- Unlock reels: Sometimes you will need to manually move the reels and/or capstan. This button will set the stepper motors in neutral so that you can do it. Normally not needed since all motors are set in neutral by default (when no operation is ongoing)
- Emergency exit: Exits ALT-Scann8 without saving
- Preview module: How often preview image (and statistics) are displayed (1 every n frames)
Settings popup window
- Simplified UI: Displays a smaller user interface by removing several areas (expert, experimental, plotter, statistics). When simplified UI is enabled, automatic settings for exposure, white balance, steps per frame and phototransistor level are enabled as well
- Disable tooltips: Tooltips are enabled by default, which this option it is possible to disable (or re-enable) them
- Keep widgets enabled: Normally (almost) all widget are disabled while scanning, to avoid making accidental changes. However, if you need to make changes on the fly, you can keep camera and scanner control widgets enabled with this option
- Color coded buttons: Option enabled by default. It you do not like to have non-default color sin widgets, you can disable it using this option
- Fahrenheit: Displays Raspberry Pi temperature in Fahrenheit degrees
- Display scrollbars: On start up, ALT-Scann8 will try to adjust its size to the resolution of the screen, to make sure all user interface is accesible. However, in some cases this might result in fonts too small to be readable. In such cases, you can select a bigger font (next option) and enable scroll bars with this option so that the UI is both readable and accesible.
- Main UI font size: Establishes the base font used in the main UI. You might want to make the font bigger, and to activate scrollbars, if your screen resolution is smaller than HD
- Resolution: Resolution to use to capture film frames. Note that resolution below 2028x1520 will anyhow use raw sensor resolution of 2028x1520, so the only advantage of using them would be the smaller file size.
- Type: Format to use for when saving the file, 3 options are available:
- JPG: standard JPG capture, lossy compression, but using 95% quality in PIL save method
- PNG: Lossless compression, better quality than JPG, however file sizes are substantially bigger, and therefore scan process will be slower. In this case image is saved directly from the PiCamera2 library, as it is substantially faster than PIL library (however this has the drawback that negative capture when using PNG is not possible).
- DNG: Lossless raw image format. Also saved directly from PiCamera2 library, same constrain as PNG (no negative capture possible). This format cannot be handled by AfterScan, you'll need to convert it to JPG or PNG elsewhere.
- Base Folder: Selects the default folder used by ALT-Scann8 when creating a new folder using the 'New' button
- Debug level: Selects the debug level. Use when reporting a problem