# PaperPod tunable thresholds. All values here override the built-in defaults # in paperpod/config.py; delete a key to fall back to the default. capture: # Frames per second to sample from the source video for analysis. sample_fps: 8 # Frames are downscaled to this width for motion analysis (full resolution # is still used for the final document crops). processing_width: 960 audio: # WAV sample rate for the extracted audio track (16 kHz mono = whisper-ready). sample_rate: 16000 motion: # Gaussian blur kernel applied before frame differencing (odd number). blur_ksize: 21 # A pixel counts as "changed" if its gray level moved by more than this (0-255). pixel_threshold: 12 # Fraction of changed pixels (0.0-1.0) above which a frame counts as "moving". # Raise if sensor noise triggers false motion; lower if small gestures # (page flips) are being missed. threshold: 0.02 # A stable stretch must last at least this long (seconds) to count as a window. stable_min_duration_s: 1.0 document: # Contours smaller than this fraction of the frame area are ignored. min_area_ratio: 0.04 # Canny edge detection thresholds. canny_low: 50 canny_high: 150 # Apply contrast enhancement (CLAHE) to crops for OCR-readiness. enhance: false speech: # Window around a capture event in which to look for a spoken description. window_before_s: 3.0 window_after_s: 5.0 output: dir: ./output # Paperless-ngx consume directory (module 7, not wired up yet). consume_dir: null