Introduction
STUDIO KALZ - AI Media Processor is a single Windows applicationthat exports every web, delivery and archive version of your images and videosin one click. It replaces the fragmented batch workflow that typically involvesPhotoshop, Lightroom and a separate video editor like Premiere Pro or DaVinciResolve.
From a single PSD or video sourceyou receive:
• Print-quality TIFF masters withembedded sRGB ICC profile
• High-resolution JPEGs in any size,with optional KB cap and automatic quality search
• Web-friendly WebPs (no separate toolrequired - Adobe does not support WebP at all)
• Lossless PNG and PSD outputs whenneeded
• Video encodes in WebM (VP9), MP4(H.264) and MOV (ProRes)
• Per-frame stills extracted fromvideos at a configurable step
• Optional AI-generated title, alttext, description and 12-20 keywords per image (Anthropic Claude Haiku)
• Full IPTC, EXIF and XMP metadataembedded automatically
This document describes everyfeature of version 1.0.22 in detail.
2. What is in this version
Version 1.0.22 consolidates themajor additions of the 1.0 series:
• Video conversion to WebM, MP4 andMOV with simple percentage quality control and a Lossless toggle
• Letterbox crop padding for videowith black bars or a blurred-fill background (adjustable blur and brightness)
• Video to image-frames pipeline: dropa video, get every Nth frame as a still in any image format
• Four built-in presets - Web Images,Web Video Variants, Image Delivery, Video Delivery
• Preset backup and import as a singleJSON file
• Resizable Input and Variants panes(drag the splitter)
• Custom logo support (Settingsdialog)
• Custom window title using yourcompany name
• Re-run safety: outputs are taggedand never converted twice
• Multi-core processing across allavailable CPU cores, with AI calls running in parallel under automaticrate-limit backoff
3. Installation and First Launch
3.1 System requirements
• Windows 10 or Windows 11, 64-bit(Intel / AMD)
• Approximately 200 MB free disk spacefor the unpacked folder
• 8 GB RAM recommended; workersauto-scale to available memory
• Any modern multi-core CPU -performance scales with core count
• Internet only needed for theoptional AI keyword feature
• No administrator rights required
3.2 Installation
The application is fullyself-contained. There is no installer.
1. Download the ZIP archive from yourGumroad library.
2. Unpackit to any location with write access - your Documents folder is ideal. AvoidProgram Files (write-protected).
3. Double-click "STUDIO KALZ - AIMedia Processor.exe".
3.3 Windows SmartScreen on first launch
Because the binary is notcode-signed, Windows may show a SmartScreen warning on the very first launch:
Windows protected your PC
Click "More info" and then"Run anyway". Windows remembers the decision and will not show thewarning again on the same machine.
3.4 Initial setup dialog
The first start opens a setup dialogwith three groups of fields:
• Identity: Company, Author, E-mail, Website andCopyright. These values are embedded as IPTC and EXIF metadata into everyexported file.
• AnthropicAPI key (optional): Pasteyour sk-ant-... key here if you intend to use the AI feature. Leaveempty if not.
• EULA acceptance: Required on first launch only.
After accepting, the main windowopens. All values can be changed later in the Settings dialog.
3.5 Local files created next to the executable
On first use the application writesthe following files next to the .exe (or under%APPDATA%\StudioKalz-AIMediaProcessor if the .exe sits in a write-protectedlocation):
File
Purpose
config.json
Identity, IPTC defaults, workflow folder names, video frame step
gui_settings.json
Window state, dark mode, default output folder, drop preset, workers
presets.json
Built-in templates plus your saved custom presets
apikey.txt
Anthropic API key (only if AI is enabled). Never logged.
.kw_cache.json
Per-project cache of AI responses (in the output folder)
_export_log.txt
Run log written to the output folder after each batch
4. The Main Window
The window opens maximised and isorganised into five regions, top to bottom:
4.1 Branding bar (top, borderless)
Holds the studio logo on the leftand four link buttons in a 2 x 2 grid on the right: Settings, Documentation,Gumroad Page and Feedback. The version number is shown next to the buttons. Thelogo can be replaced with your own PNG via Settings.
4.2 Preset bar
Selects the active export preset. Buttons:
• Save: overwrite the active custom preset.
• Save as...: create a new preset under any name.
• Rename: rename a custom preset (built-ins areprotected).
• Delete: remove a custom preset.
• Default Preset for Auto Mode: pin a preset to be appliedautomatically when files are dropped onto the program icon.
• Backup All Presets / Import Backup: export or restore the entire presetand settings state as a single JSON file.
4.3 Input + Variants (resizable)
Two panes separated by a horizontalsplitter. Drag the splitter up or down to give either pane more room. Each panehas a minimum size so the button column on the left can never be clipped.
• Input pane: lists the files queued forconversion. Add files or folders via the buttons on the left, or drag themstraight from Windows Explorer into the list. Accepted formats: PSD, PSB, TIFF,PNG, JPG, JPEG, MP4, MOV, M4V, MKV, WebM, AVI.
• Variants pane: lists the active output variants ofthe current preset. Click the Enabled cell to toggle a variant; double-clickany row to edit it; use the buttons on the left to add, remove, toggle all onor off, or restore the preset's defaults.
4.4 Metadata and File-naming row
The left side carries the Outputconfiguration and the IPTC metadata fields. The right side holds the Filenaming controls with a live filename preview that follows the variant you haveselected in the table above.
4.5 Start row (bottom)
Three large buttons - Startconversion, Cancel, Open output folder - plus an inline progress bar. TheWorkers spinbox and Process pool checkbox sit on the right and control how thebatch is parallelised.
4.6 Status line
A single line at the very bottomshows the most recent log message during a run, and a final summary when thebatch finishes.
5. Image Conversion
5.1 Supported input formats
PSD, PSB, TIFF, PNG, JPG, JPEG. PSDsare read primarily via Pillow's PsdImagePlugin (fast - uses the composite layerthat Photoshop saves alongside the layered file). When the composite isunavailable, psd-tools is used as a fallback.
5.2 Supported output formats
Kind
File extension
Compression
Alpha
Notes
TIFF
.tif
LZW (lossless)
Optional
300 dpi, 8-bit, sRGB, ICC embedded
JPEG
.jpg
Lossy
Flattened on white
Quality + KB cap with auto search
WebP
.webp
Lossy
Optional
Quality + KB cap with auto search
PNG
.png
Lossless
Optional
Compression level 9, sRGB
PSD
.psd
Lossless
Optional
Single-layer, XMP / EXIF / IPTC embedded
5.3 Resize modes
Each variant carries its own resizemode. Original output never upscales beyond the source resolution.
Mode
Behaviour
Original
Keep the source resolution unchanged.
Long edge
Scale so the longer side equals the given pixel value, aspect preserved.
Short edge
Scale so the shorter side equals the given pixel value, aspect preserved.
Width
Scale so the width equals the given value, aspect preserved.
Height
Scale so the height equals the given value, aspect preserved.
Crop W x H
Cover-fit and centre-crop to the exact pixel size given.
5.4 Quality and KB cap (JPEG, WebP)
Auto Quality: when enabled, the encoder runs abidirectional binary search between the Min Quality and Max Quality bounds,looking for the highest quality that still fits inside the Max KB target (witha 10 % tolerance buffer). The on-disk file size is verified after writing andre-tuned if the post-write IPTC overhead pushed it over the limit.
Max KB: the size cap in kilobytes. Enabling the Max KBcheckbox automatically enables Auto Quality - the cap is only meaningful withthe search active.
Fixed quality (Auto off): the encoder uses the single qualityvalue you specify and ignores any KB cap.
5.5Transparency handling
Flatten on white: available for all image formatsexcept JPEG, which always flattens. When unchecked, TIFF, WebP, PNG and PSDoutputs preserve the source alpha channel.
5.6 sRGB colour management
Embedded ICC profiles (Adobe RGB,ProPhoto and others) are converted to sRGB on load using PIL.ImageCms. Everyoutput file carries an embedded sRGB ICC profile. This is mandatory for correctrendering on the web.
6. Video Conversion
6.1 Supported input formats
MP4, MOV, M4V, MKV, WebM, AVI. Videoprocessing is performed by the bundled ffmpeg.exe (sourced from theimageio-ffmpeg package, version 7.1 of ffmpeg as of this release).
6.2 Supported output formats and codecs
Container
Video codec
Audio codec
Typical use
WebM (.webm)
VP9 (libvpx-vp9)
Opus
Web pages, royalty-free streaming
MP4 (.mp4)
H.264 (libx264)
AAC
YouTube uploads, universal playback
MOV (.mov)
Apple ProRes (prores_ks)
PCM 24-bit
Editing master, archive copies
6.3 Quality control
Video variants use a single 1-100percent Quality slider. The slider maps to codec-specific quality settings:
Quality slider
WebM (VP9 CRF)
MP4 (H.264 CRF)
MOV (ProRes profile)
100 %
CRF 10 (highest)
CRF 18 (visually lossless)
ProRes 4444
75 %
CRF 23
CRF 26
ProRes 422 HQ
50 %
CRF 37
CRF 34
ProRes 422
25 %
CRF 50
CRF 43
ProRes LT
1 %
CRF 63
CRF 51
ProRes Proxy
Lossless: the dedicated Lossless checkboxbypasses the slider entirely and produces mathematically lossless output wherethe codec supports it: VP9 lossless flag for WebM, qp 0 for H.264 in MP4,ProRes 4444 XQ for MOV.
6.4 Audio handling
Audio is included by default. Untickthe Include audio checkbox to drop the audio track entirely (encodes faster,smaller files). The Audio kbps spinbox controls the bitrate when audio isincluded; PCM audio in MOV is uncompressed and ignores the bitrate value.
6.5 Crop padding modes
When the crop mode is used on avideo and the source aspect does not match the target, the output can be paddedin one of three ways:
Mode
Result
Crop (cover-fit + centre cut)
The source is enlarged to cover the target and centre-cropped.
Letterbox - black bars
The source is fitted inside the target and the remaining area is filled with black.
Letterbox - blurred fill
The source is fitted inside the target; the background is a blurred, enlarged copy of the same source.
Blur tuning: two extra controls appear whenBlurred fill is selected: Blur strength (1-50, controls the Gaussian sigma) andBrightness (-0.5 to +0.5, applied via ffmpeg's eq filter).
6.6 Video to image frames
If your input list contains a videoand at least one image variant is enabled, the application extracts every Nthframe as a still and runs the image variants on each frame. N is configuredglobally in the Settings dialog or directly in the variant editor (default:every 25th frame).
Frame stills are named:<original-stem>-frameNNNN-<variant>.<ext>.
7. AI Metadata
The AI feature is optional, off bydefault, and requires your own Anthropic API key. With AI enabled, theapplication analyses every image and writes a complete set of SEO andaccessibility metadata into the file.
7.1 What the AI generates per image
• Title - concise descriptive title, up to 8 words.
• Alt text - one factual sentence (about 125characters), suitable for screen readers and SEO, without an "imageof" lead-in.
• Description - 1-2 sentences with more detail thanthe alt text.
• Keywords - 12-20 relevant English keywordscovering subject, material, style, industry and colour.
7.2Where the AI output is embedded
Each field is written into thestandard metadata containers that Google Images, Lightroom, Bridge and AdobeStock read:
• EXIF: Title, Author, Copyright,Description, Keywords (via XP tags for Windows Explorer search)
• IPTC-IIM (JPEG only): Caption,Keywords, By-line, Credit, Copyright Notice, Contact, Source, Instructions
• XMP: dc:title, dc:description,dc:rights, dc:creator, dc:subject, photoshop:Credit/Source/Headline,xmpRights:Marked/WebStatement/UsageTerms, plus:Licensor,Iptc4xmpCore:AltTextAccessibility
• PNG: iTXt chunks (Title, Author,Copyright, Description) and an XML:com.adobe.xmp packet
• TIFF: XMP packet in tag 700alongside the standard TIFF tags
• PSD: XMP, EXIF and IPTC-IIM in thePhotoshop image-resources block
7.3 Cost and privacy
• Model: Claude Haiku. Typical cost isa fraction of a cent per image.
• Only adownscaled JPEG copy (maximum 1568 pixels on the long edge, quality 80) is sentto Anthropic. The original file never leaves your machine.
• Resultsare cached in .kw_cache.json (keyed by SHA-1 of the source bytes). Re-runsover unchanged sources cost nothing.
• The API key is stored locally inapikey.txt. It is never logged, never saved into presets or settings backups,and never transmitted anywhere except to api.anthropic.com.
• Required: one-time privacy consentthe first time you enable AI in the GUI.
7.4 Setting up AI in three steps
4. Create an Anthropic account atconsole.anthropic.com.
5. Add a small amount of credit andcreate an API key (it starts with sk-ant-).
6. Openthe Settings dialog in the application, paste the key and click Save. Thestatus line confirms the key has been found.
7.5 AI self-test
The Settings dialog includes an AIself-test button. Clicking it sends one synthetic test image to the API andprints both the raw and parsed response in the status bar. Use this to verifythat the key works without running a full batch.
8. Embedded Metadata Fields
Beyond the AI-generated fields, theapplication also embeds static metadata that you configure once in the Settingsdialog and in the IPTC frame of the main window.
8.1 Identity (Settings)
Field
Used in
Company / Studio
Photoshop Credit, XMP plus:LicensorName, IPTC-IIM Credit
Author
EXIF Artist, IPTC By-line, XMP dc:creator, XP Author
XMP CreatorContactInfo CiEmailWork, IPTC Contact
Website
XMP CreatorContactInfo CiUrlWork, XMP plus:LicensorURL, IPTC Source
Copyright
EXIF Copyright, IPTC Copyright Notice, XMP dc:rights, XP Comment
The Copyright field supports theplaceholders {year} and {company} which are expanded at export time.
8.2IPTC fields (main window)
These supplement the AI output. WhenAI fills a field, the manual value in the IPTC frame takes precedence if it isnot empty.
Field
Used in
Headline
Photoshop Headline (XMP)
Caption / description
IPTC Caption-Abstract, XMP dc:description
Keywords (comma-separated)
IPTC Keywords (repeatable), XMP dc:subject
Credit
IPTC Credit, Photoshop Credit (XMP)
Source
IPTC Source, Photoshop Source (XMP)
Instructions
IPTC Special Instructions, Photoshop Instructions
City / State / Country
Photoshop City / State / Country
Job / reference
IPTC Job ID, Photoshop TransmissionReference
Usage terms
XMP xmpRights:UsageTerms
8.3 The Pipeline marker
Every exported file carries thestring "Studio Kalz Pipeline" in its EXIF Software tag and XMPxmp:CreatorTool. The application uses this marker to recognise its own outputson a subsequent run and skip them automatically. This makes the "in thesource folder(s)" output mode safe: dropping the same project folder twicenever re-converts already-generated files.
9. Presets
A preset captures the entire exportconfiguration: the variant list with all per-variant settings, the file namingoptions, the AI toggle and the output mode. Switching presets switches thewhole configuration in one click.
9.1Built-in templates
Four built-in templates ship withthe application. They are re-seeded on every start if missing, so deleting oneand restarting brings it back. The Web Images template is additionallyprotected from Save, Rename and Delete (use Save as... to derive a customversion).
Preset
Variants
Web Images
TIFF-Full, JPEG-Full, WEBP-Full, WEBP-4K, WEBP-1080p, WEBP-1500, WEBP-Thumb-700x630
Web Video Variants
WEBM-1080p (90 % quality), WEBP-StillFrame (every Nth frame extracted from the video)
Image Delivery
JPEG-Full (quality 95, fixed), TIFF-Full (lossless, 8-bit)
Video Delivery
Video-Master-ProRes-MOV (ProRes 4444, full resolution), Video-YouTube-1080p-MP4 (H.264, quality 80 %)
9.2Custom presets
Use "Save as..." tocapture the current configuration under a new name. Custom presets can berenamed and deleted freely. Save overwrites the active custom preset withoutconfirmation, so prefer Save as... when in doubt.
9.3 Default preset for Auto Mode
Click "Default Preset for AutoMode" to pin the active preset as the one that is applied automaticallywhen files are dragged onto the program icon (Auto Mode launch). The pinnedpreset name is shown in the right-hand side of the preset bar.
9.4 Backup and restore
The Backup All Presets button writesa single JSON file containing presets.json, gui_settings.json and config.jsonin one bundle. Default file name: AIMediaProcessor-backup-vX.Y.Z.json. Secretsand binary assets (apikey.txt, logo files) are deliberately excluded.
The Import Backup button reads sucha JSON file, asks for confirmation, then overwrites the current presets,settings and config. Built-ins are re-seeded if the backup did not includethem. The active preset, title, logo and theme are refreshed immediately.
10. File Naming
The File naming panel controls howoutput filenames are built. All options live in the active preset and can besaved per preset. A live preview at the bottom of the panel shows the resultingfilename for the variant you have selected in the Variants table.
10.1 Components in order
Order
Component
Source
1
Prefix
Global prefix entry
2
Stem
Original filename, or custom basename if "Use original filename" is unchecked
3
Company name
Optional, from Identity in Settings
4
Author name
Optional, from Identity in Settings
5
Custom tag
Optional, free text entry
6
Variant name
Always on by default (e.g. JPEG-4K)
7
Size
Optional, exact W x H of the output
8
Suffix
Global suffix entry
All components are joined with theconfigured separator (default: minus). Spaces inside the stem are replaced bythe separator when "Unify separators in original name" is on.
10.2 Transformations
• Lowercase: the whole filename is converted tolowercase.
• Spaces to -: any remaining whitespace becomes ahyphen.
• Umlauts / accents to ASCII: Default on. Replaces German umlauts(ae, oe, ue, ss) and strips other diacritics (e.g. e from é, n from ñ).
• Limitfilename length: defaulton, 255 characters (Windows maximum per filename component). Disable toremove the cap.
10.3 Full rename
Uncheck "Use originalfilename" and enter a custom basename to replace the source filenameentirely. All other options still apply, so the resulting filename includesyour custom basename plus the configured Company / Author / Variant / Size appendagesand prefix/suffix.
11. Workflow Folder Configuration
Studio Kalz uses a fixed projectstructure where the working files live in a folder called 04_post_processingand the deliverables go into a sibling 05_output folder. The application'sAutomatic output mode follows that convention out of the box but the foldernames are configurable to match any studio's layout.
11.1 The three output modes
Mode
Where outputs land
Automatic (project workflow folder)
The application walks up from each source file looking for the configured input folder name. The matching output folder at the same project level is used; the per-source subpath is mirrored under each variant folder.
Default output folder
All outputs land in the single folder selected via "Choose Custom Output Folder". One variant folder per variant, side by side.
In the source folder(s)
Outputs are written into a sibling per-variant folder next to each input file. Multi-source batches end up with one set of variant folders per source location.
11.2 Configuring the folder names
Open Settings - the section"Project Input/Output File Structure" has two entries:
• Input folder name (default:04_post_processing)
• Output folder name (default:05_output)
The values are matchedcase-insensitively against the path. Files dragged onto the .exe icon use thesenames to decide where to deliver.
11.3 Delete sources after export
The Output frame contains a"Delete source files after successful export" checkbox. When ticked,a confirmation dialog appears before the run. Only sources that finishedsuccessfully are removed; failed and cancelled files stay on disk.
12. Performance and Multi-Core
The application parallelises acrossfiles and variants. With a modern multi-core CPU and sufficient RAM, batchesrun 4-10x faster than serial encoding.
12.1 Workers
The Workers spinbox in the Start rowcontrols how many parallel encoding jobs run at once. The default value isderived from the system's CPU core count and free RAM:
workers = max(1, min(cpu_count - 1, int(free_ram_GB /1.5), 64))
With AI enabled, the same workercount applies; rate-limited API responses are absorbed by the Anthropic SDK'sexponential backoff (max_retries = 8).
12.2 Process pool vs. thread pool
• Processpool (default): fastestoption, scales linearly on all cores, but each worker holds its own copy of themaster image in memory. Recommended for systems with 16 GB of RAM ormore.
• Thread pool: lower RAM footprint, slightly lesspeak throughput. Recommended on systems with limited memory or many smallfiles.
12.3 Cancellation
Click Cancel during a run to stopnew files from starting. The file currently being encoded finishes (cooperativecancellation), then the batch returns and the status line reports theinterruption.
13. Settings Dialog
All application-wide settings livein the Settings dialog. Settings are app-level and shared across all presets(presets carry only the per-export configuration).
Section
Contents
Metadata
Company, Author, E-mail, Website, Copyright - written into every exported file.
Project Input/Output File Structure
Folder names used by the Automatic output mode.
Video to image frames
The default Nth frame step for video frame extraction. Mirrored in the variant dialog.
AI / Anthropic API key
Paste your sk-ant-... key. The Save button writes it to apikey.txt. The AI self-test button verifies the key with one synthetic call.
Branding logo
Choose a custom PNG to replace the Studio Kalz wordmark in the top-left of the main window. "Reset to bundled logo" removes the custom logo.
Appearance
Dark mode toggle. Default: on.
Save applies all changes immediatelyand persists them. Cancel discards any pending edits.
14. Troubleshooting
14.1Windows SmartScreen blocks the .exe
Expected on first launch for anyunsigned indie application. Click "More info" and then "Runanyway". Windows remembers the decision and does not show the warningagain on that machine.
14.2AV software flags the .exe
PyInstaller-bundled .exes areoccasionally flagged as generic false-positives because their bootloadersignature is shared with a small number of malware families. Whitelist the filein your AV software; running it from a VirusTotal scan typically shows 0-2 of70 engines flagging - that is the false-positive baseline for PyInstaller.
14.3 AI does nothing
Open Settings and check the AIstatus line. If it reports "No key on file", paste your sk-ant-...key into the API key field and click Save. If it reports a rate-limit error,check your Anthropic credit balance at console.anthropic.com.
14.4 Colours look different after export
This is correct: the applicationconverts every output to sRGB and embeds an sRGB ICC profile. If the source wasin Adobe RGB or ProPhoto RGB, the visible difference compared to the source inPhotoshop is expected. sRGB is the web standard.
14.5 A PSD does not load
Very exotic PSDs that lack a savedcomposite layer can fail. Re-save the PSD from Photoshop with "MaximizeCompatibility" enabled, or export to TIFF and convert that instead.
14.6 Re-running a project produces no new files
This is intended. The applicationmarks every output it creates and skips files that already carry that marker.The status line reports "skipped (already created by Studio KalzPipeline)". To force a re-export, delete the existing output files orchange the output folder.
14.7 Cannot write to config / settings files
If the .exe sits in awrite-protected location (Program Files), the application falls back to%APPDATA%\StudioKalz-AIMediaProcessor for all read/write files. Both locationswork; the application picks whichever is writable first.
15. License Summary
The full license text is provided asEULA.txt next to the executable. The key terms are:
• Single-seat use license. Buying thesoftware entitles you, the named buyer, to use it on your own machines.
• Redistribution, resale, sublicensingand copying for third parties are prohibited.
• Images and videos produced with thesoftware are yours to use without restriction.
• The AI feature requires your ownAnthropic account and is subject to Anthropic's terms.
• Provided "as is" withoutwarranty of any kind.
Open-source libraries shipped insidethe application are licensed under their respective terms: Pillow (HPND),psd-tools (MIT), piexif (MIT), IPTCInfo3 (BSD), tkinterdnd2 (MIT), anthropic(MIT), imageio-ffmpeg (BSD), ffmpeg (LGPL / GPL components used under the LGPLconfiguration).
16. Feedback and Support
The Feedback button in the top-rightof the main window opens your default e-mail client with a pre-filled subjectline. Bug reports, feature requests, screenshots and "would not it beuseful if..." suggestions are all welcome.
Documentation updates and newreleases are announced via the Gumroad product page. Re-download a refreshedZIP from your Gumroad library to update to a newer version.
Direct contact: hi@studio-kalz.de
Website: www.studio-kalz.de
Documentation version 1.0.22 - Studio Kalz











