If you’re spending a lot of time on repetitive image processing tasks, scripting can take a big chunk of that off your plate. A few well-placed scripts in your workflow can speed things up significantly and free you up to focus on the actual shoot.
Why This Script Is A Big Upgrade
Processing files manually is one of the biggest bottlenecks in post-production. Manually assigning recipes and exporting each batch wastes time that could be spent refining images or preparing client deliverables. This script allows Capture One to intelligently apply the right process recipes to your rated and color-tagged selects, so everything is exported in one go. Fast and efficiently.
Use Cases for Digital Techs
- Client Deliverables on Set. When a client requests high-res TIFFs for 5-star images and low-res JPEGs for proofing, this script automatically processes the selects into the correct formats.
- Retouching Workflows. Quickly generate high-res files for retouchers while simultaneously creating small proofs for client review.
- E-Commerce & Commercial Photography. Apply different processing settings to images based on star ratings or color tags to speed up final deliverables.
How It Works
- Before running the script, apply star ratings or color tags to the images you want to process.
- Run the script. It will match ratings and tags to predefined processing recipes.
- Capture One processes the files automatically, applying the correct export settings based on the image’s rating or color.
Practical Use Case
Client wants Purple tagged images processed into a plates folder, 5-star images as JPEG and TIFF in a Selects folder, and everything in an All Images folder. Regardless of tag or rating. Instead of filtering for each of these manually, the script can be pre-programmed to process based on rating or color tag and run on the All Images folder in Capture One.
Note: The following script is only an example of how to take advantage of conditional processing and recipe creation. Please adjust to suit your needs before deploying it.
How This Speeds Up Your Workflow
- No More Manual Processing. The script automatically applies the right process recipe, eliminating the need to manually select export settings for each image.
- Consistency Across Exports. Ensures that all images are processed using predefined settings, reducing errors and making deliverables more uniform.
- Faster Turnaround Time. Whether working on high-volume e-commerce, commercial shoots, or editorial sessions, automation dramatically cuts export time.
The “Process All Selects” script takes the headache out of processing large batches of images, making it a must-have for any digital tech looking to improve efficiency.
Below is a Capture One AppleScript that processes all rated and color-tagged variants in your current collection. It creates a hard coded JPEG recipe, if not already added, and batch-processes them in one shot. Additional processing can be added and filtered by rating or color tag. Drop it into Script Editor, save it as a .scpt, and run it from Capture One’s script menu.
# Settings
set SelectsProcess to "ProcessAllSelects"
set processToSessionOutput to true
-- ------------------------------------------------------------
-- Script Below - Modify at your own risk
-- ------------------------------------------------------------
tell application "Capture One"
-- Destination folder
tell document 1
if processToSessionOutput is true then
set destFolder to current output folder
else
set destFolder to session folder
end if
end tell
-- Ensure recipe exists (and reset if using default)
tell current document
if SelectsProcess is "ProcessAllSelects" then
if exists recipe "ProcessAllSelects" then
delete recipe "ProcessAllSelects"
end if
make new recipe with properties {name:"ProcessAllSelects", enabled:true, format:JPEG, subfolder:"JPEG_Selects/[Session Sub Path]", root:recipe root current, root folder:destFolder, exclude:exclude existing, sharpening:sharpening none, recipe crop:true}
else
if not (exists recipe SelectsProcess) then
display dialog "Recipe not found: " & SelectsProcess buttons {"OK"} default button "OK"
return
end if
end if
end tell
-- Get rated + tagged variants directly
tell current document
set ratedVariants to (every variant whose rating > 0)
set taggedVariants to (every variant whose color tag > 0)
end tell
-- Combine + de-dupe
set toProcess to {}
set seenIDs to {}
set toProcess to my appendUniqueVariantsByID(toProcess, seenIDs, ratedVariants)
set toProcess to my appendUniqueVariantsByID(toProcess, seenIDs, taggedVariants)
if (count of toProcess) = 0 then
display dialog "ERROR: No rated or color-tagged variants found in the current collection." buttons {"OK"} default button "OK"
return
end if
tell current document
process toProcess recipe SelectsProcess
end tell
end tell
on appendUniqueVariantsByID(toProcess, seenIDs, variantList)
repeat with vv in variantList
set theVar to contents of vv
set vid to ""
try
set vid to (id of theVar) as text
on error
try
set vid to (name of theVar) as text
on error
set vid to theVar as text
end try
end try
if my textInList(vid, seenIDs) is false then
set end of seenIDs to vid
set end of toProcess to theVar
end if
end repeat
return toProcess
end appendUniqueVariantsByID
on textInList(t, L)
repeat with x in L
if contents of x = t then return true
end repeat
return false
end textInList
