# StoryFolder > Instantly convert videos into AI storyboards and notes. Highlight key moments, add notes, and share production notes. StoryFolder is a desktop and web app for filmmakers, video producers, and marketers. Source: https://storyfolder.com --- # StoryFolder — FAQ ## Getting Started ### What is StoryFolder? URL: https://storyfolder.com/#faq-what-is-storyfolder StoryFolder is an AI video to storyboard converter. Drop in any video — a YouTube link or a local file — and StoryFolder extracts every unique shot, lays them out on an interactive storyboard, and lets you add notes, organize ideas, and share with your team in seconds. ### Who is StoryFolder for? URL: https://storyfolder.com/#faq-who-is-it-for StoryFolder is built for anyone who works with video: marketing agencies, video production studios, filmmakers, social content creators, editors, directors, cinematographers, and students. If you analyze videos, plan productions, study competitors, or share visual ideas with a team, StoryFolder cuts hours out of the workflow. ### How do I get started with StoryFolder? URL: https://storyfolder.com/#faq-how-do-i-start Sign up for a free account at storyfolder.com/signup (/signup), download the desktop app for Mac or Windows, paste any YouTube URL or open a video file, and you'll have a complete storyboard in about 90 seconds. The full Getting Started guide (/help/getting-started/welcome) walks through every step. ### Is StoryFolder free? URL: https://storyfolder.com/#faq-is-it-free Yes. StoryFolder has a free plan that lets you convert videos to storyboards, take notes, and share via a public link. It includes 6 boards of 50 shots, custom note fields, and your first 100 shots of AI Autofill. The Pro plan unlocks unlimited boards and shots, unlimited AI Autofill, spreadsheet export, EDL and XML timeline exports, password-protected sharing, and charts. See pricing (/pricing) for the full comparison. ## Converting Videos to Storyboards ### How do I convert a video to a storyboard? URL: https://storyfolder.com/#faq-how-to-convert-video-to-storyboard Open StoryFolder, paste a YouTube link or upload a video file, and the AI shot detector automatically extracts every unique shot. The shots appear on an interactive storyboard you can review, refine, take notes on, and export. No drawing required — StoryFolder is a video to storyboard converter, not a drawing tool. ### How does AI shot detection work? URL: https://storyfolder.com/#faq-ai-shot-detection StoryFolder analyzes the visual difference between consecutive frames. When the difference exceeds a threshold, that point is marked as a shot boundary. The detector is tuned to ignore camera shake, fast motion, and light flicker, while catching hard cuts. Gradual transitions like dissolves and fades can be missed, so you can adjust the sensitivity slider after import to detect more or fewer shots, and split or join any shot by hand. ### Can I extract a storyboard from a video without drawing it? URL: https://storyfolder.com/#faq-video-to-storyboard-online Yes — that's the entire point of StoryFolder. Most storyboard tools require you to draw or import frames manually. StoryFolder starts from an existing video and generates a shot-by-shot storyboard automatically using AI. You can then annotate, refine, and share. ### How do I create a storyboard for a video I haven't filmed yet? URL: https://storyfolder.com/#faq-how-to-make-a-video-storyboard Use a reference video as your starting point. Import an ad, a film scene, or any video with the structure you want, and StoryFolder will turn it into a storyboard you can study, modify, and use as a template for your own production. Plan productions faster by reverse-engineering proven examples. ### What if the AI detects shots incorrectly? URL: https://storyfolder.com/#faq-refine-shots You can refine the shot list any time. Use the Split tool (`C`) to add a cut the AI missed, the Merge tool (`J`) to combine consecutive shots, and the Frame Selector tool (`F`) to choose a custom thumbnail for any shot. The full Splitting & Merging guide (/help/editing/split-merge) covers the workflow. ## Source Videos & Supported Formats ### Can I make a storyboard from a YouTube video? URL: https://storyfolder.com/#faq-youtube-storyboard-viewer Yes. Paste any public YouTube URL — including YouTube Shorts — into StoryFolder and it fetches the video, runs AI shot detection, and produces a complete storyboard. Works for any publicly accessible YouTube video, no plugins or browser extensions required. ### What video file formats does StoryFolder support? URL: https://storyfolder.com/#faq-video-file-formats MP4, MOV, MKV, AVI, WebM, and MTS. Under the hood StoryFolder uses FFmpeg, so most modern codecs work — if your file plays in QuickTime or VLC, it'll almost certainly import. See Supported Formats (/help/importing/supported-formats) for the full list. ### Can I import private or unlisted videos? URL: https://storyfolder.com/#faq-private-videos Unlisted YouTube videos generally work. Private videos do not — the URL doesn't authorize StoryFolder to fetch them. For private content (internal client cuts, etc.), download the file and import it directly as a local file. ### Is there a limit on video length? URL: https://storyfolder.com/#faq-video-length There's no hard cap. Short clips finish in under a minute; feature-length films take 30–90 minutes the first time depending on your machine. Processing happens locally on your computer, so there's no upload step or cloud bottleneck. ## Notes, Customization & Sharing ### How do I take notes on a storyboard? URL: https://storyfolder.com/#faq-take-notes Click any shot to open the notes panel. StoryFolder ships with default note fields (Key Takeaways, Interpretation, Story, Action, Cinematography, etc.) and you can build your own. Select multiple shots to apply the same note to all of them. Notes guide → (/help/notes/adding-notes) ### Can I customize the note fields? URL: https://storyfolder.com/#faq-custom-fields Yes, on every plan. Open Preferences → Notes & Data and design your own fields with six types: text, tag, dropdown, checkbox, rating, and number. There's also an AI assistant that suggests entire field sets based on what you describe (e.g. "cinematography breakdown" or "ad analysis"). Custom fields → (/help/notes/custom-fields) ### Can I share a storyboard with my team or client? URL: https://storyfolder.com/#faq-share-storyboard Yes. Click Share Link in the editor and StoryFolder publishes your storyboard to a public URL like storyfolder.com/b/. The shared page is mobile-friendly and includes the embedded video, all your notes, and three view modes viewers can toggle between. Privacy levels include public, link-only, and password-protected. Sharing guide → (/help/sharing/publish) ### What can I export from StoryFolder? URL: https://storyfolder.com/#faq-exports PDF storyboards, images, individual video clips per shot, and script/subtitle files (SRT) on every plan. The Pro plan adds shot list spreadsheets (CSV/Excel with elapsed timecodes + notes as columns). Pro also exports EDL, XML and FCPXML timelines for Premiere Pro, DaVinci Resolve and Final Cut Pro. AAF is not supported. Export overview → (/help/exporting/overview) ## Pricing & Plans ### What's the difference between Free, Pro, and Teams? URL: https://storyfolder.com/#faq-plans-comparison Free covers casual use: 6 boards, 50 shots per board, custom note fields, your first 100 shots of AI Autofill, PDF + image export. Pro is the sweet spot at $14/mo billed annually ($168/year — save 18%) or $17/mo month-to-month: unlimited boards and shots, unlimited AI Autofill, all export formats, password-protected sharing, and the Analyze view. Teams (from $49/mo, coming soon) adds shared seats and unlimited client viewers for agencies and studios. Side-by-side comparison → (/pricing) ### Is there a free trial for paid plans? URL: https://storyfolder.com/#faq-free-trial Yes — Pro starts with a 14-day free trial. A card is required to start it, and you won't be charged until the trial ends. Cancel any time before then and you won't be billed. Checkouts that use a discount code skip the trial and are billed right away. The Free plan needs no card. ### What's the refund policy? URL: https://storyfolder.com/#faq-money-back 14-day money-back guarantee on every charge. If StoryFolder doesn't fit your workflow, contact us within 14 days of being charged and we'll refund that charge in full. Refunds → (/help/billing/refunds) ### Can I cancel anytime? URL: https://storyfolder.com/#faq-cancel Yes. Cancel any time from your subscription page (/account/subscription). Your access continues through the end of the period you've already paid for, and your projects + notes stay safe. No retention runaround. ## Use Cases ### How do marketers use StoryFolder? URL: https://storyfolder.com/#faq-for-marketers Deconstruct competitor ads shot-by-shot, build pitches with annotated reference videos, study why a viral ad converts, plan campaigns by reverse-engineering proven examples, and share storyboard reviews with clients via password-protected links. StoryFolder is a video production storyboard tool that turns research into deliverables. ### How do filmmakers and production studios use StoryFolder? URL: https://storyfolder.com/#faq-for-filmmakers Study cinematography, framing, and pacing in any film or TV scene. Build shot lists with elapsed timecodes. Plan productions by referencing proven scenes. Share storyboards with DPs, directors, and clients. Custom fields let you tag shots by lens, lighting, movement — whatever your team tracks. ### How do YouTubers and content creators use StoryFolder? URL: https://storyfolder.com/#faq-for-content-creators Reverse-engineer videos that perform well in your niche. Build content templates by studying structure and pacing. Plan series by storyboarding from reference clips. Export shot lists for editors. The free plan covers most solo creator workflows. ### Can I use StoryFolder for teaching film or video production? URL: https://storyfolder.com/#faq-for-education Yes — many educators do. StoryFolder lets students convert any video into a storyboard, annotate cinematographic techniques, and submit visual analyses. Share links are mobile-friendly so students can review on any device. Contact us for educational pricing. ## How StoryFolder Compares ### How is StoryFolder different from storyboard drawing apps? URL: https://storyfolder.com/#faq-vs-drawing-tools Drawing apps (Storyboarder, Studiobinder, FrameForge) start with a blank canvas — you draw or import each frame by hand. StoryFolder starts with an existing video and generates a shot-by-shot storyboard automatically using AI. If you want to study or reference real footage, StoryFolder is faster. If you want to draw original concepts, use a drawing tool. ### Why not just take screenshots from a video? URL: https://storyfolder.com/#faq-vs-screenshot Screenshots are tedious (pause, capture, repeat for every shot), inconsistent (which frame represents the shot?), and produce no structure — just a folder of images. StoryFolder identifies every unique shot automatically, gives each a representative thumbnail, organizes them in time order, lets you take per-shot notes, and exports a complete storyboard in seconds. ### Is there a free AI video storyboard tool? URL: https://storyfolder.com/#faq-ai-video-storyboard Yes — StoryFolder has a free plan that includes AI shot detection, PDF export, and storyboard sharing. It's the most direct path to extracting storyboards from any video without paying anything. See pricing → (/pricing) ## Privacy, Data & Security ### Where are my videos stored? URL: https://storyfolder.com/#faq-where-videos-stored Your video files stay on your computer. StoryFolder is a desktop app that processes video locally — your videos never get uploaded to our servers. Only your notes and storyboard metadata sync to our servers (for sharing and multi-device access). Data storage → (/help/security/data-storage) ### Are my storyboards private? URL: https://storyfolder.com/#faq-private-storyboards Yes by default. Storyboards only become public when you explicitly publish a share link. Even then, you choose between public, link-only (unlisted), or password-protected access. Privacy levels → (/help/sharing/privacy) ### Can I delete my account and data? URL: https://storyfolder.com/#faq-delete-account Yes. Email us and we'll permanently delete your account, projects, notes, and all associated data. We comply with GDPR right-to-erasure requests. Delete your account → (/help/security/delete-account) ## Technical & Troubleshooting ### What are the system requirements? URL: https://storyfolder.com/#faq-system-requirements macOS 11 Big Sur or newer (Apple Silicon or Intel) and Windows 10 (64-bit) or newer. 8 GB of RAM recommended, 1 GB of free disk space plus room for your video cache. Install guide → (/help/getting-started/install) ### My video import failed. What now? URL: https://storyfolder.com/#faq-import-failed Most failures are private URLs, unsupported codecs, or network blips. Walk through the Troubleshooting Imports (/help/troubleshooting/import-failed) checklist — it covers the common fixes (re-encode to MP4 H.264, check internet, try a fresh URL). If you're still stuck, reply to any email from us. ### I downloaded the app but can't sign in. URL: https://storyfolder.com/#faq-activation-stuck The desktop app uses your browser to authenticate. If the handoff failed, walk through the Activation troubleshooting guide (/help/troubleshooting/activation) — or simpler, deactivate the machine from your account page (/account/machines) and try Connect Your Account again. --- # Create your account URL: https://storyfolder.com/help/getting-started/create-account Section: Getting started Last updated: 2026-10-09 Sign up for StoryFolder in under a minute — no credit card required for the Free plan. # Create your account You'll need a free StoryFolder account before you can use the desktop app. It takes about a minute, and you don't need a credit card to start on the Free plan (the Pro trial asks for one). ## How do I create an account? 1. Go to storyfolder.com/signup. 2. Enter your full name, email address, and a password. 3. Click Create account. 4. You're in. You'll be sent straight to the onboarding screen, where you can pick a plan or jump right into the app. ## Do I need to verify my email? If we need to verify your address, we'll email you a confirmation link. Click it once and you're done. You can keep using the app while you wait. ## Can I sign up with Google? Not at the moment. Email and password sign-up is the supported path today. If you'd prefer to skip remembering a password, you can use a **[passwordless sign-in link](https://storyfolder.com/help/account/sign-in-link)** to log in instead. ## What if I already have an account? Sign in at **[storyfolder.com/signin](https://storyfolder.com/signin)** instead, or open the desktop app and click **Connect your account** to authenticate. ## How do I pick a plan? After you sign up, you'll see the plan selector. Here's the short version: | Plan | Best for | | --- | --- | | **Free** | Trying the app, casual study, up to 6 boards of 50 shots, with custom fields and 100 shots of AI Autofill included. | | **Pro** | Professionals who need unlimited boards and shots, unlimited AI Autofill, all exports, and password-protected sharing. | | **Teams** *(coming soon)* | Agencies and studios that need shared seats and unlimited client viewers. | Pro includes a **14-day free trial**. You can switch or cancel anytime. See **[Compare plans](https://storyfolder.com/help/billing/plans)** for the full breakdown. ## Next step → **[Install the app](https://storyfolder.com/help/getting-started/install)** --- # Install the StoryFolder desktop app URL: https://storyfolder.com/help/getting-started/install Section: Getting started Last updated: 2026-10-09 Download and install StoryFolder on macOS or Windows. # Install the app StoryFolder runs as a native desktop application on macOS and Windows. All of the heavy lifting — shot detection, transcoding, exporting — happens on your machine. ## How do I install StoryFolder on a Mac? 1. Go to storyfolder.com/download and click the macOS button. The download is a .dmg file. 2. Open the .dmg file from your Downloads folder. 3. Drag the StoryFolder icon into your Applications folder. 4. Eject the disk image and open StoryFolder from Applications, Launchpad, or Spotlight. 5. The first time you open it, macOS may ask you to confirm. Click Open. > **Tip:** There are two separate Mac downloads — one built for Apple silicon (M-series) and one for Intel — and each runs natively on its own chip. There is no universal build. The download page detects your chip and puts the matching build on the macOS button, with a link to the other one right underneath. If you're not sure which you have, check the Apple menu → **About This Mac**. ## How do I install StoryFolder on Windows? 1. Go to storyfolder.com/download and click the Windows button. The download is a .exe installer. 2. Open the installer from your Downloads folder. 3. If Windows SmartScreen shows a warning, click More info → Run anyway. StoryFolder is digitally signed but new releases sometimes trip the filter for a few days. 4. Follow the prompts. Default install location is fine. 5. Launch StoryFolder from the Start menu. ## What are the system requirements? | Requirement | Mac | Windows | | --- | --- | --- | | Operating system | macOS 11 Big Sur or newer | Windows 10 (64-bit) or newer | | Architecture | Apple Silicon or Intel | x64 | | Free disk space | 1 GB for the app + room for your video cache | 1 GB for the app + room for your video cache | | Memory | 8 GB recommended | 8 GB recommended | | Internet | Required for sign-in, AI features, and sharing | Required for sign-in, AI features, and sharing | ## How do I get app updates? StoryFolder checks for updates automatically every time it launches. - When a new version is available, you'll see a banner inside the app. - Click **Download Update** to fetch it. The app keeps running while it downloads. - When it's ready, click **Restart Now** to install. You can also check manually under **About → Check for updates**. You can choose between two release channels under **Preferences → Updates**: - **Beta** (recommended): stable, public releases. - **Alpha**: previews of unreleased features. Expect occasional rough edges. ## Where does StoryFolder store its files? The app stores its local database, cached thumbnails, and settings in your user's app data folder: - **macOS:** `~/Library/Application Support/StoryFolder` - **Windows:** `%APPDATA%\StoryFolder` You usually never need to touch these folders directly. If support asks you to send logs, see **[Send us your logs](https://storyfolder.com/help/troubleshooting/logs)**. ## Next step → **[Connect your account](https://storyfolder.com/help/getting-started/connect-account)** --- # Connect your account URL: https://storyfolder.com/help/getting-started/connect-account Section: Getting started Last updated: 2026-10-09 Link the desktop app to your StoryFolder account. # Connect your account The first time you open the desktop app, it needs to know who you are. This is what we call *connecting* the app to your StoryFolder account. ## How do I connect the desktop app to my account? 1. Open StoryFolder. You'll see the Sign In screen. 2. Click Connect your account. The app will open your default web browser to storyfolder.com/auth-app. 3. Sign in there with your StoryFolder email and password (or your sign-in link). 4. The browser tab will say “Authenticating…” and then automatically hand control back to the desktop app. 5. You should see the StoryFolder home screen with your projects. You're connected. > **Tip:** This pattern means your password is only ever entered on a real website with the URL bar visible — never inside a native app window. It also lets you use future browser-based sign-in methods (like social login) without re-installing. ## What if the browser handoff doesn't work? Sometimes the browser opens but the desktop app doesn't pick up the activation. To fix it: 1. Make sure StoryFolder is **still running** when the browser tab finishes loading. 2. If the browser shows a button like **Open StoryFolder**, click it. 3. If your browser asks whether to open a `storyfolder://` link, click **Open** or **Always allow**. 4. If nothing happens, copy the URL from the browser, switch to the desktop app, paste it into the address bar of the sign-in screen, and press `Enter`. Still stuck? See **[Activation problems](https://storyfolder.com/help/troubleshooting/activation)**. ## How many machines can I sign in on? That depends on your plan: - **Free and Pro:** 1 active machine at a time. - **Teams** *(coming soon)* will add shared, multi-seat workspaces. If you hit the limit, you can free up a slot by deactivating an old machine from **[your account page](https://storyfolder.com/help/account/machines)** or from inside the desktop app under **Preferences → Account → Deactivate Machine**. ## How do I sign in on a second computer? Just install the app on the new computer and run through the same **Connect your account** flow. If you're under your machine limit, it will activate immediately. If you're over, you'll be told which slot to free up first. ## How do I sign out? Open **Preferences → Account** and click **Deactivate Machine**. The app returns to the Sign In screen. Your projects stay safe on the server, ready to come back when you sign in again. ## Next step → **[Import your first video](https://storyfolder.com/help/getting-started/first-import)** --- # Import your first video URL: https://storyfolder.com/help/getting-started/first-import Section: Getting started Last updated: 2026-10-09 Convert your first video into a storyboard in under five minutes. # Import your first video Time to see what StoryFolder does. The first import is short — pick a clip you'd like to study, and within a minute or two you'll be looking at a fully detected storyboard. ## What kind of video should I start with? For your very first import, we recommend something short and visually distinct: - A 60–90 second ad you admire (Apple, Nike, Dollar Shave Club). - A music video. - A movie trailer. - A YouTube tutorial you're studying. Long features work great too — they just take longer to process the first time. ## How do I import from YouTube? 1. From the StoryFolder home screen, find the URL bar that reads “Paste a YouTube link”. 2. Paste the link to a public video on YouTube (including Shorts). 3. Press Enter or click Import. StoryFolder will fetch the video and start processing. See **[Import from YouTube](https://storyfolder.com/help/importing/from-url)** for the full reference, including supported URL formats and private/unlisted videos. ## How do I import a video file from my computer? 1. From the home screen, click + New in the top-right and pick Import from File…. 2. Choose any .mp4, .mov, .mkv, .avi, .webm, or .mts file. 3. Click Open. StoryFolder starts processing right away. See **[Supported formats](https://storyfolder.com/help/importing/supported-formats)** for the full list. ## What happens during processing? You'll see a progress screen with a thumbnail of the video and a percentage. Under the hood, StoryFolder is: 1. Pulling or transcoding the video to a workable format. 2. Generating thumbnails for every frame it needs. 3. Running AI shot detection to find every cut. 4. Building the interactive storyboard. Most short videos finish in under a minute. Longer features can take a few minutes. ## What do I do once it's done? When processing finishes, you'll see a checkmark and a **View Storyboard** button. Click it. You'll land in the **Edit view** — your storyboard. From here you can: - Click any shot to add notes. - Use the tools on the left to split or merge shots, or pick custom thumbnails. - Toggle between storyboard, list, and grid views with `B` / `L` / `T`. - Share your work with a single click. Don't worry about getting it perfect — see **[Your first week](https://storyfolder.com/help/getting-started/first-week)** for a relaxed walkthrough. ## Help! My import failed. A few common reasons: - The link is to a private or paywalled video. - The file is corrupt or in an unsupported codec. - Your internet connection dropped during a URL import. See **[Troubleshooting imports](https://storyfolder.com/help/importing/troubleshooting)** for fixes. ## Next step → **[Your first week](https://storyfolder.com/help/getting-started/first-week)** --- # Your first week with StoryFolder URL: https://storyfolder.com/help/getting-started/first-week Section: Getting started Last updated: 2026-10-09 A relaxed seven-day tour of every part of the app, so you build a workflow that fits you. # Your first week with StoryFolder You don't need to learn everything on day one. This guide is a gentle, day-by-day tour through every major part of the app. Skip ahead any time — and skip days entirely if you already know what you want. ## Day 1 — Import and explore Goal: get comfortable with the editor. - Import one short video. ([How](https://storyfolder.com/help/getting-started/first-import)) - Open the storyboard. - Try the three view modes: `B` (storyboard), `L` (list), `T` (thumbnail grid). - Click around. Press `Space` to play the video. - Don't take notes yet — just see how the shots are laid out. ## Day 2 — Refine the shot list Goal: make the storyboard match what your eye sees. - Drag the **AI shot detection sensitivity** slider on the left. Lower = fewer shots; higher = more. - Press `C` to switch to the **Split** tool. Click where you want to split a shot. - Press `J` for **Merge**. Click shots that should be one section. - Press `F` for **Frame Selector**. Pick a better thumbnail for any shot. - Press `D` to return to the default cursor. Full reference: **[Splitting & merging shots](https://storyfolder.com/help/editing/split-merge)**. ## Day 3 — Take notes Goal: capture your first observations. - Click a shot. The **notes panel** opens on the right. - Try the default fields: *Key Takeaways*, *Interpretation*, *Story*, *Action*, *Messaging*, *Emotional Tone*, *Visuals / Cinematography*. - Select multiple shots (`Shift`-click) and take a single note across all of them. See **[Adding notes](https://storyfolder.com/help/notes/adding-notes)**. ## Day 4 — Make it yours Goal: customize your note fields. - Open **Preferences → Notes & Data**. - Create a new category — e.g. *Lighting* or *Brand strategy*. - Add a custom field. Pick a type: **text**, **dropdown**, **tag**, or **checkbox**. - Try the **AI field discovery** tool: type a topic ("cinematography", "ad analysis") and let the assistant suggest fields you can add with one click. See **[Custom fields](https://storyfolder.com/help/notes/custom-fields)** and **[AI field discovery](https://storyfolder.com/help/notes/ai-discovery)**. ## Day 5 — Share Goal: get a beautiful link you can send to anyone. - Click **Share Link** in the top-right of the editor. - Click **Publish**. - Choose a privacy level: public, link-only, or password-protected. - Copy the link. Paste it in Slack, email, or a doc. The shared page is mobile-friendly and lets viewers switch between storyboard, grid, and list views. See **[Publish a share link](https://storyfolder.com/help/sharing/publish)**. ## Day 6 — Export Goal: get your work out of StoryFolder. - Press `X` or click the workflow switcher and pick **Export**. - Toggle the formats you want: PDF storyboard, image set, shot list spreadsheet (Pro), video clips (Pro), scripts. - Pick a destination folder. - Click **Add to Queue**. See **[Export options overview](https://storyfolder.com/help/exporting/overview)**. ## Day 7 — Analyze Goal: see your storyboard as data. - Press `A` or switch to the **Analyze** view. - Look at the duration metrics: average, median, longest, shortest shot. - Scroll through the distribution charts. Each non-text note field becomes a bar chart showing how often each value appears. See **[Shot duration metrics](https://storyfolder.com/help/analyze/metrics)**. ## After your first week You now know every major workflow in StoryFolder. From here: - Pick a video you've always wanted to break down and go deep. - Build a category of custom note fields tailored to *your* work. - Bookmark **[Keyboard shortcuts](https://storyfolder.com/help/editing/shortcuts)** — they make a huge difference. - If you're on the Free plan and bumping into limits, see **[Compare plans](https://storyfolder.com/help/billing/plans)**. Welcome aboard. --- # Import from YouTube URL: https://storyfolder.com/help/importing/from-url Section: Importing videos Last updated: 2026-10-09 How to pull a video into StoryFolder from a URL. # Import from YouTube You can build a storyboard from any public YouTube video by pasting its URL into StoryFolder. ## How do I import from a URL? 1. Open the desktop app and go to the home screen. 2. Click the URL input at the top that reads “Paste a YouTube link”. 3. Paste the link. 4. Press Enter or click the Import button. StoryFolder will fetch the video, transcode the bits it needs, and start detecting shots. ## Which URL formats work? **YouTube** - `https://youtube.com/watch?v=…` - `https://www.youtube.com/watch?v=…` - `https://youtu.be/…` (short links) - `https://youtube.com/shorts/…` (Shorts) - `https://m.youtube.com/watch?v=…` (mobile) - `https://youtube.com/embed/…` If your URL looks valid but isn't accepted, double-check that the video is public. ## Can I import a private or unlisted video? - **YouTube unlisted videos** typically work — anyone with the link can access them. - **YouTube private videos** do not work. The link only authorizes specific accounts in your browser session, not StoryFolder. If you have the underlying file, the cleanest workaround is to **[import it as a file](https://storyfolder.com/help/importing/from-file)**. ## What metadata is captured from a URL import? When you import from a URL, StoryFolder pulls: - The video title. - Duration. - A reference thumbnail (used in your project list). - The source URL (so you can jump back to it later). You can rename a project at any time from the home screen. ## How do I open the original source again? In the home screen, hover the project tile and click the **⋯** menu. Pick **Open on YouTube** — your default browser will jump straight to the original video. ## Does the original video get uploaded somewhere? No. The video is fetched directly to your local cache. It never travels through StoryFolder's servers. The only thing the server sees is your *notes and storyboard metadata*, and only when you choose to publish a [share link](https://storyfolder.com/help/sharing/publish). ## Troubleshooting - **“Could not retrieve video metadata.”** The URL is private, taken down, or the video has region restrictions for your IP. - **The import gets stuck at 0%.** Check your internet connection. Cancel and try again. - **The import works but the shots look wrong.** Drag the **[AI shot detection sensitivity slider](https://storyfolder.com/help/editing/sensitivity)** to refine. For deeper fixes, see **[Troubleshooting imports](https://storyfolder.com/help/importing/troubleshooting)**. ## Next step → **[Import from a video file](https://storyfolder.com/help/importing/from-file)** --- # Import from a video file URL: https://storyfolder.com/help/importing/from-file Section: Importing videos Last updated: 2026-10-09 How to bring a video file from your computer into StoryFolder. # Import from a video file If you have the video as a file on your computer, you can import it directly. This is the fastest, most reliable way to bring a clip into StoryFolder — no internet round-trip, no link restrictions. ## How do I import a video file? 1. Open StoryFolder and go to the home screen. 2. Click the + New button in the top-right corner. 3. Pick Import from File…. 4. In the file picker, choose your video. 5. Click Open. The import starts immediately. You'll see the same progress screen as with URL imports. ## What file formats are supported? StoryFolder accepts: - `.mp4` - `.mov` - `.mkv` - `.avi` - `.webm` - `.mts` See **[Supported formats](https://storyfolder.com/help/importing/supported-formats)** for details on codecs and edge cases. ## Where should I keep my source video? You can keep it anywhere — your Desktop, an external drive, a network mount. StoryFolder records the path you imported from so you can use **Show in Finder** / **Show in File Explorer** later from the project's **⋯** menu. > **Tip:** If you delete the source file from disk before exporting **[video clips](https://storyfolder.com/help/exporting/clips)**, you may not be able to re-export at full quality. PDF and image exports use StoryFolder's internal cache and are unaffected. ## How big can my video be? There's no hard cap, but the practical considerations are: - **Disk space.** StoryFolder generates a thumbnail cache during import. Budget roughly 10–20% of the source file size for cache. - **Processing time.** Roughly 0.5–1× real-time for shot detection on a modern machine. A 90-minute feature takes 45–90 minutes the first time. - **Memory.** 8 GB of RAM is comfortable. Heavy 4K HDR sources benefit from 16 GB+. ## Can I import multiple files at once? Right now, one at a time. Drag-and-drop multi-import is on our roadmap. ## Can I drag and drop a file onto the app? Yes — drop a single video file anywhere on the StoryFolder window and the import will start automatically. ## What happens to my video file? Your original file is left untouched. StoryFolder: 1. Reads it in place. 2. Generates and caches working thumbnails in its app data folder. 3. Saves only metadata (the shot list, your notes) to its local database. Your video file never leaves your computer. ## Next step → **[Supported formats](https://storyfolder.com/help/importing/supported-formats)** --- # Supported formats URL: https://storyfolder.com/help/importing/supported-formats Section: Importing videos Last updated: 2026-10-09 Which video file types and online sources StoryFolder can import. # Supported formats StoryFolder uses FFmpeg under the hood, so most modern video formats work out of the box. If a video plays in QuickTime, VLC, or a web browser, there's a very good chance StoryFolder can import it too. ## What file types can I import? | Extension | Container | Common codecs | Notes | | --- | --- | --- | --- | | `.mp4` | MPEG-4 | H.264, H.265 (HEVC), AV1 | The most reliable choice for new imports. | | `.mov` | QuickTime | ProRes, H.264, H.265 | Native to Final Cut, Premiere exports. | | `.mkv` | Matroska | Almost anything | Great compatibility. | | `.avi` | AVI | DivX, Xvid, MJPEG | Older codecs supported. | | `.webm` | WebM | VP8, VP9, AV1 | Common from web downloads. | | `.mts` | AVCHD | H.264 | Common from consumer camcorders. | ## What online sources can I import from? - **YouTube** — public videos, including Shorts. See **[Import from YouTube](https://storyfolder.com/help/importing/from-url)** for URL formats and private-video caveats. ## What's *not* supported? - DRM-protected files (iTunes purchases, Netflix downloads, etc.). - Live streams. You'll need to record first, then import. - VR / 360° videos — StoryFolder treats them as flat video; immersive playback isn't supported. - Image sequences (e.g. EXR / DPX render frames) — mux them into an MP4 first. - Audio-only files. ## Can I import 4K or HDR video? Yes. 4K imports fine, and StoryFolder will display thumbnails at preview resolution. HDR sources are tone-mapped to SDR for thumbnails so they display correctly on standard monitors. If a high-resolution import is slow on your machine, you can pre-transcode to 1080p — it'll process noticeably faster. ## What frame rate works? Anything FFmpeg can decode. We've tested 23.976, 24, 25, 29.97, 30, 50, 59.94, 60, 120, and variable frame rate (VFR) footage. VFR imports are remuxed to a constant frame rate for shot detection. ## What aspect ratios are supported? Any. 16:9, 9:16 (vertical), 4:3, 2.39:1, square — StoryFolder lays out the storyboard around whatever proportions your video uses. ## Help — my file doesn't import If a file refuses to import: 1. Open it in **VLC** or **QuickTime** and confirm it plays. 2. If it plays, try re-exporting to `.mp4` (H.264) — this fixes most edge cases. 3. If you get an error referencing a codec, you may have an exotic file. See **[Troubleshooting imports](https://storyfolder.com/help/importing/troubleshooting)**. --- # What happens after import URL: https://storyfolder.com/help/importing/processing Section: Importing videos Last updated: 2026-10-09 Understand the steps StoryFolder runs to turn your video into a storyboard. # What happens after import Once you start an import, StoryFolder runs through several steps to turn a raw video into an interactive storyboard. Knowing what's happening will help you understand the progress bar and make better decisions about when to step in. ## What are the stages of an import? 1. Fetch / read. For URL imports, the video is downloaded to a local cache. For file imports, StoryFolder simply opens the file on disk. 2. Probe. Duration, frame rate, resolution, audio tracks, and codec are read. 3. Transcode (if needed). Exotic codecs are remuxed or transcoded into a working format using FFmpeg. 4. Thumbnail cache. Frame thumbnails are generated at preview resolution so the editor stays snappy. 5. Shot detection. StoryFolder's AI shot detector walks the video and marks every cut, fade, or hard transition as a new shot. 6. Build storyboard. The shots are laid out on your interactive canvas. You're done. ## How long should it take? Rough rules of thumb on a modern Mac or PC: - A 60–90 second YouTube clip: under a minute. - A 5-minute online video: 1–3 minutes. - A 30-minute episode: 5–15 minutes. - A 90–120 minute feature: 30 minutes to an hour or more. Factors that affect speed: - CPU and RAM available. - Source resolution (1080p is fastest; 4K HDR takes longer). - Whether the codec needs to be transcoded. - Whether other heavy apps are running. ## Can I work on other projects while one is importing? Yes. You can leave the import running and use the rest of the app on a different project. Just keep StoryFolder open and don't put the computer to sleep mid-import. ## What does the AI shot detector actually do? It looks at the visual difference between consecutive frames. When the difference exceeds a threshold, it marks that point as a shot boundary. It's tuned to ignore camera shake, fast motion, and light flicker, while catching real cuts, dissolves, and wipes. The threshold is the **sensitivity** value. You can adjust it after import using the slider — see **[AI shot detection sensitivity](https://storyfolder.com/help/editing/sensitivity)**. ## Can I change the result after detection? Absolutely. Detection is a starting point, not a finished product. You can: - Increase or decrease the sensitivity slider. - Use the **Split** tool to add cuts where the AI missed them. - Use the **Merge** tool to combine consecutive shots into a section. - Use the **Frame Selector** to pick a different representative thumbnail. See **[Splitting & merging shots](https://storyfolder.com/help/editing/split-merge)**. ## Where does the data live? - The **source video** stays where it was (your folder, or downloaded to StoryFolder's cache for URL imports). - The **shot list and notes** are saved in StoryFolder's local database. - The **thumbnail cache** is in the app data folder so the editor is fast to reopen. Nothing about your video or notes leaves your computer unless you choose to **[publish a share link](https://storyfolder.com/help/sharing/publish)**. ## Next step → **[The editor at a glance](https://storyfolder.com/help/editing/overview)** --- # Troubleshooting imports URL: https://storyfolder.com/help/importing/troubleshooting Section: Importing videos Last updated: 2026-10-09 Fixes for the most common reasons a video won't import. # Troubleshooting imports Most imports just work. When one doesn't, it's usually one of a handful of reasons. Walk through these in order. ## Why did my import fail? The error message in the progress screen is the first clue. The most common causes are: - **Private or unavailable URL.** YouTube videos can be private, region-locked, age-gated, deleted, or paywalled. - **Unsupported codec.** Most files work, but some exotic codecs need re-encoding first. - **Network blip.** URL imports can fail if your connection drops mid-download. - **Disk space.** If you're nearly out of space, the import will fail. - **Corrupt file.** A partially downloaded or write-truncated file won't decode. ## How do I retry a failed import? 1. Go back to the home screen. 2. Find the failed project in the list. Hover the tile and click the ⋯ menu. 3. Pick Delete to remove the failed attempt. 4. Start the import again from the home screen. ## “Could not retrieve video metadata.” This means StoryFolder couldn't reach the URL. Check: - The video is **public** (or unlisted with a working link). - Your **internet connection** is up. - The video isn't region-restricted in your country. - You haven't hit a YouTube rate limit (very rare; usually resolves itself in a few minutes). ## “Unsupported codec.” Some files use codecs FFmpeg can't decode in the way StoryFolder needs. Quick fix: re-export the file to `.mp4` (H.264) using HandBrake, Adobe Media Encoder, FFmpeg directly, or QuickTime's **Export As…** option. Then import the new file. ## My import is stuck at 0%. For URL imports, this almost always means the download hasn't started: - Check your internet connection. - Cancel and retry. - If retrying doesn't work, try downloading the video manually (with a browser extension or `yt-dlp`) and importing the file directly. For file imports stuck at 0%, the file may be locked by another app or stored on a network drive that just disconnected. Try copying it to your desktop first. ## My import is stuck at 99%. The shot detector is still finishing up. Long videos can sit near 99% for a while as the final pass completes. Give it a couple of minutes. If it never finishes, see **[Send us your logs](https://storyfolder.com/help/troubleshooting/logs)** — that helps us diagnose the exact stage that hung. ## The import completed, but the shots are way off. That's the AI shot detector being too sensitive or not sensitive enough for this particular video. - Open the project. - Drag the **AI shot detection sensitivity slider** in the left column. - Press `C` to manually **Split** missed cuts. - Press `J` to **Merge** unwanted splits. Full guide: **[AI shot detection sensitivity](https://storyfolder.com/help/editing/sensitivity)**. ## The audio is missing or the video is silent. StoryFolder doesn't strip audio. If the source has audio, it'll be there when you play the video inside the editor. If audio is missing: - Confirm the source plays with sound in VLC or QuickTime. - Some videos have only secondary audio tracks (e.g. dubbed films). Try re-encoding with the desired track as track 1. ## I'm out of disk space. Each import generates a thumbnail cache and (for URL imports) downloads the source. To free space: - Delete projects you don't need from the home screen. - Look at your app data folder (see **[Install the app](https://storyfolder.com/help/getting-started/install)**) and remove orphaned caches. - Move your StoryFolder data to a larger drive (advanced — contact support before doing this). ## Still stuck? Send us your logs and we'll dig in: → **[Send us your logs](https://storyfolder.com/help/troubleshooting/logs)** → **[Contact support](https://storyfolder.com/help/troubleshooting/contact-support)** --- # Organize your StoryFolder library URL: https://storyfolder.com/help/library/overview Section: library Last updated: 2026-10-09 Choose between folders, collections and quick filters, and see how they work with search and metadata. # Organize your StoryFolder library Four tools, and they answer different questions. Folders hold videos. Collections hold shots you picked by hand. Quick filters save a question whose answer is allowed to change. Video metadata records a fact once, so search and filters can find it later. All four organise StoryFolder's own filing. **None of them moves, renames or deletes anything on your disk.** ## Choose the right tool | You want to | Use | Because | | --- | --- | --- | | Give a video one stable home | **[Folder](https://storyfolder.com/help/library/folders)** | Hierarchical filing, one home per video | | Keep a hand-picked set of shots | **[Collection](https://storyfolder.com/help/library/collections)** | Membership stays until you change it | | Re-run the same search | **[Quick filter](https://storyfolder.com/help/library/quick-filters)** | Results are worked out fresh every time | | Record a fact about a whole project | **[Video metadata](https://storyfolder.com/help/library/video-metadata)** | Type it once, then search and filter on it | ## Tour the library rail Down the left of the library: - **All items** — the library root. Every video, filed or not. - **Folders**, nested as deep as you like, each with the number of videos underneath it. - **Collections**, each with its shot count. Hidden when you have none. - **Quick filters**, your saved searches. Hidden when you have none. - **Shares** — the storyboards you have published. Not an organising tool; a list of what is out in the world. - **Trash** — projects and folders you removed. Also not an organising tool. Every folder, collection and quick filter has its own address inside the app, so a link you keep takes you back to it. Where you are standing changes what search covers. That is the single most useful thing to know about the rail — see [search scope](#search-scope). ## A workflow that scales 1. Make a shallow folder structure around something stable — a client, a series, a year. Filing is worth doing when the boundary will still make sense in a year. 2. Add video-level fields for the facts that describe whole projects: client, job number, status, rights. 3. Search and filter to find material. Try this before building more structure — most "I need a folder for this" turns out to be a search. 4. Save the questions you keep asking as quick filters. 5. Save the answers that must stop moving — selects, approvals, delivery sets — as collections. Resist building a deep folder tree on day one. You cannot know your own access patterns yet, and a tree built on guesses is harder to undo than to skip. ## Folders vs collections | | Folders | Collections | | --- | --- | --- | | Hold | Videos | Shots | | Membership | One folder per video | Any shots, from any number of videos | | Nesting | Yes | No | | Changes on its own | No | No | A folder is where a project lives. A collection is the pile on the desk — the selects, the reference set, the shots you keep coming back to, gathered from across different videos. Moving a video between folders does not move its file. Trashing a folder sends its contents to the Trash with it and deletes nothing from your disk. Deleting a collection deletes the collection, never the shots it pointed at. ## Collections vs quick filters A collection stores **shots**. A quick filter stores a **question**. Say you filter to *Rating is at least 4* and save it. Tomorrow you rate two more shots four stars: they appear in the quick filter, because it re-asks the question. Drop a shot to three stars and it leaves. Now put those same shots in a collection called *Approved selects*. Re-rating a shot changes nothing about what is in the collection — the set is the set, which is exactly what you want when it is going to a client. Rule of thumb: **an audit is a quick filter; a delivery is a collection.** ## Search scope One search box, four different reaches, decided by where you are standing: | Standing in | Search covers | | --- | --- | | **All items** | The whole library, filed videos included | | A **folder** | That folder and everything nested under it | | A **collection** | Only the shots in that collection | | A **quick filter** | Its saved query, filters and layout | Finding something anywhere and finding it in this one client's work differ by where you clicked, and nothing else. See [Search your library](https://storyfolder.com/help/library/search). ## Naming things Advisory, not rules — but these hold up: - **Folders**: stable nouns. A client, a series, a year. - **Collections**: the deliverable. *Approved selects*, *Sizzle candidates*. - **Quick filters**: the question, not the contents. *Needs transcript review* beats *Interviews 3*, because a quick filter's contents change and its question does not. ## Related pages - [Folders](https://storyfolder.com/help/library/folders) · [Collections](https://storyfolder.com/help/library/collections) · [Quick filters](https://storyfolder.com/help/library/quick-filters) - [Search your library](https://storyfolder.com/help/library/search) · [Video metadata](https://storyfolder.com/help/library/video-metadata) ## Next step → **[Folders](https://storyfolder.com/help/library/folders)** --- # Organize videos with folders URL: https://storyfolder.com/help/library/folders Section: library Last updated: 2026-10-09 Build a folder structure, move videos and folders safely, and understand what a folder does and doesn't move. # Organize videos with folders Folders are where videos live. A video sits in one folder or in none, folders nest inside folders, and opening one shows everything underneath it — not just its direct children. **A folder is StoryFolder's filing, not your disk's.** Moving a project between folders never moves, renames or copies the video file, and StoryFolder does not manage where your originals live. ## Create a folder 1. In the library rail, use New folder on the Library section. 2. Name it. 3. It appears in the rail, with a count of the videos underneath it. To make a folder inside another, right-click the parent and choose **New subfolder**. ## Move a video into a folder **Drag the video onto the folder** in the rail. One video per drag, and a toast confirms where it went. A video that was unfiled leaves the root list and appears in the folder. It is still in **All items** — that is the library root, and it shows everything. You can also import straight into a folder: open it first, then import. Dragging a video out of the Trash onto a folder restores it and files it in one motion, so it lands live in the folder rather than staying deleted. ## Nest or move a folder Drag a folder onto another folder to nest it, and onto the root to bring it back out. A folder cannot be dropped inside itself or inside its own subtree — the drop is simply refused rather than producing a loop. Opening a folder expands the tree to reveal it, so a folder deep in a structure never leaves you looking at a collapsed parent wondering where you are. ## Open, search and link to a folder Opening a folder shows that folder **and everything nested under it**, and it narrows search and filters to the same subtree. From **All items** the same query covers your whole library. That difference is the one to internalise: a search that "finds nothing" from inside a folder often finds plenty from All items. Every folder has its own address in the app, so you can keep a link to one and come back to it. ## Rename a folder Double-click the rail row to rename in place, or right-click and choose **Rename**. Renaming affects the folder only. The videos inside it, their metadata and their files are untouched. ## Move a folder to the Trash > **Warning:** Right-click a folder and choose **Move to Trash**. If it has anything in it, StoryFolder asks first and says what will happen: everything inside the folder goes to the Trash with it and is hidden from the rail until you restore the folder. **Nothing is deleted from your disk.** Your video files stay exactly where they are. An empty folder goes straight to the Trash without asking, because there is nothing to lose. Restoring a folder from the Trash brings back what went with it. ## Folder practices that scale - Organise by boundaries that will still be true next year — a client, a series, an account. - Keep the tree shallow enough to scan in the rail. Depth costs you every time you file something. - Use [video metadata](https://storyfolder.com/help/library/video-metadata) for facts that cut across folders. *Status* is a field, not a folder — a video can only be in one folder, but it can carry every field you define. - Use [collections](https://storyfolder.com/help/library/collections) for selects, and [quick filters](https://storyfolder.com/help/library/quick-filters) for conditions that change. ## Troubleshooting | What you see | What is happening | | --- | --- | | A video seems to be missing | Check **All items**, then the Trash. A filed video is not in the root list, it is in its folder | | A search finds fewer things inside a folder | Expected — folder scope is that subtree only. Go to All items | | Moving a video did not move the file | Expected. Folders are StoryFolder's filing, not your drive's | | A folder will not drop where you want it | A folder cannot be nested inside itself or its own descendants | ## Related pages - [Organize your StoryFolder library](https://storyfolder.com/help/library/overview) - [Collections](https://storyfolder.com/help/library/collections) · [Quick filters](https://storyfolder.com/help/library/quick-filters) - [Search your library](https://storyfolder.com/help/library/search) · [Video metadata](https://storyfolder.com/help/library/video-metadata) ## Next step → **[Collections](https://storyfolder.com/help/library/collections)** --- # Gather shots in collections URL: https://storyfolder.com/help/library/collections Section: library Last updated: 2026-10-09 Build a hand-picked set of shots from any number of videos, and keep it exactly as you left it. # Gather shots in collections A collection is a named set of shots you chose by hand. It holds those shots until you change it — nothing about editing a shot's metadata adds it to a collection or takes it out. Folders file **videos**. Quick filters save a **question**. A collection is the pile on the desk: the selects, the reference set, the shots going to the client. Collections are **free on every plan**. ## Create a collection from selected shots 1. Select one or more shots, in the editor or in the library. 2. In the inspector, choose Add to collection. 3. Choose New collection…. 4. Name it, and confirm. It appears in the rail under **Collections** with its shot count beside it. ## Add shots to an existing collection Same path — select shots, **Add to collection**, then pick the collection from the list. Collections you have already added this shot to are ticked, so you can see at a glance where it already lives. - **From any video.** A collection is not tied to the project you started it from; add from as many videos as you like. - **Several shots at once.** Select them all, then add once. - **A shot that is already in it is skipped**, not duplicated. Adding twice is harmless. The shot count in the rail is the confirmation worth reading — if it did not go up by what you expected, some of what you selected was already there. ## Work inside a collection Opening a collection shows its shots with their own search box and filter bar, so a large selects pile is still something you can type into. - Shots are grouped by the video they came from, so a collection drawn from four jobs still reads as four jobs. - The **result count** tells you how many shots match what you have typed. - If nothing matches, the collection says so and offers **Clear search & filters** rather than just looking empty. - Selecting a shot shows it in the inspector, where you can read and edit its notes and metadata without leaving the collection. Each collection has its own address in the app, so you can keep a link to one. ## Remove shots from a collection Select the shots inside the collection and choose **Remove from collection** in the inspector. Removing is about membership only. The shot, its metadata, its video and the file on your disk are all untouched — you are taking it off the list, not deleting anything. ## Rename or delete a collection Double-click the rail row to rename in place, or right-click for **Rename** and **Delete**. > **Warning:** StoryFolder asks first and says exactly what happens: the collection is deleted for good and cannot be undone. **Your videos and their shots are untouched** — what you lose is the list, not the material. Collections have no Trash of their own. ## When to use a collection - **Approved selects** that must not change because somebody edited a field. - **A delivery set** you will export or share as it stands. - **A cross-project reference set** — every shot of the product from four different jobs. When to use something else: a recurring condition like *rating is at least 4* or *usable is ticked* is a [quick filter](https://storyfolder.com/help/library/quick-filters), not a collection. If you find yourself repeatedly adding and removing shots to keep a collection "current", you wanted a quick filter. The reverse move is also common and correct: build a quick filter, get the set right, then put those shots into a collection so the answer stops moving. ## Troubleshooting | What you see | What is happening | | --- | --- | | The collection looks empty | A search or filter is active inside it. Use **Clear search & filters** | | A shot you expected is not there | Membership is manual. Nothing adds shots for you | | Metadata changed but membership did not | Working as intended — that is the difference from a quick filter | | The count went up by less than you added | Shots already in the collection are skipped rather than duplicated | ## Related pages - [Organize your StoryFolder library](https://storyfolder.com/help/library/overview) - [Quick filters](https://storyfolder.com/help/library/quick-filters) · [Folders](https://storyfolder.com/help/library/folders) - [Selecting shots](https://storyfolder.com/help/editing/selecting) · [Search your library](https://storyfolder.com/help/library/search) ## Next step → **[Quick filters](https://storyfolder.com/help/library/quick-filters)** --- # Save a library view with quick filters URL: https://storyfolder.com/help/library/quick-filters Section: library Last updated: 2026-10-09 Save a search — its query, its filter chips and its layout — as a destination you can return to. # Save a library view with quick filters A quick filter saves a **question**, not a list of shots. Arriving at one asks the question again against your library as it stands now, so its results move as your work does. Quick filters are **free on every plan**. ## What a quick filter saves Three things, together: - **The typed query** in the search box. - **The filter chips** you built, with their fields, operators and values. - **The card appearance** — how the results are laid out. A typed query on its own is enough to save. So is a single chip. What it does not save is the shots. That is the whole point, and it is the difference from a [collection](https://storyfolder.com/help/library/collections). ## Create a quick filter 1. Build the view you want: type a query, add filter chips, set the layout. 2. Click Save as quick filter on the chip bar — it appears as soon as there is something to save. 3. Name it after the question it answers. StoryFolder suggests a name from the chip you just built, like Location contains warehouse. 4. Confirm. It becomes a row in the rail under Quick filters, with its own address. ## Open a quick filter Arriving puts the query back in the box, applies the chips and applies the layout. The results and the count are worked out fresh, from your library as it is now. Each result names **why** it is in front of you — a filter you built, a field by its label, or **Transcript**. Read that line before you trust a surprising result; see [why a result matched](https://storyfolder.com/help/library/search#understand-why-a-result-matched). Leaving puts your own view back. A quick filter is a place you visit, not a mode that follows you around. ## Update a quick filter Change the query, the chips or the layout while you are standing in a saved quick filter and the bar offers **Save quick filter changes**. - Click it and the saved view is rewritten in place, keeping its name. - Ignore it and nothing is saved — navigate away and the quick filter is exactly as it was. There is no separate revert: leaving without saving is the revert. ## Rename or delete a quick filter Double-click the rail row to rename in place, or right-click for **Rename** and **Delete**. > **Warning:** StoryFolder asks first. The saved view is deleted for good and cannot be undone. **Your videos, shots and metadata are untouched** — you are deleting a saved question, not any material. ## Quick filters worth having - **Needs transcript review** — the videos you have transcribed but not checked. - **Four- and five-star interview shots** — *Rating is at least 4* plus whatever marks an interview in your own fields. - **A client, on location, usable** — a video field, a shot field and a checkbox in one view. - **Missing project information** — a video-level field that *is empty*, so unfilled projects surface themselves. The first three depend on fields you defined; a quick filter can only ask about metadata that exists. See [Custom fields](https://storyfolder.com/help/notes/custom-fields) and [Video metadata](https://storyfolder.com/help/library/video-metadata). ## Quick filters vs collections | | Quick filter | Collection | | --- | --- | --- | | Stores | The question | The shots | | Membership | Recalculated on arrival | Fixed until you change it | | Good for | Audits, recurring checks, work queues | Selects, approvals, delivery sets | The moment a set has to stop moving, move it: build the quick filter, get the results right, then add those shots to a collection. A delivery list that keeps changing because somebody edited a field is not a delivery list. ## Troubleshooting | What you see | What is happening | | --- | --- | | No **Save** button | Nothing has changed. There is no query, chip or layout change to save | | Results you did not expect | Read every chip and the query together, then check a result's match reason | | Something that used to be there has gone | The underlying metadata changed. That is the feature working | | Your changes did not stick | **Save quick filter changes** has to be clicked; leaving discards them | ## Related pages - [Organize your StoryFolder library](https://storyfolder.com/help/library/overview) - [Search your library](https://storyfolder.com/help/library/search) · [Collections](https://storyfolder.com/help/library/collections) - [Video metadata](https://storyfolder.com/help/library/video-metadata) ## Next step → **[Search your library](https://storyfolder.com/help/library/search)** --- # Search your library URL: https://storyfolder.com/help/library/search Section: library Last updated: 2026-10-09 Find videos and shots with words and structured filters, and understand why each result is in front of you. # Search your library One search box covers four things at once: your video **titles and descriptions**, the **shot fields** you fill in, the **video fields** you fill in, and **transcript text**. It searches what has been recorded. It does not look at the picture — a shot is findable because you, [Autofill](https://storyfolder.com/help/ai/autofill) or a transcript described it, not because it happens to be a wide shot of a warehouse. ## Start a search 1. Go to All items for the whole library, or open a folder or collection to search inside it. 2. Press /, or Cmd+F (Ctrl+F on Windows), which works even from inside another field. Clicking the box works too. 3. Type your query. 4. Read the result count, and the reason line on each result. ## What a text search reads | Read by typing | Not read by typing | | --- | --- | | Video title and description | **Rating** — no text to match | | **Text**, **Dropdown**, **Tag** and **Number** shot fields | **Checkbox** — no text to match | | The same four types of video field | The picture itself | | Transcript words, where a transcript is complete | | Rating and checkbox fields are reachable with a filter chip instead, which is the right tool for them anyway: *Rating is at least 4* is a cleaner question than any word you could type. Because video fields are searched too, typing a client name finds the projects filed against it, not just the shots that mention it. ## How words are matched Literal substring matching, case-insensitive. No fuzzy matching, no synonyms, no boolean syntax. Type two words and **both** must appear, in any order, **within the same value**. - `dock` finds a **Location** reading *Warehouse dock*. - `dock warehouse` finds it too — order does not matter. - `dock forklift` finds nothing, unless one value contains both words. A number field matches on the text of its value, so `4` matches 4, 24 and 400. The one forgiving search in StoryFolder is the transcript box inside the Transcript tab, which tolerates a word the recogniser split or misheard. See [Search, copy, and export a transcript](https://storyfolder.com/help/transcription/search-and-export). ## Narrow results with filters Chips are how you ask structured questions. 1. Add a filter and choose a field. 2. Choose an operator. What is offered depends on the field's type. 3. Enter or pick the value. 4. Add more chips, and combine them with a typed query if you like. | Field type | Operators you get | | --- | --- | | Text | contains, does not contain, is, is not, is empty, is not empty | | Dropdown | is, is not, is any of, is none of, is empty, is not empty | | Tag | has, does not have, has any of, has none of, has no tags, has any tag | | Rating | is exactly, is more than, is at least, is less than, is at most, is between, is rated, is not rated | | Number | is, is not, is more than, is at least, is less than, is at most, is between, is empty, is not empty | | Checkbox | is, is not | *Is empty* and *is not empty* are the ones people find late and then use constantly: they are how you find the gaps in your own notes. Remove one chip at a time, or clear them all, from the chip bar. ## Understand search scope | Standing in | Search covers | | --- | --- | | **All items** | The whole library, filed videos included | | A **folder** | That folder and everything nested under it | | A **collection** | Only the shots in that collection | | A **quick filter** | Its saved query, chips and layout | The editor has its own search over the open storyboard, which is a different box with a different scope — see [Search & filters](https://storyfolder.com/help/editing/search). ## Understand why a result matched Every result names what it matched on: a filter you built, a field by its label, or **Transcript**. Results are ordered by that, too. The conditions you built rank above a plain field hit, and a field hit ranks above a transcript hit — so a shot that is there because it satisfies your filter comes before one that is there because somebody said the word on camera. That line is the difference between trusting a result and guessing at it. When a search surprises you, read it first. ## Save a search as a quick filter Once a query and its chips are worth keeping, click **Save as quick filter** on the chip bar and name it after the question. Arriving at it later asks the question again — the results stay live as your metadata changes. See [Quick filters](https://storyfolder.com/help/library/quick-filters). ## Search tips - **Search one distinctive value before stacking chips.** Most "nothing matches" is one chip too many. - **Put project-wide facts in [video metadata](https://storyfolder.com/help/library/video-metadata).** One value on the video beats the same value typed onto ninety shots. - **Transcribe before expecting spoken words.** A video with no completed transcript contributes no dialogue to search. - **Record what you want to find later.** Autofill or type the visual details now, and they become searchable from then on. ## Does search narrow my exports and share links? Yes. An export or a publish takes the shots your current query and filters leave standing — filter to four stars, then publish, and you publish the selects. Clear your filters first if you meant the whole thing. ## Troubleshooting | What you see | What to check | | --- | --- | | Something you know exists is missing | Your scope (are you inside a folder?), spelling, whether the metadata was ever recorded, whether a transcript finished, active chips, and the Trash | | Far too many results | Add a chip. Structured questions beat longer queries | | A visual subject is not found | Nothing looks at the picture at search time. Record it as metadata first | | Two words find nothing | Both must appear in the *same* value. Try one, then add a chip | ## Related pages - [Organize your StoryFolder library](https://storyfolder.com/help/library/overview) - [Quick filters](https://storyfolder.com/help/library/quick-filters) · [Video metadata](https://storyfolder.com/help/library/video-metadata) - [Search, copy, and export a transcript](https://storyfolder.com/help/transcription/search-and-export) - [AI Autofill](https://storyfolder.com/help/ai/autofill) ## Next step → **[Video metadata](https://storyfolder.com/help/library/video-metadata)** --- # Add metadata to a video URL: https://storyfolder.com/help/library/video-metadata Section: library Last updated: 2026-10-09 Record facts that describe a whole project — client, job number, status — then search and filter on them. # Add metadata to a video Video metadata holds what is true of the **whole project**: the client, the job number, the production status, whether the release is signed. You type it once per video instead of once per shot, and then it is searchable and filterable like anything else. Shot metadata describes moments. Video metadata describes the job. > Custom fields — shot or video — are included on every plan. See > [Compare plans](https://storyfolder.com/help/billing/plans). ## Decide whether a field belongs to the video or the shot | The fact | Put it on | Because | | --- | --- | --- | | Client, job number, production status, rights | The **video** | It is true of everything in the project | | Shot size, action, usable, rating, location | The **shot** | It changes from shot to shot | The test is whether the value could ever differ between two shots in the same project. If it could, it is a shot field. The exception is compilations. A reel cut from four shoots may carry four clients and six locations, and a single video-level *Client* is then a lie. Put those on the shots and keep the video fields for what genuinely applies to the whole file. ## Create a video metadata field 1. Open Preferences (Cmd+P on Mac, Ctrl+P on Windows). 2. Go to Notes & Metadata → Video Metadata. 3. Add a field and name it. 4. Choose a field type. 5. Add options for a dropdown or tag field, and a one-line description of what the field is for. Video fields are a single flat list. There are no categories to arrange, because the values sit on the video itself rather than being grouped along a timeline. ## Fill in video metadata Your video fields appear in the inspector when a video is selected — in the library, and in the editor's **Video** section alongside the title and notes. Enter or choose a value and it saves as you leave the field. There is no separate save step. Video metadata edits are recorded in [version history](https://storyfolder.com/help/editing/version-history) as *video metadata edit*, so a mistake is recoverable. ## Search and filter by video metadata - **Type** into library search and it reads your video **Text**, **Dropdown**, **Tag** and **Number** values, alongside shot fields and transcripts. Typing a client name finds the projects filed against it. - **Filter** with chips for closed, numeric or checkbox fields — *Status is Delivered*, *Release complete is ticked*, *Job number is not empty*. - **Save** a combination you keep re-running as a [quick filter](https://storyfolder.com/help/library/quick-filters). Because a video field applies to the whole project, a match on one is a match on that project — a good reason to keep project-wide facts here rather than duplicated across every shot. ## Field types and what to use them for | Type | Good for | | --- | --- | | **Text** | Job number, producer, agency, brief reference | | **Dropdown** | Production status — a fixed list you can filter cleanly | | **Tag** | Locations, campaigns, deliverable types | | **Checkbox** | Release complete, archived, invoice sent | | **Rating** / **Number** | Only where it means something at whole-video level — a budget code, a client score | Prefer a **Dropdown** over **Text** wherever the answers are a known set. A typed status is four spellings of *in progress* by the end of the year; a dropdown is one. Full definitions are in [Field types](https://storyfolder.com/help/notes/field-types). ## AI Autofill does not fill video fields [AI Autofill](https://storyfolder.com/help/ai/autofill) is a shot metadata feature. It reads one frame per shot, and a video has no frame of its own — so the **Video Metadata** pane carries no Autofill switch at all. That is the right split rather than a missing feature. A client name, a job number and a rights status are not in the picture; they are known by the person who booked the job. Type them once here. ## Edit, archive or delete a field Renaming a field, or adding options to it, keeps the values already recorded against it. **Archive field** — in the field's kebab menu — takes a field out of the inspector without destroying anything. Archived fields live in the archive drawer on **Preferences → Notes & Metadata → Shot Metadata**, which is the one place in the app that holds archived fields from either scope. > **Danger:** From the archive drawer, **Delete permanently** removes the field and the values recorded against it, across every project. The confirmation names how much it would touch — *41 shots across 3 projects* — so read that count before confirming. Restoring from the archive is the reversible option; this one is not. Filters and quick filters that referenced a deleted field no longer have anything to ask about. Archive first, live with it for a week, delete later. ## Related pages - [Organize your StoryFolder library](https://storyfolder.com/help/library/overview) - [Search your library](https://storyfolder.com/help/library/search) · [Quick filters](https://storyfolder.com/help/library/quick-filters) - [Custom fields](https://storyfolder.com/help/notes/custom-fields) · [Field types](https://storyfolder.com/help/notes/field-types) - [AI Autofill](https://storyfolder.com/help/ai/autofill) ## Next step → **[Custom fields](https://storyfolder.com/help/notes/custom-fields)** --- # The editor at a glance URL: https://storyfolder.com/help/editing/overview Section: Editing your storyboard Last updated: 2026-10-09 A guided tour of the main StoryFolder editor, panel by panel. # The editor at a glance The editor is where you'll spend most of your time. It's organized into three resizable columns plus a header. Once you know the layout, everything else clicks into place. ## What does the editor look like? ``` ┌──────────────────────────────────────────────────────────────────────┐ │ Filter bar View switcher Effects · ♥ · 👁 · Zoom · Share │ ← Header ├─────────┬──────────────────────────────────────────────┬─────────────┤ │ │ │ │ │ Video │ Storyboard / List / Grid │ Notes & │ │ & │ (your shots) │ Data │ │ Tools │ │ panel │ │ │ │ │ └─────────┴──────────────────────────────────────────────┴─────────────┘ ``` - **Left column** — video player, shot tools, AI sensitivity slider. - **Center** — the storyboard itself in whichever view you've chosen. - **Right column** — notes and custom data fields for the selected shot(s). - **Header** — filters, view switcher, visual effects, favorites toggle, hidden toggle, zoom, and share. You can drag the column edges to resize them. ## What can I do from the left column? - **Watch the video.** A live player tracks the currently selected shot. Hover to reveal controls; press `Space` to play / pause. - **Pick a tool.** - `D` — **Default** (select). - `C` — **Split** (cut a shot at a frame). - `J` — **Merge** (join consecutive shots). - `F` — **Frame Selector** (choose a thumbnail). - **Adjust AI shot detection sensitivity** with the vertical slider. See **[Splitting & merging shots](https://storyfolder.com/help/editing/split-merge)** and **[AI shot detection sensitivity](https://storyfolder.com/help/editing/sensitivity)**. ## What's in the center? Your storyboard. You can show it in three ways: - `B` — **Storyboard view.** Big shots with notes alongside. - `L` — **List view.** Compact horizontal rows. - `T` — **Thumbnail grid.** A dense overview. See **[Storyboard, list & grid views](https://storyfolder.com/help/editing/views)**. ## What can I do from the right column? The right column is your **notes & data panel**. - Favorite the selected shot with the heart icon. ([Favorites](https://storyfolder.com/help/editing/favorites)) - Hide the selected shot with the eye icon. - Fill in any of your active note fields — text, number, dropdown, tag, checkbox, or rating. - Click **Configure notes & data** to open Preferences and add or remove fields. See **[Adding notes](https://storyfolder.com/help/notes/adding-notes)**. ## What's in the header? - **Search bar.** Filters shots whose notes match your query. - **View switcher.** Storyboard / list / grid. - **Notes & data field selector.** Toggle which fields are visible right now. - **Visual effects menu.** Black & white, boost contrast. - **♥ Favorites toggle.** Show only favorited shots. - **👁 Hidden toggle.** Show or hide shots you've hidden. - **Zoom slider.** Resize thumbnails. - **Share link button.** Publish a sharable link. ## How do I undo something? `Cmd`+`Z` (`Ctrl`+`Z` on Windows) walks back through your edits — see **[Undo and redo](https://storyfolder.com/help/editing/undo-and-redo)**. The **Version history** button in the toolbar shows every restore point, lets you look at one, and puts it back. See **[Version history](https://storyfolder.com/help/editing/version-history)**. To carry values from one shot onto a run of others, see **[Copy & paste metadata](https://storyfolder.com/help/editing/copy-paste-metadata)**. ## How do I move between workflows? Use the workflow switcher in the top-left, or jump with the keyboard: - `S` — **Shots** (you're here). - `R` — **[Transcript](https://storyfolder.com/help/transcription/overview)**. - `A` — **Statistics**. - `X` — **Export**. ## Next step → **[Storyboard, list & grid views](https://storyfolder.com/help/editing/views)** --- # Storyboard, list & grid views URL: https://storyfolder.com/help/editing/views Section: Editing your storyboard Last updated: 2026-10-09 Switch between three view modes to match the work you're doing. # Storyboard, list & grid views StoryFolder gives you three ways to look at the same shot list. Each one is optimized for a different kind of work. Switch between them as your task changes. ## What are the three views? - **Storyboard view** — large thumbnails with notes shown alongside. Best for deep note-taking. - **List view** — compact horizontal rows with thumbnail + metadata fields. Best for skimming notes across many shots. - **Thumbnail grid view** — dense grid of just thumbnails. Best for getting a visual overview of the whole video. ## How do I switch views? Two ways: - **Keyboard shortcuts:** - `B` → Storyboard - `L` → List - `T` → Thumbnail grid - **Header buttons.** The three small view icons in the editor header, just left of the visual effects menu. Your last choice is remembered the next time you open the project. ## When should I use each view? **Storyboard view** — when you're actively writing notes. The notes panel on the right targets whichever shot you click, but the inline notes layout below each shot in the center column lets you scan related shots while you type. **List view** — when you've got dozens of notes already filled in and you want to scroll-read them like a spreadsheet row. **Thumbnail grid view** — when you want to spot visual patterns. This is the fastest way to get a feel for the rhythm and color palette of a video. ## Can I change the size of the thumbnails? Yes. The **Zoom slider** in the header resizes thumbnails in any view from very small to very large. Keyboard shortcuts: - `=` — zoom in - `-` — zoom out ## What's the difference between a shot and a section? By default, every "shot" is a single visual cut detected by the AI. When you **Merge** consecutive shots together with the `J` tool, the result is treated as a **section** — a longer block you can take notes on as one. Sections behave just like shots in every view. ## Can I change the order of shots? No — shot order always follows the source video's timeline. You can hide, favorite, or filter shots, but you can't reorder them. ## Next step → **[Selecting shots](https://storyfolder.com/help/editing/selecting)** --- # Selecting shots URL: https://storyfolder.com/help/editing/selecting Section: Editing your storyboard Last updated: 2026-10-09 How to select one shot, several shots, or all of them. # Selecting shots Most actions in StoryFolder — taking notes, favoriting, splitting, merging — start by selecting a shot or a group of shots. Selection works the same in every view. ## How do I select a single shot? Click the shot's thumbnail in the storyboard. The notes panel on the right updates to show that shot, and the video player jumps to it. ## How do I select multiple shots? - **Add to selection:** hold `Cmd` (macOS) or `Ctrl` (Windows) and click each shot you want to include. - **Select a range:** click the first shot, then hold `Shift` and click the last shot. Every shot in between is included. - **Select all:** press `Cmd`+`A` (macOS) or `Ctrl`+`A` (Windows). When multiple shots are selected, the notes panel shows the count at the top and any field you edit applies to **all** selected shots. ## How do I clear my selection? Click an empty area between shots, or press `Esc`. ## What can I do with multiple selected shots? - Apply the **same note** across every selected shot at once. - **Favorite** them with a single click. - **Hide** them with a single click. - **Merge** them into one section (with the `J` Merge tool — see [Splitting & merging](https://storyfolder.com/help/editing/split-merge)). This is the fastest way to add structural notes — like “these six shots are all the establishing montage” — without retyping anything. ## Will my old single-shot note get overwritten? If a field already has different values across the selected shots, the panel shows a mixed-state placeholder. Type a new value and it will overwrite all of them. If you don't want that, just click out of the field — nothing changes until you actually type. ## Can I select the same way in every view? Yes. Selecting works in Storyboard, List, and Grid views. ## Next step → **[Splitting & merging shots](https://storyfolder.com/help/editing/split-merge)** --- # Splitting & merging shots URL: https://storyfolder.com/help/editing/split-merge Section: Editing your storyboard Last updated: 2026-10-09 Refine the shot list when the AI misses a cut or grabs one too many. # Splitting & merging shots The AI shot detector is good, but rarely perfect. You'll always want to make a few hand adjustments. That's what the **Split** and **Merge** tools are for. ## How do I split a shot? Use this when the AI joined two shots into one. 1. Press C (or click the scissors icon) to activate the Split tool. 2. Hover over the shot you want to split. The tool will preview the cut location. 3. Click on the frame where you want the new shot to begin. 4. A new shot is created starting at that frame. 5. Press D to return to the default tool. > **Tip:** Open the video player and scrub to the frame where the new shot should begin. The Split tool will use the same frame the player is showing. ## How do I merge shots? Use this when the AI broke one continuous shot into two — or when you want to treat several consecutive shots as a single section for note-taking. 1. Press J (or click the merge icon) to activate the Merge tool. 2. Click the first shot of the range you want to combine. 3. Click the last shot of the range. Every shot in between is merged into one. 4. Press D to return to the default tool. You can also merge by selecting the range with `Shift`-click in the default tool, then clicking **Merge selected shots** in the context menu. ## Can I un-split a shot? Yes. Use the **Merge** tool to combine your accidentally-split shot back into one. ## Can I un-merge a section? Yes. Use the **Split** tool to cut a merged section back into individual shots. ## What happens to my notes when I split or merge? - **Splitting** copies the original shot's notes to *both* new shots. Edit them independently afterwards if needed. - **Merging** keeps the notes from the first shot in the range. Notes on the later shots are preserved on the underlying shot data but will only show up again if you split that section apart. ## Will splitting / merging change my exports? Yes — exports reflect your current shot list: - **PDF storyboards** and **image exports** use whatever shots are visible. - **Shot list spreadsheets** export one row per shot or section. - **Video clip** exports produce one clip per shot or section. That makes Split / Merge the main way to control how granular your exports are. ## What if the entire video looks wrong? If you're constantly splitting or merging, the AI sensitivity is probably set wrong for this clip. Instead of doing it shot by shot, drag the **[AI shot detection sensitivity](https://storyfolder.com/help/editing/sensitivity)** slider to redo detection at a different threshold. ## Next step → **[Custom thumbnails](https://storyfolder.com/help/editing/thumbnails)** --- # Custom thumbnails URL: https://storyfolder.com/help/editing/thumbnails Section: Editing your storyboard Last updated: 2026-10-09 Pick a representative frame for any shot with the Frame Selector tool. # Custom thumbnails By default, StoryFolder uses the first frame of each shot as its thumbnail. That works most of the time — but sometimes the first frame is a motion blur, a partial pan, or a totally unrepresentative split-second. The **Frame Selector** tool lets you choose a better frame. ## How do I pick a custom thumbnail? 1. Press F (or click the frame icon in the left toolbar) to activate the Frame Selector. 2. Click the shot whose thumbnail you want to change. 3. Use the video player to scrub to the frame you want. 4. Click Set as thumbnail. The shot now uses that frame everywhere. 5. Press D to return to the default tool. The new thumbnail is used in the storyboard, list, and grid views — and in all exports. ## Why would I change a thumbnail? - The first frame of a shot is dark, blurry, or a tail of the previous shot. - You want the *climax* of the shot to be visible at a glance. - You're building a poster-style storyboard for a client and want the most striking frame as the cover for each section. ## Can I reset a custom thumbnail? Yes — open Frame Selector, click the shot, and pick **Reset to default**. The first-frame thumbnail returns. ## Do custom thumbnails affect exports? Yes. Whatever frame is shown in the editor will be the frame used in: - PDF storyboard exports. - Image exports. - Shared web links. - Print views. ## Can I bulk-set thumbnails? Not yet. Each thumbnail is set on a per-shot basis. ## Next step → **[AI shot detection sensitivity](https://storyfolder.com/help/editing/sensitivity)** --- # AI shot detection sensitivity URL: https://storyfolder.com/help/editing/sensitivity Section: Editing your storyboard Last updated: 2026-10-09 Tune how aggressively StoryFolder breaks your video into shots. # AI shot detection sensitivity The AI shot detector finds every cut in your video. The **sensitivity slider** controls how strict it is. If your storyboard has too few shots, raise it. Too many? Lower it. ## Where is the sensitivity slider? In the **left column** of the editor, near the tool buttons. It's a vertical slider running from low to high — values from 1 (lowest) to 9 (highest). ## How do I change sensitivity? 1. Drag the slider up to detect more shots, or down to detect fewer. 2. StoryFolder re-runs detection on your video using the new threshold. 3. The storyboard updates in place. Your notes are preserved on shots that still exist; new shots start blank. ## When should I raise sensitivity? - The video has subtle cuts — like match cuts within the same scene. - A long shot has multiple internal beats you want to capture separately. - The video uses gentle dissolves and fades that the detector glossed over. ## When should I lower sensitivity? - The video has lots of handheld camera shake mistaken for cuts. - A shot was incorrectly split because a person walked across the frame. - You're getting many tiny one-frame shots that don't represent real beats. ## Is there a single "right" sensitivity? No. It depends on the editing style of the source video. Modern fast-cut commercials usually want a low-to-mid sensitivity. Slow, contemplative cinema benefits from a higher sensitivity to surface subtle beats. A reasonable workflow: 1. Start at the default. 2. Glance at the storyboard. 3. If it feels too dense or too sparse, nudge the slider one notch at a time and re-evaluate. ## What if I'd rather fix individual shots by hand? Totally valid. Set the slider to roughly the right ballpark, then use the **[Split](https://storyfolder.com/help/editing/split-merge)** and **[Merge](https://storyfolder.com/help/editing/split-merge)** tools to clean up the few mistakes by hand. For many users, this is faster than chasing the perfect global setting. ## Does changing sensitivity re-process the whole video? It rebuilds the shot list, but it doesn't re-import or re-transcode the video. The video and thumbnail cache stay put, so re-detection is fast. ## Will I lose my notes if I change sensitivity? - Notes on shots whose boundaries don't change are preserved. - Notes on shots that get split or merged carry along where possible (see **[Splitting & merging](https://storyfolder.com/help/editing/split-merge)**). - If you've done extensive note-taking and don't want to risk shuffling them, work with Split / Merge instead of changing sensitivity. ## Next step → **[Favorites & hidden shots](https://storyfolder.com/help/editing/favorites)** --- # Favorites & hidden shots URL: https://storyfolder.com/help/editing/favorites Section: Editing your storyboard Last updated: 2026-10-09 Star the shots you care about, hide the ones you don't. # Favorites & hidden shots When you're scanning a long storyboard, you don't always want to see everything. Favorites and Hidden are two simple flags that help you focus. ## How do I favorite a shot? - Hover the shot and click the **♥ heart icon** that appears, or - Click the shot to select it and click the **♥** in the right-side notes panel header. The heart turns solid to indicate it's favorited. ## How do I see only my favorites? Click the **♥ Favorites toggle** in the editor header. The storyboard filters to show only favorited shots. Click again to show everything. ## How do I hide a shot? - Select the shot. - Click the **👁 eye icon** in the notes panel header. The shot disappears from the storyboard view. ## How do I bring hidden shots back? Click the **👁 Hidden toggle** in the editor header — it's the second-to-last icon. When the toggle is on, hidden shots show up again (faded). Press `H` as a shortcut. To un-hide a shot, select it again and click the eye icon to clear the flag. ## What's the difference between favorites and hidden? - **Favorites** are positive — they let you pull a curated list of the shots you care about. - **Hidden** is negative — it removes shots from your default view so they don't distract you (e.g. title cards, end credits, transitional shots). ## Do favorites and hidden affect exports? By default: - **Hidden shots are excluded** from exports. - **Favorites are exported as normal** — no filtering applied — but a shareable "favorites only" workflow is on the roadmap. If you want to export *only* your favorites, turn on the Favorites filter before opening Export, then pick the formats you want. The export reflects whatever's currently visible. ## Do favorites and hidden carry over to share links? Yes. The state when you publish is what viewers see. Hidden shots stay hidden on the shared page; favorites are highlighted. ## Next step → **[Search & filters](https://storyfolder.com/help/editing/search)** --- # Search & filters URL: https://storyfolder.com/help/editing/search Section: Editing your storyboard Last updated: 2026-10-09 Find shots by note content, combine filters, and narrow your storyboard fast. # Search & filters You can quickly narrow your storyboard down to just the shots you care about — by what's written in their notes, whether they're favorited, or whether they're hidden. ## How do I search my notes? 1. Click the search field in the top-left of the editor (or press /). 2. Type any word or phrase. 3. The storyboard live-updates to show only shots whose notes contain your query. The match is case-insensitive and scans across **every** note field — both default and custom. ## What kinds of searches work? - **Single word.** `lens` finds every shot with "lens" anywhere in its notes. - **Phrase.** `low key lighting` finds shots that contain that exact phrase. - **Empty.** Clear the field to bring all shots back. There's no boolean (AND / OR / NOT) syntax — keep it short. ## Can I filter by tags or dropdown values? Yes. Type the tag or dropdown option in the search field. For example, if you have a **Camera** dropdown with a value of *Drone*, typing `drone` will surface every shot tagged that way. ## Can I combine search with favorites or hidden? Yes. The three filters stack: - Type a search term. - Toggle **♥ Favorites** to limit to favorited shots. - Toggle **👁 Hidden** to include or exclude hidden shots. The shot count next to the search field shows how many shots survived all active filters. ## How do I clear all filters at once? Clear the search field and turn off the favorites toggle. Shots return to their full list. ## Does search affect exports and shares? - **Exports** include only the currently visible shots — so an active search will narrow your export. This is great when you want to PDF-export just the "drone" shots, for example. Clear the search if you want a full export. - **Share links** publish whatever's currently visible. To share the full storyboard, clear filters before publishing. ## Next step → **[Zoom & visual effects](https://storyfolder.com/help/editing/zoom-effects)** --- # Zoom & visual effects URL: https://storyfolder.com/help/editing/zoom-effects Section: Editing your storyboard Last updated: 2026-10-09 Resize thumbnails, switch to black & white, and boost contrast for better study. # Zoom & visual effects Two small features that change how you see your storyboard: the **zoom slider** and the **visual effects** menu. Both work in any view. ## How do I zoom in or out? - Drag the **zoom slider** in the editor header. - Or use the keyboard: - `=` — zoom in - `-` — zoom out Thumbnails scale smoothly from a dense overview to a near-poster size. ## Why would I change the zoom level? - **Low zoom** — fastest way to scan a long video for patterns or rhythm. - **Medium zoom** — best for note-taking. - **High zoom** — best for inspecting cinematography, framing, composition. ## What are the visual effects? Open the **effects menu** in the editor header (the icon next to the view switcher). You'll see toggles for: - **Black & White** — strips color from every thumbnail. - **Boost Contrast** — increases contrast. Both are non-destructive — they only change how thumbnails are displayed. Your originals stay untouched. ## When should I use Black & White? - To study **composition and value** without color as a distraction. - To analyze **lighting design** — shadows, highlights, contrast ratios. - To replicate the perspective of a cinematographer working in B&W. ## When should I use Boost Contrast? - On low-contrast footage where shapes and silhouettes get lost in the storyboard at small thumbnail sizes. - For accessibility — to make thumbnails easier to read at a glance. ## Do visual effects carry into exports? Yes. PDF and image exports respect the current effects, so you can produce a B&W storyboard or a high-contrast print directly from the editor. ## Do visual effects carry into share links? No — share links always render in full color, regardless of your local effects. Viewers can toggle their own preferences on the published page. ## Next step → **[Keyboard shortcuts](https://storyfolder.com/help/editing/shortcuts)** --- # Undo and redo changes URL: https://storyfolder.com/help/editing/undo-and-redo Section: Editing your storyboard Last updated: 2026-10-09 Reverse the last edit with the keyboard or the Edit menu, and know where project undo ends and text undo begins. # Undo and redo changes Undo reverses the most recent change to the open project. Use it for "that was wrong" — it is immediate and needs no dialog. When you want to see what changed before reversing it, or reach further back than the last few gestures, open [Version history](https://storyfolder.com/help/editing/version-history) instead. Undo works in the **editor**, on the project you have open. It is free on every plan. ## Undo the last change | Platform | Shortcut | | --- | --- | | macOS | `Cmd`+`Z` | | Windows | `Ctrl`+`Z` | **Edit ▸ Undo** does the same, and it names the change it will reverse — *Undo merge shots*, *Undo metadata edit* — so you can check before pressing it. With nothing to undo, both are greyed out and the shortcut does nothing. ## Redo a change | Platform | Shortcut | | --- | --- | | macOS | `Shift`+`Cmd`+`Z` | | Windows | `Shift`+`Ctrl`+`Z` or `Ctrl`+`Y` | Redo becomes available after an undo, and **Edit ▸ Redo** names what it will put back. Making a new edit after undoing starts a fresh chain from where you are — the run of undos you had been walking is finished, and redo has nothing to reapply. ## Text editing undo vs project undo The same keystroke means two things, and which one you get depends on what you are doing. - **While you are typing in a text field**, `Cmd`+`Z` belongs to that field. It undoes your typing, character by character, the way it does everywhere else. - **Everywhere else** — on the board, on a checkbox or a slider, or in a field you have focused but not typed in — it reverses the last change to the project. An example. You click into a **Location** field, type *Warehosue*, and press `Cmd`+`Z`: the typo goes, because you are mid-edit. You click away, the value saves, and you press it again: the whole metadata edit is reversed, because there is no longer an edit in progress to undo. Undo is also held back while a modal is open, so a dialog can never have a keystroke reverse something behind it. ## One change, one undo A value written across many shots is a single change, so it takes one undo: - A metadata value applied to a multi-shot selection - A [paste](https://storyfolder.com/help/editing/copy-paste-metadata) of one field across fifty shots - A bulk change made by a [connected assistant](https://storyfolder.com/help/ai/overview), which is recorded the same way Fifty shots never means fifty presses. Pasting **several fields** at once is the exception worth knowing: each field is written as its own change, so a three-field paste takes three undos. ## What undo can reverse The same set [Version history](https://storyfolder.com/help/editing/version-history#what-version-history-records) records: shot and video metadata, transcript and speaker corrections, project title and notes, folder moves, splits and merges, and shot-detection settings. ## What undo cannot reverse - **AI Autofill.** [Autofill](https://storyfolder.com/help/ai/autofill) writes without creating a restore point, so there is nothing to step back to. Its guard is **Only fill empty fields**. - **Imports and exports.** Neither is an edit to a project. - **Your media files.** Undo never touches anything on your disk. - **Permanent deletions.** Where the app says an action cannot be undone — deleting a collection, a quick filter or an archived field — it means it. ## If undo did not do what you expected 1. Check where the focus was. Inside a text field you were typing in, the keystroke belonged to the field. 2. Check no modal was open. 3. Open Version history and look at the most recent entry. If the change you wanted to reverse is not there, it is one of the kinds StoryFolder does not record. 4. If undo reported that it could not revert a change, note the message and contact support. ## Related pages - [Version history](https://storyfolder.com/help/editing/version-history) - [Copy and paste metadata](https://storyfolder.com/help/editing/copy-paste-metadata) - [Selecting shots](https://storyfolder.com/help/editing/selecting) · [Splitting & merging shots](https://storyfolder.com/help/editing/split-merge) - [Keyboard shortcuts](https://storyfolder.com/help/editing/shortcuts) ## Next step → **[Copy & paste metadata](https://storyfolder.com/help/editing/copy-paste-metadata)** --- # View and restore earlier versions URL: https://storyfolder.com/help/editing/version-history Section: Editing your storyboard Last updated: 2026-10-09 Inspect what changed and who changed it, preview any earlier state of a project, and put it back. # View and restore earlier versions StoryFolder records a **restore point** before each change you make to a project. Version history is where you read that record, preview any point in it, and put the project back to it. The unit is a project's state — its metadata, transcript, titles and notes, and the settings that determine the cut. It is not a version of your video file, and it is not a backup. Version history is **free on every plan**. ## Open Version history 1. Open a video in the editor. 2. Choose Version history in the toolbar. 3. Select an entry to preview it. It opens as two panes: the list of entries on the right, and the selected version's storyboard on the left. ## Read a history entry Each entry carries: - **What changed**, in the app's own words — *Metadata edit*, *Merge shots*, *Change shot detection*, *Move to folder*. - **When**, relative to now. - **How big it was** — a three-step bar, from *Minor change* to *Major change*, with the number of fields and the size of the change beside it. A title typo and a re-cut at a different sensitivity are distinguishable without opening either. - **Who did it.** An entry with no badge is yours. An entry made by a [connected AI assistant](https://storyfolder.com/help/ai/overview) carries that client's name. The entry stores what is needed to rebuild that state. It is not a second copy of your media. ## Preview an earlier version Selecting an entry rebuilds that version's storyboard in the left pane, with the shots this version cut differently — or whose metadata differs from what the project holds now — marked as **changed**. **Nothing is written while you look.** The preview is worked out in memory and thrown away, and the pane says so. Move between entries freely. Three states you may meet: *Deriving this version…* while it builds, *StoryFolder could not rebuild this version* if it fails, and *No edits have been recorded for this project yet* for a project with no history — which is a different thing from a history that failed to load, and the modal distinguishes them. ## Restore a version 1. Select the entry and read the preview. 2. Click Restore this version. 3. The project is written back to that state and the storyboard is re-derived. 4. Check the board, the metadata and the transcript before carrying on. > **Tip:** Restoring records the state you are leaving as a new restore point first. So the way back from a restore is the entry it just made — you can always get out again. If a restore fails, the modal says so and your project is left as it was. ## What Version history records One restore point per change, taken the moment you make it: - Shot metadata edits — the fields you type into - Video metadata edits - Transcript corrections, including speaker renames, merges and reassignments - The project title and its notes - Moving a project to a folder - Splitting and merging shots - Changing shot detection sensitivity and minimum shot length That last group is the one people are surprised by. Changing sensitivity on a finished board rewrites every boundary in it — and it is recorded, so it can be put back. **One change is one entry**, not one per shot. A value written across forty shots is a single edit and becomes a single entry with a single undo, exactly as it felt when you made it. ## What it does not record - **AI Autofill runs.** [Autofill](https://storyfolder.com/help/ai/autofill) writes directly and creates no restore point. There is nothing here to roll one back, which is why the Autofill dialog says so before an overwrite. Its guards are **Only fill empty fields** and reviewing small runs. - **Imports.** Bringing a video in is not an edit. - **Exports and shares.** They produce files and links; they do not change the project. - **Your media.** Version history knows what you told StoryFolder about a video, never the video itself. A file you deleted or overwrote on disk is not recoverable here. - **Library structure and app settings.** Collections, quick filters and preferences sit outside the project, so they are not part of its history. ## Undo vs Version history They are two ways at the same record. - **Undo** (`Cmd`+`Z` / `Ctrl`+`Z`) walks straight back from the most recent change. It is the fast path for "that was wrong", and it needs no dialog. - **Version history** is for looking: which change, when, by whom, and what the board looked like then. Use it when you want to inspect before committing, or to reach a point several gestures back. See [Undo and redo](https://storyfolder.com/help/editing/undo-and-redo). ## Review changes an assistant made A [connected assistant](https://storyfolder.com/help/ai/overview) writes through the same path your own edits do, so its changes land here badged with its name. To audit one: find its entries in the list, preview the state before or after, and restore if you want it gone. Remember that restoring puts back a whole whole earlier state of the project — not just the field the assistant touched — so read the preview and note anything else you have changed since. You can also just ask the assistant what it changed. If you would rather it never wrote at all, connect it in read-only mode: [Connect AI assistants](https://storyfolder.com/help/ai/overview#let-it-read-but-not-edit). ## Limits and retention - History is kept **per project**, roughly the last hundred restore points, plus everything from the time since you last opened StoryFolder. - When it thins, it drops the least significant points first — a title typo goes before a re-cut — and never a project's oldest point, which is the floor of what can be recovered. - History lives on your computer, with the project. It is not a cloud backup and it is not versioned collaboration: there are no branches, no named versions and no merging. - A project in the Trash keeps its history, so restoring the project gives you back something you can still undo in. Deleting a project permanently deletes its history with it. ## Troubleshooting | What you see | What is happening | | --- | --- | | *No edits have been recorded* | Nothing capturable has happened yet in this project | | *Could not load this project's history* | A load failure, not an empty history. Reopen the modal | | *Could not rebuild this version* | The preview failed. Your project is untouched; try another entry | | The change you want is not listed | It is probably one of the kinds StoryFolder does not record — Autofill, an import, or an export | | A restore did not bring back your footage | Version history restores project data, never media files | ## Related pages - [Undo and redo](https://storyfolder.com/help/editing/undo-and-redo) - [Copy and paste metadata](https://storyfolder.com/help/editing/copy-paste-metadata) - [Connect AI assistants](https://storyfolder.com/help/ai/overview) · [AI Autofill](https://storyfolder.com/help/ai/autofill) - [How your data is stored](https://storyfolder.com/help/security/data-storage) ## Next step → **[Undo and redo](https://storyfolder.com/help/editing/undo-and-redo)** --- # Copy and paste metadata across shots URL: https://storyfolder.com/help/editing/copy-paste-metadata Section: Editing your storyboard Last updated: 2026-10-09 Copy the notes and fields off one shot, then apply only the fields and targets you choose. # Copy and paste metadata across shots When a run of shots shares a value, type it once and paste it. Copy takes the metadata off a shot; paste opens a plan where you choose which of those fields to write, which shots to write them to, and whether anything already there is left alone. It is **free on every plan**, and it uses StoryFolder's own clipboard rather than your computer's. ## Copy metadata from a shot 1. Select the shot you have already got right, in the editor or the library. 2. In the inspector, choose Copy notes & metadata. What gets copied: - **Every field the shot has a value in**, its notes included. A field the source left empty is not copied at all — a paste adds what the source has, it never clears what the target has. - **Favorite** and **Hidden**, which are copied but arrive **unticked** in the paste dialog. They are shot state rather than notes, so spreading them is something you opt into. - **Not the poster frame.** A poster time is a point inside one shot's own range; the same value on another shot is meaningless. A copy lasts until you quit StoryFolder. It is not shared with other applications, and it does not survive a relaunch — a copy that outlived one would be offering to paste fields from a project you may since have deleted. ## Paste metadata to shots 1. Select the target shot or shots. 2. Choose Paste notes & metadata. The action appears only once something has been copied. 3. In the Paste metadata dialog, tick the fields you actually want. It says where they came from — Copied from Shot 3. 4. Choose the scope: This shot, N selected, or All N shots. 5. Choose the write mode. 6. Check the count line — N fields · M shots — then click Paste to N shots. ## Choose a write mode ### Only fill empty fields The recommended default, and the one the dialog opens on unless you have changed the global rule in **Preferences → Notes & Metadata → AI Autofill**. A target field that already holds a value is left alone, whatever it holds. "Empty" is per type: an unticked checkbox, an unrated rating, a tag field with no tags, a blank text or number field. A rating of 0 is unrated; a number of 0 is a value. ### Overwrite existing values Replaces what is in the selected fields, across the selected shots. > **Danger:** Choosing it shows a counted warning before you go ahead — *will overwrite N filled values across M shots*. Check both numbers against what you meant. Because each field is written as its own change, undoing a multi-field paste takes one undo per field, not one for the whole dialog. ## Choose which fields to paste A copy holds everything the source shot had, which is usually more than this particular job needs. **Select all** and **Select none** are at the top of the list; ticking individual rows is the point of the dialog. - Each row shows the field, its type and the value that would be written, so you are choosing values rather than field names. - A copied field the target project no longer has — archived, or deleted since the copy — is **skipped and named**: *2 copied fields are not in this project and will be skipped: Location, Camera.* Nothing is silently recreated. - Options that do not exist in the target field are not invented either. ## Paste to a large selection safely 1. Search or filter the board down to the shots that should share the value. 2. Select the results. 3. Copy from the one shot you have already got right. 4. Compare the dialog's shot count with the number of results your filter showed. If they disagree, stop — the selection is not what you think it is. 5. Keep Only fill empty fields on unless replacing is deliberate. 6. Spot-check afterwards: the first target, one in the middle, the last, and one that already had a value. ## Undo a paste A paste of one field across any number of shots is one change: one entry in [version history](https://storyfolder.com/help/editing/version-history), one undo. A paste of several fields is one change **per field**, so it produces one entry each and takes that many undos. Version history names them, so you can see exactly what a paste did. `Cmd`+`Z` (`Ctrl`+`Z` on Windows) immediately afterwards is the fastest way out. See [Undo and redo](https://storyfolder.com/help/editing/undo-and-redo). ## Copy and paste, or AI Autofill? | Use | When | | --- | --- | | **Copy and paste** | You know the value and want it repeated exactly — client, job number, location, release status | | **[AI Autofill](https://storyfolder.com/help/ai/autofill)** | The value has to be read off each shot's frame — shot size, visible action, whether it is usable | A fact you know is not a job for a model, and a judgement about each frame is not a job for a paste. ## Limits - **A copy stays inside StoryFolder.** It is not your computer's clipboard, and it does not paste into other applications. - **It does not survive a restart.** - **It never creates fields.** Missing fields are skipped and named. - **It has no opinion about correctness.** Pasting the wrong client onto sixty shots is a valid operation; the count line and the write mode are the guards. ## Troubleshooting | What you see | What is happening | | --- | --- | | No **Paste notes & metadata** action | Nothing has been copied. Copy first — and note that a copy is forgotten when the app closes | | Fewer values changed than expected | **Only fill empty fields** protected filled targets, or some fields were missing from this project and skipped | | The wrong shots got it | Undo immediately, or open Version history and restore | | A copied field is not offered | The target project does not have it. The dialog names which | ## Related pages - [Undo and redo](https://storyfolder.com/help/editing/undo-and-redo) · [Version history](https://storyfolder.com/help/editing/version-history) - [Notes across multiple shots](https://storyfolder.com/help/notes/multi-shot) - [Search & filters](https://storyfolder.com/help/editing/search) · [AI Autofill](https://storyfolder.com/help/ai/autofill) ## Next step → **[Notes across multiple shots](https://storyfolder.com/help/notes/multi-shot)** --- # Keyboard shortcuts URL: https://storyfolder.com/help/editing/shortcuts Section: Editing your storyboard Last updated: 2026-10-09 A full reference of StoryFolder's keyboard shortcuts, grouped by what they do. # Keyboard shortcuts Shortcuts are the fastest way to use StoryFolder. Print this page, or pin it open in a second tab until they become muscle memory. ## Workflow switching | Shortcut | Action | | --- | --- | | `S` | Switch to **Edit** view | | `A` | Switch to **Analyze** view | | `X` | Switch to **Export** view | ## View modes in the editor | Shortcut | Action | | --- | --- | | `B` | **Storyboard** view | | `L` | **List** view | | `T` | **Thumbnail grid** view | ## Tools | Shortcut | Tool | | --- | --- | | `D` | **Default** (select) | | `C` | **Split** (cut a shot at a frame) | | `J` | **Merge** (join consecutive shots) | | `F` | **Frame Selector** (custom thumbnail) | ## Selection | Shortcut | Action | | --- | --- | | Click | Select one shot | | `Cmd` / `Ctrl`-click | Add or remove a shot from selection | | `Shift`-click | Select a range | | `Cmd`+`A` / `Ctrl`+`A` | Select all shots | | `Esc` | Clear selection | ## Playback | Shortcut | Action | | --- | --- | | `Space` | Play / pause the video | ## Filters | Shortcut | Action | | --- | --- | | `H` | Toggle the hidden-shots filter | | `/` | Focus the search field | ## Zoom | Shortcut | Action | | --- | --- | | `=` | Zoom thumbnails in | | `-` | Zoom thumbnails out | ## Standard system shortcuts These work everywhere you'd expect them to: | Shortcut | Action | | --- | --- | | `Cmd`+`P` / `Ctrl`+`P` | Open Preferences | | `Cmd`+`Z` / `Ctrl`+`Z` | [Undo](https://storyfolder.com/help/editing/undo-and-redo) | | `Cmd`+`Shift`+`Z` / `Ctrl`+`Y` | [Redo](https://storyfolder.com/help/editing/undo-and-redo) | | `Cmd`+`F` / `Ctrl`+`F` | Focus the search field | | `Cmd`+`Q` / `Alt`+`F4` | Quit the app | Printing has its own page rather than a shortcut — see **[Print directly](https://storyfolder.com/help/exporting/print)**. ## Mnemonic cheat sheet If you only memorize a few, make it these: - **`B` / `L` / `T`** — **B**oard, **L**ist, **T**humbnail grid. - **`D` / `C` / `J` / `F`** — **D**efault, **C**ut, **J**oin, **F**rame. - **`S` / `A` / `X`** — **S**tudy (Edit), **A**nalyze, e**X**port. - **`Space`** — play / pause. --- # Transcribe a video on your device URL: https://storyfolder.com/help/transcription/overview Section: transcription Last updated: 2026-10-09 Turn spoken audio into timed, searchable text inside your project — processed on your own computer. # Transcribe a video on your device Transcription turns what people say into timed text that sits beside your storyboard. Every line is joined to the shot it was said in, so you can read the dialogue, search it, correct it, and take it out as subtitles or a script. Speech recognition runs **on your computer**. The audio is read from the file already on your drive, and neither it nor the transcript is uploaded. > **Free on every plan.** StoryFolder downloads what it needs to recognise > speech once, the first time. After that a transcription runs with the network > off. > **Tip:** Transcription is on-device. [AI Autofill](https://storyfolder.com/help/ai/autofill) is not — it sends a frame per shot to a hosted model. Do not read one as a promise about the other; [Local vs cloud](https://storyfolder.com/help/security/local-vs-cloud) draws the line. ## Before you begin - The video has finished importing and has an audio track. - The first run downloads a model — 487 MB for the default — and needs the disk space for it. See [Choose a model and language](https://storyfolder.com/help/transcription/models). - Working offline soon? Download the model — and the speaker files, if you identify speakers — before you go. - Transcription is published for macOS on Apple silicon, macOS on Intel, and Windows x64. On anything else the Transcript tab says so rather than offering a button that cannot work. ## Transcribe a video Most people never do this by hand. **Automatic transcription** is on out of the box, so a video is queued as soon as its import reaches Complete — a separate job from the import, so a transcription that fails can never fail your import. To run one yourself: 1. Open the video and go to the Transcript tab in the workflow bar, or press R. 2. Choose Transcribe. 3. Watch the phase line while it works. The language, the model, and whether speakers are identified come from **Preferences → Transcription**. It is worth aiming those before a long run — the empty state links straight to them. ## What happens while it runs The progress line names the stage it is in: | Stage | What it is doing | | --- | --- | | Queued | Waiting its turn | | Downloading speech model | First run only, once per model | | Preparing audio | Extracting audio from your file | | Loading speech model | Reading the model into memory — larger models take longer | | Transcribing | Recognising speech, producing timed words and lines | | Identifying speakers | Grouping voices, if you asked for it | Voice activity detection, on by default, keeps the recogniser off stretches with no speech in them. It is what stops timings drifting across a long musical passage or a silent cold open. A video with music and no dialogue comes back as **No speech found**. That is a result about your audio, not a failed run. ## Read and navigate the transcript Click any word to move the player to it. Turn on **Follow playback** in the **Display** popover and the transcript scrolls itself as the video plays. There are five view modes in the toolbar: - **By shot** — the transcript laid against the shot grid. The one that matters for storyboard work. - **By speaker** — grouped for screenplay-style reading. - **Continuous** — paragraphs, for proofreading. - **Captions** — one row per caption, for subtitle QC. - **Plain text** — for drafting and pasting. The **Display** popover also carries **Speaker names**, **Timestamps** and **Highlight low confidence** — a dotted underline under the words the model was least sure of. There is no percentage anywhere, because the underlying confidence is not calibrated well enough to print as one. ## Correct a line 1. Double-click the line. 2. Type the correction. Enter adds a line break rather than saving. 3. Click away to save. Esc abandons the edit instead. Corrected lines are marked as edited, and the corrected text is what gets searched, copied and exported from then on. Word timings stay where they were, so playback still lands in the right place. A correction improves this transcript. It does not teach StoryFolder a word for next time — there is no global vocabulary being learned from your edits. ## Re-transcribe a video Re-running is the answer when the language was wrong, the model was too small, or you want speakers identified on something transcribed without them. Open **Display → Re-transcribe…** in the transcript toolbar. > **Danger:** Every line and every timing is produced again from scratch, including lines you corrected by hand. StoryFolder counts your edited lines and tells you how many would be discarded — and if there are any, the first attempt is refused. The button then becomes **Replace it anyway**, so a re-run over your own work can only happen after you have read why. **Speakers you named or recoloured are carried over.** Speakers that came from automatic detection are worked out again from scratch. The confirmation lets you override the **language** and the **task** (transcribe or translate to English) for this run only, without touching your saved preference. **Advanced settings** adds the model, speaker detection and voice activity detection for the same single run. Anything left at its default changes nothing. ## What a transcript makes possible - **Search inside it** — with the search box in the transcript toolbar. - **Find spoken words from the library** — [library search](https://storyfolder.com/help/library/search) reads transcript text alongside your metadata. - **Copy what is on screen** — in whichever view mode and display settings you are using. - **Export** subtitles, a script, a CSV or a Fountain file. See [Search, copy, and export a transcript](https://storyfolder.com/help/transcription/search-and-export). - **Read the numbers** — the **Statistics** tab carries lines, words, and each speaker's share. - **Ask a connected assistant** about what was said. See [Connect AI assistants](https://storyfolder.com/help/ai/overview). ## Accuracy, and what to check Speech recognition degrades on heavy accents, people talking over each other, noisy location sound, and specialist vocabulary. Product names and surnames are where you notice first. Check the things a wrong word would cost you most: names, numbers, quotes you intend to publish, and the time ranges you are cutting to. On a long project, check the ends rather than the middle — the first and last minutes, the longest shot, one shot with music and no dialogue, and one where two people overlap. Turn on **Highlight low confidence** and read the underlined words first. Automatically detected speakers are groups of similar voice, not identified people. See [Identify speakers](https://storyfolder.com/help/transcription/speakers). ## Privacy, storage and offline use Audio stays on your computer while it is transcribed, and so does the transcript StoryFolder writes. No third-party transcription account is involved. The network is used once, at the start, to fetch what StoryFolder needs to recognise speech from its own servers. Every download is verified before it is used, so a file that arrived damaged is never run. **Preferences → Transcription** shows what is taking up disk space — models, speech recognition, speaker detection — and offers **Offload All Models** to reclaim it. Offloading deletes downloaded models. It does not turn transcription off, and it does not touch a single transcript you already have: the model you have selected is downloaded again the next time something needs transcribing. ## Related pages - [Choose a transcription model and language](https://storyfolder.com/help/transcription/models) - [Identify speakers](https://storyfolder.com/help/transcription/speakers) - [Search, copy, and export a transcript](https://storyfolder.com/help/transcription/search-and-export) - [Troubleshoot transcription](https://storyfolder.com/help/transcription/troubleshooting) - [Library search](https://storyfolder.com/help/library/search) · [Local vs cloud](https://storyfolder.com/help/security/local-vs-cloud) ## Next step → **[Choose a transcription model and language](https://storyfolder.com/help/transcription/models)** --- # Choose a transcription model and language URL: https://storyfolder.com/help/transcription/models Section: transcription Last updated: 2026-10-09 Pick the speech model and language that suit your footage — balancing speed, disk space, language coverage and accuracy. # Choose a transcription model and language StoryFolder ships with a sensible default and most people never change it. Move off it when you have a reason: you need results faster, you are short of disk space, you work in a language other than English, or a transcript came back weaker than the audio deserved. Every model listed here runs **on your computer**. A bigger model is more work for your machine, never more data leaving it. ## The quick choice | If you want | Choose | Download | | --- | --- | --- | | The fastest rough pass, or the smallest download | **Tiny** | 77 MB | | The default balance | **Small (multilingual)** | 487 MB | | The best recognition available here | **Medium** | 1.5 GB | **Small (multilingual)** is the default, and it is multilingual on purpose. The English-only and multilingual builds of a size are the same download, so defaulting to English-only would buy nothing and would cost anyone working in another language a second full-size download. `small` is also where the multilingual builds become genuinely usable across languages — the smaller ones are noticeably weaker than their English-only twins. If everything you cut is in English, switch to the English-only version of the same size and keep the download you already have. ## How model size changes the result Larger models generally recognise more of what was said, especially where the audio is difficult. They cost you three things: download size, disk space, and processing time. How long a transcription takes depends on the model, the length of the video and the machine you are running it on, so there is no useful number to publish here. Run one on a five-minute clip and you will know what your own machine does. What a larger model will not fix: speech that is inaudible, clipped, or spoken over by someone else. If two people are talking at once, no model size resolves them into two clean lines. ## English-only or multilingual - **English-only** — the `(English)` ones — for English speech. They are the stronger choice at every size, and markedly so at the smaller ones. - **Multilingual** for any other language, for material that switches language, and for automatic language detection. The two versions of a size are the same download size. That does not make them interchangeable: an English-only model cannot transcribe French, and it refuses **Translate to English** outright, because translation needs a multilingual model. ## Choose a language The language setting lives in **Preferences → Transcription → Language**. - **Auto-detect** is the default and is right for most footage — a recording in one language it can hear clearly. - **Pick the language** when you know it. It is worth doing when the audio is quiet, when music opens the video, or when a mis-detection has already happened. - **Mixed-language material** is the hard case. Detection settles on one language for the run, so a video that switches halfway will be transcribed as though it did not. The setting is a preference for every new run, and it can be overridden for a single run in the **Re-transcribe** dialog — along with **Translate to English**, which transcribes non-English audio straight into English. ## Download and manage models 1. Open Preferences (Cmd+P on Mac, Ctrl+P on Windows). 2. Go to the Transcription pane. 3. Open the Model list. Each model shows its size and whether it is installed. 4. Download the one you want and wait for it to verify. 5. Selecting it makes it the model every new transcription uses. A download shows a live percentage. A model counts as installed only when the whole file has arrived intact — StoryFolder verifies it and will not run one it could not, so an interrupted download is discarded rather than half-used. Retry from the same list. **Download the model at startup** is on by default, so your first import already has something to run against. Turn it off on a metered connection and the download waits until the first time you actually transcribe. Deleting a model asks first and names the size you would have to download again. The model currently selected as your default cannot be deleted out from under itself. ## Storage and offline planning | Model | Language | Download | | --- | --- | --- | | Tiny (English) / Tiny (multilingual) | English / 100 languages | 77 MB | | Base (English) / Base (multilingual) | English / 100 languages | 147 MB | | Small (English) / Small (multilingual) | English / 100 languages | 487 MB | | Medium (English) / Medium (multilingual) | English / 100 languages | 1.5 GB | There is no *large* model. Eight in all: four sizes, each in an English-only and a multilingual version. Two more downloads are not models you choose, but they take disk: | Also downloaded | What it does | Download | | --- | --- | --- | | Voice activity detection | Skips silence and music, which keeps timings from drifting | ~1 MB | | Speaker detection | Groups voices into speakers, if you use it | ~60 MB | Both arrive on demand, the same way a model does. **Preferences → Transcription → Disk** itemises models, speech recognition and speaker detection, with a total. **Offload All Models** deletes every downloaded model and reclaims the space; transcription stays on, and your selected model is downloaded again the next time something needs transcribing. **No transcript you already have is affected** — a transcript is text stored with the project, not something the model file holds. Travelling, or working somewhere with restricted network? Download the model — and the speaker files, if you identify speakers — before you leave. After that a transcription runs with the network off. ## When to try another model - The same words come back wrong in clearly recorded speech. - Proper names or specialist vocabulary are consistently mangled. - Heavy accents or noisy location sound. - You need a rough pass over hours of footage quickly — drop to Tiny or Base, then re-run the parts that matter at a larger size. > **Warning:** Changing the model only affects new runs. To apply it to a video you have already transcribed you have to re-transcribe it, which replaces every line and every timing — including your hand corrections. Read [Re-transcribe a video](https://storyfolder.com/help/transcription/overview#re-transcribe-a-video) first. ## Related pages - [Transcribe a video on your device](https://storyfolder.com/help/transcription/overview) - [Identify speakers](https://storyfolder.com/help/transcription/speakers) - [Troubleshoot transcription](https://storyfolder.com/help/transcription/troubleshooting) - [Local vs cloud](https://storyfolder.com/help/security/local-vs-cloud) ## Next step → **[Identify speakers](https://storyfolder.com/help/transcription/speakers)** --- # Identify speakers in a transcript URL: https://storyfolder.com/help/transcription/speakers Section: transcription Last updated: 2026-10-09 Group voices into speakers, give them real names, fix what detection got wrong, and know what it can't know. # Identify speakers in a transcript With **Identify speakers** on, StoryFolder groups similar-sounding voices and labels each line with the group it belongs to. It arrives as *Speaker 1*, *Speaker 2*, each with a colour. Turning those into names is your part, and it is the part that makes the transcript worth reading. Speaker detection runs **on your computer**, like transcription itself, and is free on every plan. > **Warning:** StoryFolder detects that the voice changed and that these lines sound like each other. It does not know who anybody is, and it never will from the audio alone. A label is a group of similar voice until you name it. ## Turn on speaker identification 1. Open Preferences (Cmd+P on Mac, Ctrl+P on Windows). 2. Go to the Transcription pane. 3. Turn on Identify speakers. Every new transcription is labelled from then on. Speaker detection needs about 60 MB of its own, downloaded the first time you use it, the same way a model is. If it is not available for your computer the switch says so rather than quietly doing nothing, and a transcript that cannot be split keeps a single speaker instead of failing. Identification adds work on top of transcription, so a run with it on takes longer. To label a video that is **already transcribed**, open **Display → Re-transcribe…** in the transcript toolbar, expand **Advanced settings**, and turn speaker detection on for that run. > **Danger:** Every line and timing is produced again, including your hand corrections — StoryFolder counts them and refuses the first attempt if there are any. Speakers you have **named or recoloured are carried over**; speakers that came from automatic detection are worked out again from scratch. ## What the automatic labels mean *Speaker 1* is a group of lines that sound like each other. Read the labels as a first pass, and expect these: - **One person split across several labels.** A change of microphone, a phone call, a shout across a room. - **Two people combined into one label.** Similar voices, or a conversation where they overlap constantly. - **Difficult material handled badly.** Overlapping speech, one-word interjections, laughter, crosstalk and noisy location sound are where detection struggles most. None of that is a malfunction to report. It is the shape of the problem, and the tools below are how it is finished. ## Rename a speaker 1. Open the speakers popover in the transcript toolbar, or use the Speakers panel in the inspector. 2. Click the automatic label. 3. Type the person's name. The new name applies to every line assigned to that speaker, throughout this transcript — in the by-speaker view, in copied text, in exports and in the printed storyboard. You can also change a speaker's colour, hide one from the view while you concentrate on another, and add a speaker that detection never found. ## Reassign words to the right speaker This is the fix for lines given to the wrong person, and for two people who ended up under one label. 1. Drag across the words that belong to somebody else. 2. A bar appears above the transcript naming what you selected. 3. Choose the speaker it should belong to, or Unassigned. The selection is what gets moved — StoryFolder splits at word boundaries rather than reassigning a whole line, so half a line can change hands. Select several lines at once when a whole passage was misattributed. **Cancel** on the bar clears the selection without changing anything. If the voice is genuinely someone new, add a speaker first, then assign to it. ## Merge duplicate speakers Merge when one person was split across two labels. 1. Open the speakers popover and choose … on the speaker you want to fold away. 2. Choose Merge into…, then pick the speaker to keep. Every line under the speaker you merged from moves to the one you kept, and the merged-from label is gone. It is one editing gesture on the transcript, so [version history](https://storyfolder.com/help/editing/version-history) records it and it can be undone. ## Delete or unassign a speaker The four verbs do different things, and it is worth keeping them apart: - **Rename** changes what the group is called. Nothing moves. - **Reassign** moves the selected words to another speaker. - **Merge** moves every line from one speaker to another and removes the empty label. - **Delete** removes the label. Its lines stay exactly where they are and become **Unassigned** — no words are lost, and nothing about the transcript text changes. StoryFolder says so in the confirmation, with the line count. All four are transcript edits, and all four are recorded in version history. Re-running detection is the exception: that is a re-transcription, and it starts the automatic labels over. ## Review speakers efficiently Switch to the **By speaker** view and read each speaker's lines together — a misattributed line is far more obvious among a person's own words than it is in shot order. Sample the beginning, middle and end of each speaker. Then check the places detection finds hardest: scene changes, off-camera voices, one-word answers, and any stretch where two people overlap. Correct the transcript text first, names second. Searching for a name is only useful once the words are right. ## Where speaker names appear - In the transcript, when **Speaker names** is on in the **Display** popover. - In copied text, following the same display settings. - In SRT and WebVTT subtitles, and in the plain text, CSV and Fountain exports, once there is more than one speaker. - In the printed storyboard, and in the **Statistics** tab, which shows each speaker's share of lines and words. **Plain text** view deliberately drops speaker names and timestamps — it is there for prose you are about to paste somewhere else. See [Search, copy, and export a transcript](https://storyfolder.com/help/transcription/search-and-export). ## Troubleshooting | What you see | What to do | | --- | --- | | One person appears as several speakers | Merge them into the one you want to keep | | Several people appear as one speaker | Add the missing speaker, then reassign their words | | No speakers at all | Check **Identify speakers** was on for the run, that its download finished, and that there is speech to split | | Labels changed after re-transcribing | Expected. Named speakers carry over; automatic ones are worked out again | ## Related pages - [Transcribe a video on your device](https://storyfolder.com/help/transcription/overview) - [Search, copy, and export a transcript](https://storyfolder.com/help/transcription/search-and-export) - [Troubleshoot transcription](https://storyfolder.com/help/transcription/troubleshooting) - [Version history](https://storyfolder.com/help/editing/version-history) ## Next step → **[Search, copy, and export a transcript](https://storyfolder.com/help/transcription/search-and-export)** --- # Search, copy, and export a transcript URL: https://storyfolder.com/help/transcription/search-and-export Section: transcription Last updated: 2026-10-09 Find a line, take the words with you, and choose the right transcript or subtitle file for the job. # Search, copy, and export a transcript A finished transcript is good for three things: finding the moment somebody said something, getting the words out to somewhere else, and producing a file another tool can read. Searching and copying are free, and so is the transcript export. The gated export is the [Spreadsheet / Shot List](https://storyfolder.com/help/exporting/spreadsheet). ## Search within the open transcript 1. Open the Transcript tab (R). 2. Type into Search transcript. / focuses the box, and Cmd+F (Ctrl+F on Windows) does too, even from inside another field. 3. Walk the matches with Enter or the ‹ › buttons. Add Shift to go backwards. 4. Click a match to move the player to it. Esc clears the search. The box shows the number of results and your position in them, and it lands on the best match rather than the first one in time. This search forgives a word the recogniser split or misheard. When a hit is not literal it is marked **approximate**, and hovering it shows what the transcript actually says — so you can tell "found it" from "found something like it". Two things it does not do: it does not search speaker names — use the speakers popover for those — and it does not reach outside this one transcript. ## Search spoken words across the library [Library search](https://storyfolder.com/help/library/search) reads transcript text alongside your titles and metadata, so you can find a line without knowing which project it is in. The differences worth holding on to: | | Transcript search | Library search | | --- | --- | --- | | Covers | This transcript | Titles, shot fields, video fields, transcripts | | Matching | Forgiving, marks approximate hits | Literal substring, all terms must match | | Scope | The open video | All items, or the folder / collection you are standing in | | Tells you why | It highlights the words | Each result names what it matched — including **Transcript** | A library result that matched on transcript says so, which is what separates "you tagged this" from "somebody said it on camera". ## Copy transcript text **Copy** in the transcript toolbar copies everything currently visible — the view mode you are in, and your **Display** settings. That makes the copy configurable in a useful way: - Want prose with no speaker names or timestamps? Switch to **Plain text** first. - Want a screenplay-style read? Copy from **By speaker** with speaker names on. - Want it against the picture? Copy from **By shot**. Corrected lines copy in their corrected form. Fix names, numbers and anything you intend to publish before copying rather than after. ## Export a transcript or subtitles 1. Open the Export tab (X). 2. Set your destination folder. 3. Turn on Transcript & Subtitles. It appears once a completed transcript exists for the video. 4. Tick the formats you want. At least one, or the export cannot start. 5. Click Add to Queue, and keep working while it runs. Five formats, and you choose any combination: | Format | What it is for | | --- | --- | | **SRT** | Subtitles for almost anything | | **WebVTT** | Subtitles for the web | | **Plain text** | A readable script | | **CSV** | The transcript as a table | | **Fountain** | Screenplay-formatted text | The CSV is the one worth knowing about: its columns are `start`, `end`, `shot`, `speaker` and `text`, so the file already knows which picture each line belongs to, and it pairs with the [shot list spreadsheet](https://storyfolder.com/help/exporting/spreadsheet). Timestamps, speaker labels, grouping and line width are options on the export. Speaker names are written in once there is more than one speaker, and they are whatever you renamed them to. > **Tip:** Subtitle timing is built to be readable on screen against the picture. A plain text script is built to be read on its own. Exporting both is normal. **Review captions before you deliver them.** Recognition errors that read as harmless in a transcript are conspicuous burnt into a video. The per-shot transcript also prints in the [PDF storyboard](https://storyfolder.com/help/exporting/pdf), in full. ## Which output should I choose? | You want to | Use | | --- | --- | | Read or rewrite the words | Plain text, or Fountain for screenplay format | | Put captions on a video | SRT, or WebVTT for the web | | Analyse dialogue in a spreadsheet | CSV — it carries shot and speaker per line | | Find a moment inside StoryFolder | Nothing. Search the transcript, or the library | | Hand somebody the board with dialogue on it | [PDF storyboard](https://storyfolder.com/help/exporting/pdf) | ## What search cannot find - **Words that were never transcribed** — a video with no completed transcript contributes nothing to either search. - **Words the recogniser got wrong.** Searching for what was said will not find what was written. Correct the line, then search again. - **Anything visual that nobody wrote down.** Neither search looks at the picture; see [AI Autofill](https://storyfolder.com/help/ai/autofill) and [library search](https://storyfolder.com/help/library/search) for what does. - **Meaning.** Library search matches text, not synonyms. Transcript search forgives spelling, not vocabulary. ## Related pages - [Transcribe a video on your device](https://storyfolder.com/help/transcription/overview) - [Identify speakers](https://storyfolder.com/help/transcription/speakers) - [Library search](https://storyfolder.com/help/library/search) - [Scripts & subtitles](https://storyfolder.com/help/exporting/script) · [Export options overview](https://storyfolder.com/help/exporting/overview) - [Troubleshoot transcription](https://storyfolder.com/help/transcription/troubleshooting) ## Next step → **[Troubleshoot transcription](https://storyfolder.com/help/transcription/troubleshooting)** --- # Troubleshoot transcription URL: https://storyfolder.com/help/transcription/troubleshooting Section: transcription Last updated: 2026-10-09 Downloads that will not finish, transcripts that will not start, weak accuracy, timing drift and speaker labels that came back wrong. # Troubleshoot transcription Transcription runs on your own computer, so when something goes wrong the causes are close to hand: what has been downloaded, your disk, your source audio, and the machine itself. Work down this table, then read the section that matches. | What you see | Where to look | | --- | --- | | A download that never finishes | [Downloads](#a-download-will-not-finish) | | Nothing happens when you transcribe | [It will not start](#transcription-does-not-start) | | *No speech found* | [No speech](#storyfolder-reports-no-speech) | | Words that are plainly wrong | [Accuracy](#the-transcript-has-many-wrong-words) | | Text that does not line up with the picture | [Timing](#timing-does-not-line-up-with-playback) | | The wrong people on the wrong lines | [Speakers](#speaker-labels-are-wrong) | | A run that takes forever | [Speed](#processing-is-slow) | ## A download will not finish 1. Check you are online, and check you have room for the file — the default model is 487 MB and Medium is 1.5 GB. 2. Open Preferences → Transcription and start the download again from the model list. 3. Watch the percentage. StoryFolder verifies the file before it will use it, so a download interrupted halfway is discarded rather than half-used — retrying is safe and starts clean. Speaker detection and the file that lets StoryFolder skip silence download the same way, and the Transcription pane reports each with its own status and a **Retry** button. If a download fails repeatedly, remove the model from the app's own list rather than deleting files by hand, then try once more. A corporate network that inspects traffic is worth ruling out — everything here comes from StoryFolder's own servers, and is verified before it is used. ## Transcription does not start - **Is the import finished?** Transcription is queued when the import reaches Complete, not before. - **Does the video have an audio track?** A silent file has nothing to transcribe. - **Is transcription turned on?** The Transcript tab says *Transcription is turned off* if the master switch in **Preferences → Transcription** is off, and offers to turn it back on. - **Is a model installed and selected?** The first run downloads one; if that download never finished, start with the section above. - **Is the source file reachable?** A video whose media has moved or is on a disconnected drive cannot be read. Relink it first. - **Is it available on this computer at all?** Two messages mean there is nothing you can do — *Transcription isn't available on this computer* (it does not run on this kind of machine yet) and *Transcription isn't ready in this build* (it arrives in an update). Both say so plainly and offer no button, because there is nothing to press. Write down the exact wording of any error before restarting the app. ## StoryFolder reports no speech *No speech found in this video* is a **result**, not a failure. Transcription ran, and what it heard was music, ambience or silence. Check in this order: - Is there speech in the video at all? - Is it audible — not buried under music, not down at the noise floor? - Is it on the channel you expect? A file whose dialogue sits on a track your player is not monitoring can sound empty. If there is definitely speech, try naming the language instead of leaving detection to it, or a larger model. If it is a music video, leave it — re-running on footage with no dialogue will keep returning the same honest answer. ## The transcript has many wrong words 1. Choose the known language rather than Auto-detect. 2. Move to a larger model, or to the English-only version if the audio is English. See Choose a model and language. 3. Listen to the source. Clipping, heavy compression, wind, room echo and crosstalk cost more accuracy than any setting recovers. 4. Correct names, numbers and specialist terms by hand — double-click the line, type, click away. Corrections apply to this transcript only. StoryFolder does not learn a global vocabulary from your edits, so a name you fix in one project starts wrong in the next. Turn on **Highlight low confidence** in the **Display** popover and read the underlined words first — it is the fastest way to spend correction time well. ## Timing does not line up with playback First, work out which kind of mismatch it is. - **Isolated** — a line or two out of place, usually where speech overlaps or a long silence sits between lines. Correcting the text does not move timings; reassigning words does not either. Live with the small ones. - **Growing** — the further into the video, the worse it gets. That is drift, and it usually means the recogniser ran across long non-dialogue stretches. Check **Voice activity detection** is on in **Preferences → Transcription**; it is on by default and it exists for exactly this. - **Wholesale** — everything is offset. Check the video's media is still the same file that was transcribed. If it was relinked to a different edit, the words belong to the old one. > **Warning:** It replaces every line and timing, including your corrections. Read [Re-transcribe a video](https://storyfolder.com/help/transcription/overview#re-transcribe-a-video) before you start, and copy anything you cannot lose out first. Systematic drift on ordinary dialogue is worth reporting — see [what to send](#what-to-include-with-a-support-request). ## Speaker labels are wrong Correcting labels by hand is almost always the smaller job. See [Identify speakers](https://storyfolder.com/help/transcription/speakers) for the three verbs: - One person split across labels → **merge**. - Two people under one label → **add a speaker**, then **reassign** their words. - A misattributed passage → select it and assign it. Overlapping speech and one-word turns are where automatic detection is weakest, and no re-run reliably improves them. Re-running detection also discards the automatic grouping you have been correcting — your **named** speakers survive a re-transcription, but the assignments made by detection are worked out again. ## Processing is slow The size of the model, the length of the video and the machine you are running on are what set the pace, in that order. Speaker identification adds another pass on top. For a long file you mainly want to search, run **Tiny** or **Base** for a rough transcript, find the parts that matter, and re-run those videos at a larger size. Turning off speaker identification for the first pass saves time too. There is no universal completion time worth publishing. Time a five-minute clip on your own machine and multiply. ## Re-transcribing would replace manual work What a re-run **replaces**: every line, every timing, and every correction you typed. StoryFolder counts your edited lines, tells you how many would go, and refuses the first attempt if there are any — you have to press **Replace it anyway** to proceed. What it **keeps**: speakers you named or recoloured. Automatic speaker groups are worked out again from scratch. [Version history](https://storyfolder.com/help/editing/version-history) records transcript edits, including speaker changes, so a correction can be recovered. If the work is substantial, copy or export it before re-running rather than relying on that. ## What to include with a support request - StoryFolder version, operating system, and the processor family (Apple silicon, Intel, Windows x64). - Free disk space. - The video's duration, and whether it has an audio track. - The model, the language, and whether speaker identification was on. - The exact status or error, and the stage it stopped at. - Your [logs](https://storyfolder.com/help/troubleshooting/logs). We do not need your footage, and we do not ask for it by default. ## Related pages - [Transcribe a video on your device](https://storyfolder.com/help/transcription/overview) - [Choose a transcription model and language](https://storyfolder.com/help/transcription/models) - [Identify speakers](https://storyfolder.com/help/transcription/speakers) - [Send us your logs](https://storyfolder.com/help/troubleshooting/logs) · [Contact support](https://storyfolder.com/help/troubleshooting/contact-support) --- # Adding notes to a shot URL: https://storyfolder.com/help/notes/adding-notes Section: Notes & data fields Last updated: 2026-10-09 How to capture observations on any shot using the notes panel. # Adding notes to a shot Notes are the heart of StoryFolder. Every observation you make about a shot — the framing, the dialogue, the lighting setup, the meaning — gets captured in the notes panel. ## How do I add a note to a shot? 1. Click the shot you want to take notes on. It becomes the selected shot. 2. The notes panel on the right column updates to show the active note fields. 3. Click into any field and start typing. 4. Your notes save automatically as you type — there's no Save button. ## What fields are available by default? StoryFolder ships with a thoughtful set of default fields: - **Key Takeaways** — what's the heart of the matter? - **Interpretation** — your perspective on the shot. - **Story** — the narrative beat or plot moment. - **Action** — what action is driving the scene. - **Messaging** — what brand or thematic message is conveyed. - **Emotional Tone** — what feeling does the shot evoke? - **Visuals / Cinematography** — what visual techniques are at play? - **Performance** — what stands out about the performers. - **Sound & Music** — how does the audio shape the moment. - **Symbolism** — symbols, metaphors, hidden meaning. - **Other Notes** — your catch-all. - **Tags** — quick categorization labels. You can turn off any of these and add your own. See **[Default note fields](https://storyfolder.com/help/notes/default-fields)** and **[Custom fields](https://storyfolder.com/help/notes/custom-fields)**. ## How do I see only the fields I care about? Click the **Notes & Data Fields** button in the editor header to toggle individual fields on and off without deleting them. Hidden fields keep their values — they just don't show up while you work. ## How are my notes saved? Notes save automatically to StoryFolder's local database the moment you finish editing a field. There's no "save" or "discard" action — they're always written. ## Can I take notes on the whole video instead of a shot? Yes. **Video metadata** fields hold values that belong to the whole project rather than to one shot — *Client*, *Job#*, *Status*, *Video Overview*. Add them in **Preferences → Notes & Metadata → Video Metadata**, then fill them in once per project. They're searchable in the same box as your shot fields, and they're the right home for anything you'd otherwise have retyped on every row. See **[Video metadata](https://storyfolder.com/help/library/video-metadata)**. ## How do I take notes on multiple shots at once? See **[Notes across multiple shots](https://storyfolder.com/help/notes/multi-shot)**. ## What about formatting — can I use bold or links? Text fields accept plain text. We'd rather you focus on the substance of your notes than the formatting. If you need to share a styled write-up, export to PDF. ## Next step → **[Notes across multiple shots](https://storyfolder.com/help/notes/multi-shot)** --- # Notes across multiple shots URL: https://storyfolder.com/help/notes/multi-shot Section: Notes & data fields Last updated: 2026-10-09 Capture observations that span several shots at once. # Notes across multiple shots A lot of the most useful observations span more than one shot — *"these six shots are the establishing montage"*, *"this whole scene is shot at 35mm"*, *"every shot in the back half is handheld"*. StoryFolder makes that easy. ## How do I add a note to multiple shots at once? 1. Select the shots you want to annotate together. (See Selecting shots.) 2. The notes panel header now reads "3 shots selected" or whatever your count is. 3. Type into any note field. 4. The value is applied to every selected shot. ## What if the selected shots already have different values in that field? The field displays a mixed-state placeholder like *"Multiple values"*. You have two choices: - **Leave it alone** — click away and nothing changes. - **Overwrite** — type a new value. It replaces the value on every selected shot. There's no partial-apply: it's all or nothing. ## How is this different from merging shots? - **Multi-select notes** keep the shots separate. They each retain the note but exist as their own entries in the storyboard and in exports. - **[Merging](https://storyfolder.com/help/editing/split-merge)** physically combines shots into one section. Exports include one row / one clip / one image for the merged section. Use multi-select notes when you want to keep individual shots but say the same thing across several. Use merge when the shots really do belong as one block. ## Can I select shots that aren't adjacent? Yes. `Cmd`-click (macOS) or `Ctrl`-click (Windows) to add non-contiguous shots to your selection. The notes you take apply to whatever's selected — adjacent or not. ## Can I take notes on hidden shots? Yes — they just won't be visible in the storyboard. Toggle hidden shots on with `H` if you want to see and edit them. ## Next step → **[Default note fields](https://storyfolder.com/help/notes/default-fields)** --- # Default note fields URL: https://storyfolder.com/help/notes/default-fields Section: Notes & data fields Last updated: 2026-10-09 A reference for every field that ships with StoryFolder out of the box. # Default note fields StoryFolder comes with a thoughtful set of default note fields, designed to cover the questions you'll typically ask about any shot. You don't have to use them — but they're a great starting point if you're not sure where to begin. ## What are the default fields? | Field | What it captures | | --- | --- | | **Key Takeaways** | The single most important thing about this shot or section. | | **Interpretation** | Your personal read of the shot's meaning or purpose. | | **Story** | The narrative beat — what's happening in the plot. | | **Action** | The visible action driving the scene forward. | | **Messaging** | The brand, product, or thematic message conveyed. | | **Emotional Tone** | The feeling the shot is meant to evoke. | | **Visuals / Cinematography** | Lighting, composition, lensing, camera movement, palette. | | **Performance** | What stands out about the performers. | | **Sound & Music** | How sound design and music shape the moment. | | **Symbolism** | Symbols, metaphors, deeper meaning. | | **Other Notes** | Anything else worth recording. | | **Tags** | Quick labels for cross-shot searching. | There are also four built-in "**meta**" fields that are always available: - **Shot Number** — auto-assigned by StoryFolder. - **Start Time** — timecode where the shot begins. - **Duration** — length of the shot in seconds. - **Frames** — frame range covered by the shot. These are read-only and update automatically as you Split, Merge, or change sensitivity. ## How do I hide a default field I don't use? 1. Click the Notes & Data Fields button in the editor header. 2. Untick the field you don't want to see. 3. It vanishes from the notes panel. Tick it again any time to bring it back. Hidden fields don't lose their values — they're still saved on every shot. ## Can I rename a default field? The names of the default fields aren't editable. If you want a differently-named field, hide the default and add a **[custom field](https://storyfolder.com/help/notes/custom-fields)** with the name you prefer. ## Can I change the order? Yes — open **Preferences → Notes & Data** and drag fields within their category. See **[Categories](https://storyfolder.com/help/notes/categories)**. ## Why so many defaults? Each field reflects a category of question worth asking about a video — and they were curated based on what filmmakers, marketers, and educators consistently said they needed. Use the ones that match your work; turn off the rest. Or replace them all with your own. Your call. ## Next step → **[Custom fields](https://storyfolder.com/help/notes/custom-fields)** --- # Custom fields URL: https://storyfolder.com/help/notes/custom-fields Section: Notes & data fields Last updated: 2026-10-09 Design your own note fields tailored to your workflow. # Custom fields Custom note fields are how you make StoryFolder your own. Whether you're studying cinematography, deconstructing ads, or planning a shoot, you can design exactly the data structure you need. > Custom fields are included on every plan. ## How do I create a custom field? 1. Open Preferences (Cmd+P on Mac, Ctrl+P on Windows). 2. Switch to the Notes & Data pane. 3. Pick the category you want the field to live in — or click New Category first. 4. Click + Add Field in the category. 5. Enter a name, pick a field type, and (for dropdowns and tags) add the available options. 6. Close Preferences. The new field appears in the notes panel and is ready to use. ## What can I make a custom field for? Anything. Common examples: - **Cinematography:** Lens, Aperture, Camera Angle, Camera Movement, Shot Size. - **Lighting:** Key Light Position, Quality (hard / soft), Color Temperature. - **Production planning:** Location, Talent, Wardrobe, Equipment, Budget. - **Marketing analysis:** Hook Type, CTA Strength, Brand Visibility. - **Storytelling:** Story Beat, Character Arc, Theme. - **Editing technique:** Cut Type, Pacing, Transition. If you'd like inspiration, see **[AI field discovery](https://storyfolder.com/help/notes/ai-discovery)** — a feature that suggests entire field sets for you. To have a shot field filled in for you, see **[AI Autofill](https://storyfolder.com/help/ai/autofill)**. Fields that describe a whole project rather than a single shot — *Client*, *Job#*, *Status* — belong in **[Video metadata](https://storyfolder.com/help/library/video-metadata)** instead. ## How do I delete a custom field? In **Preferences → Notes & Data**, click the field. There's a delete control in the field's settings. Deleting a field removes it from every shot in every project — there is no undo. ## Will deleting a field destroy my notes? Yes — deleting a field deletes the data stored in it across all your projects. If you just want to stop seeing a field, **hide** it from the **Notes & Data Fields** toggle in the header instead of deleting it. ## Can I rearrange my fields? Yes. In **Preferences → Notes & Data**, you can: - Drag fields up and down within a category. - Drag entire categories up and down to reorder. The new order is reflected in the notes panel immediately. ## Do custom fields apply to all my projects? Yes. Custom fields are global to your account — they exist across every project. When you create a new project, the same fields are waiting for you. ## Do custom fields appear in exports? Yes. Custom fields are exported in: - **Shot list spreadsheets** — as columns. - **PDF storyboards** — alongside the shot. - **Share links** — visible to viewers. You can hide a field from the current view if you don't want it in this particular export. ## Next step → **[Field types](https://storyfolder.com/help/notes/field-types)** --- # Field types URL: https://storyfolder.com/help/notes/field-types Section: Notes & data fields Last updated: 2026-10-09 The six types of custom note fields and when to use each one. # Field types When you create a **[custom field](https://storyfolder.com/help/notes/custom-fields)**, you pick one of six types. The right type depends on the kind of data you're capturing. ## Text A free-form, multi-line text box. **Use it for:** Open-ended observations, descriptions, dialogue snippets, opinions. **Examples:** *Director's Intention*, *Scene Description*, *Why this works*. Text fields don't support search-by-value the way structured fields do — but they're still searched by the global notes search. ## Dropdown A single value picked from a list you define. **Use it for:** Mutually exclusive categories with a known set of options. **Examples:** - *Shot Size:* Close-up / Medium / Wide / Extreme Wide. - *Camera Angle:* High / Low / Eye-level / Dutch. - *Lens:* 24mm / 35mm / 50mm / 85mm / Other. Dropdowns are great for analytics — every value shows up as a column in **[charts](https://storyfolder.com/help/analyze/charts)**. ## Tag Multiple values picked from a list you define. **Use it for:** Non-exclusive categorization where a single shot might have several values. **Examples:** - *Themes:* Loneliness, Family, Power, Greed (a shot can have all four). - *Production Elements:* Practical FX, VFX, Stunt, Green Screen. - *Emotional Beats:* Tension, Relief, Joy, Surprise. ## Checkbox A simple true / false toggle. **Use it for:** Yes/no facts about a shot. **Examples:** - *Has dialogue?* - *Uses a slow motion effect?* - *Features the brand logo on screen?* ## Rating A 1–5 star rating. Leaving every star unlit means "unrated". **Use it for:** Quick quality or preference judgements you'll want to sort and filter by. **Examples:** *Performance*, *Usable take?*, *Lighting quality*. Ratings are filterable with *is at least* / *is at most* / *is between* in the advanced search, and show as star-count distributions in the [Analyze view](https://storyfolder.com/help/analyze/charts). ## Number A numeric value — whole or decimal, positive or negative. `0` counts as a real value; clearing the box leaves the field empty. **Use it for:** Quantities you'll want to filter or export as numbers rather than text. **Examples:** *Take*, *Focal length (mm)*, *Colour temperature (K)*, *Number of extras*. Number fields are filterable with the numeric operators (*is more than*, *is between*…), searchable by value, and export to the shot list as real numeric cells you can sum in a spreadsheet. There is no unit or range setting yet — put the unit in the field name. ## How do I pick the right type? Ask yourself: 1. **Is the answer a quantity?** Yes → **Number**. 2. **Is it a 1–5 judgement?** Yes → **Rating**. 3. **Is the answer free-form or from a fixed list?** Free-form → **Text**. Fixed list → keep going. 4. **Can a shot have more than one answer at once?** Yes → **Tag**. No → keep going. 5. **Is the answer simply yes or no?** Yes → **Checkbox**. Otherwise → **Dropdown**. ## Can I change the type later? Yes. Click a field's type icon in *Settings → Notes & Data* to change it. Existing values are kept, but they only render if they fit the new type — a text value of `12` becomes a number on its next edit, while a sentence in a Number field shows blank. Dropdown and tag options are cleared on a type change. ## How do field types affect the Analyze view? - **Dropdown** and **Tag** fields produce **bar charts** in the [Analyze view](https://storyfolder.com/help/analyze/charts), showing the distribution of values across shots. - **Checkbox** fields show as **on/off** distributions. - **Rating** fields chart by star count. - **Number** fields chart one bar per distinct value for now; a dedicated numeric view is planned. - **Text** fields are excluded from charts — they're free-form. So if you want analytics, prefer Dropdown, Tag, Checkbox, Rating, or Number over Text. ## Next step → **[Categories](https://storyfolder.com/help/notes/categories)** --- # Categories URL: https://storyfolder.com/help/notes/categories Section: Notes & data fields Last updated: 2026-10-09 Organize your note fields into named groups. # Categories A **category** is a named group of note fields. Categories help you keep dozens of fields organized — and let you collapse, hide, or reorder a whole set at once. ## How are categories used? In the notes panel on the right side of the editor, fields are grouped under their category. A typical setup might look like: - 📍 **Story** — Story, Action, Emotional Tone, Symbolism - 🎬 **Cinematography** — Shot Size, Lens, Camera Angle, Movement - 🎨 **Lighting** — Quality, Key Direction, Mood - 🏷️ **Tags & Misc** — Tags, Other Notes You can collapse a category's heading to hide its fields temporarily without removing them. ## How do I create a new category? 1. Open Preferences → Notes & Data. 2. Click + New Category at the bottom. 3. Name it (e.g. Cinematography). 4. Optionally drag it up or down to reorder it among other categories. 5. Add fields by clicking + Add Field inside the category. ## How do I rename or delete a category? In **Preferences → Notes & Data**, click the category title to rename it inline. Click the **⋯** menu next to it to delete the category. > **Warning:** Deleting a category also deletes the fields inside it and all the values stored for those fields. There is no undo. If you only want to hide the category, collapse it from the notes panel instead. ## How do I move a field between categories? In **Preferences → Notes & Data**, click and drag the field. You can drop it anywhere — including a different category — and the order updates immediately. ## Can I have a category with no fields? Yes, but it'll just show as an empty heading in the notes panel. Useful as a placeholder while you're designing a new section. ## Can I collapse categories? Yes. In the notes panel, click the category header to collapse or expand it. There's also a **Collapse all / Expand all** toggle in **Preferences → Notes & Data** if you want to start fresh. ## Do categories appear in exports? Yes. PDF and spreadsheet exports group fields under their category headings, so the document reads the way the editor looks. Share links use the same grouping. ## Next step → **[AI field discovery](https://storyfolder.com/help/notes/ai-discovery)** --- # AI field discovery URL: https://storyfolder.com/help/notes/ai-discovery Section: Notes & data fields Last updated: 2026-10-09 Let an AI assistant suggest the perfect note fields for the work you're doing. # AI field discovery Designing your own note fields is powerful — but staring at a blank Preferences pane can be intimidating. **AI field discovery** is a built-in assistant that turns a quick description of your project into a full set of note fields you can add with a click. > AI field discovery is included on every plan. ## How does it work? 1. Open Preferences → Notes & Data. 2. At the top, find the input that asks "What kind of insights are you trying to capture?" 3. Type a short description: "cinematography breakdown", "ad analysis", "directing study", "lighting design". 4. Click Suggest fields. The AI assistant returns a list of suggested fields, each with a proposed type. 5. Click + next to any field you like. It's added to your active fields. You can use AI discovery as many times as you want — each new prompt produces a fresh set of suggestions. ## What kind of prompts should I try? The more specific you are, the better the suggestions. Examples: - *"Cinematography breakdown of a feature film"* - *"Marketing analysis of a 30-second TV commercial"* - *"Lighting setup notes for an interview shoot"* - *"Storyboard planning for a music video"* - *"Documentary subject and theme tracking"* - *"VFX shot review for a feature"* Avoid one-word prompts like *"video"* — they produce generic suggestions. ## Can I edit a suggested field after adding it? Yes. Once a suggested field is added, it behaves like any other custom field — you can rename it, change its options (for dropdowns and tags), reorder it, move it to another category, or delete it. ## Will the AI replace my current fields? No. AI discovery only adds fields. Your existing setup is untouched. ## Where do the suggestions come from? Suggestions are generated by an AI model running on StoryFolder's servers. We don't store your prompts or train on them — they're processed for that one request and discarded. ## Do I need Pro? No. Custom fields and AI field discovery are included on every plan. Pro adds unlimited boards and shots, unlimited AI Autofill, spreadsheet export, charts, and password-protected links — see **[Compare plans](https://storyfolder.com/help/billing/plans)** or upgrade from **[your account page](https://storyfolder.com/help/account/account-page)**. ## Tips - Run AI discovery once per **project type** rather than per video. Once you have a great Cinematography category, reuse it across every film you study. - Combine prompts: use one prompt to seed a *Lighting* category, then a separate prompt for *Camera*. - Trust your instincts. Delete any suggested field that doesn't resonate — your fields, your call. --- # Fill shot metadata with AI Autofill URL: https://storyfolder.com/help/ai/autofill Section: AI assistant Last updated: 2026-10-09 Enable the fields you want filled, run Autofill on the shots you choose, and review the result without overwriting work you trust. # Fill shot metadata with AI Autofill AI Autofill looks at one representative frame from each shot and proposes a value for the shot metadata fields you have explicitly switched it on for. It fills those fields and nothing else, and every field arrives with its Autofill switch off. It earns its keep on details that are visible and classifiable — framing, interior or exterior, roughly what is happening. It is not a substitute for reading your own board. Reviewing what came back is part of the job, not a sign something went wrong. > **Every plan, and an internet connection.** AI Autofill is included on every > plan. The Free plan covers your first 100 shots — a one-time allowance per > account, counted by StoryFolder's server, and a shot the model could not tag > is not counted — and Pro is unlimited. See [Compare plans](https://storyfolder.com/help/billing/plans). > Every run needs to reach StoryFolder's servers. > **Warning:** Your video file is never uploaded. One frame per shot is, along with the field definitions and context described in [what gets sent](#what-gets-sent). [Transcription](https://storyfolder.com/help/transcription/overview) runs entirely on your computer; Autofill does not. See [Local vs cloud](https://storyfolder.com/help/security/local-vs-cloud). ## Before you begin - A video that has finished importing and has shots. - At least one **shot metadata** field with Autofill switched on. Until then the Autofill action does not appear anywhere in the app. - A first attempt worth learning from: one field, a handful of shots. New to custom fields? Start with [Custom fields](https://storyfolder.com/help/notes/custom-fields) and [Field types](https://storyfolder.com/help/notes/field-types). ## Turn on Autofill for a field 1. Open Preferences (Cmd+P on Mac, Ctrl+P on Windows). 2. Go to Notes & Metadata → Shot Metadata. 3. Find the field you want filled, or create it. 4. Turn on its Autofill switch. 5. Write a one-line field description saying what a good answer looks like. The description is the cheapest steering you have, and it is sent with every run. *Shot size* described as "framing of the main subject: wide, medium or close" produces steadier answers than *Shot size* described as nothing at all. Switching a field on makes it **eligible**. It does not fill anything yet, and it does not change values you already have. ## Choose your default safeguards Two rules live in **Preferences → Notes & Metadata → AI Autofill** and apply to every run. ### Autofill on import Off by default. Turn it on and a video that finishes importing is queued for Autofill across every enabled field, with no dialog and no further prompt. Leave it off while you are still shaping your fields, working on long videos, or testing a field's description. A forty-minute video is hundreds of model calls from one drag-and-drop. ### Only fill empty fields On by default, and the guard that matters most. With it on, a field that already holds a value is never touched — whatever wrote that value. "Empty" is per type: an unticked checkbox, an unrated rating, a tag field with no tags, a blank text or number field. A rating of 0 is unrated; a number of 0 is a value. Overwriting stays possible, but only as a deliberate choice inside a single run — never as a default. ## Run Autofill 1. Select the shot or shots you want filled, in the editor or the library. 2. In the inspector, choose Autofill with AI…. 3. The Autofill fields with AI dialog opens with every enabled field ticked. Untick the ones this run should leave alone. 4. Choose the scope: This shot, N selected, or All N shots. 5. Choose the write mode: Only fill empty fields or Overwrite existing values. 6. Add Additional context if this run needs steering the field descriptions do not give it — "this is a cooking show; focus on the dish being prepared". 7. Check the count line at the foot of the dialog. It reads N fields · M shots, and it is what the run will actually do. > **Danger:** Choosing **Overwrite existing values** shows a counted warning — *will overwrite N filled values across M shots* — before you start it. An Autofill run creates no restore point, so [version history](https://storyfolder.com/help/editing/version-history) cannot bring those values back. Read the count, then start the run. Then click **Autofill N shots**. Run instructions are temporary: they are typed fresh each time the dialog opens and are never saved. Field descriptions persist, which is why anything you will want twice belongs in the description instead. ## Follow a run after it starts The dialog closes as soon as the run is queued. Two things then report it: - **Per-field spinners** on the shot cards and in the inspector, on exactly the (shot, field) pairs still waiting or in progress. - **The Autofill card**, a small panel that stays with you as you move around the app. It says what the run is doing, shows progress while it works, and offers whatever action makes sense at the time. In the app's own words: | The card says | What it means | | --- | --- | | *Tagging shot N of M* | It is working through your shots. Navigating away is safe | | *Paused — StoryFolder is busy. Resuming in 4:31.* | StoryFolder asked the run to slow down. It resumes itself | | *Paused — waiting for a connection.* | Your computer is offline. **Resume now** is offered once you are back | | *Tagged N shots* | Finished, with nothing outstanding | | *Tagged N of M shots. K could not be tagged.* | Finished, partly. **Retry K shots** starts a follow-up run over just those | | A failure sentence | The run stopped. The card carries the reason and the action that fits it | A run keeps going when you navigate away, and it survives quitting and reopening StoryFolder. Closing the window does not cancel it. Anything that does not resolve itself is covered in [Troubleshoot AI Autofill](https://storyfolder.com/help/ai/autofill-troubleshooting). ## Review what came back ### Review a small sample first Take the beginning, the middle and the end of the board rather than the first screenful — the first ten shots of anything are the easiest ten shots in it. Then go looking for trouble on purpose: transitions, graphics and titles, very dark shots, a subject that is partly hidden, and frames where two subjects are equally plausible. If a field survives those, it will survive the rest. ### Review one field at a time For a field with a fixed set of answers, filter the board to one value at a time — *Shot size is Wide*, then the next option — and read the queue. Wrong values stand out against their neighbours in a way they never do in shot order. Look for gaps as well as errors: an option that came back for nothing at all usually means the description is not describing it. Correct values in place as you go. When the field behaves, widen the run. Open **Text** and **Tag** fields have no queue to filter into, so take a fixed sample instead and read it properly. ## What each field type allows | Field type | What comes back | Held to your options | | --- | --- | --- | | Dropdown | One of the options you defined | Yes | | Rating | A whole number, 1–5, or 0 for unrated | Yes | | Checkbox | Ticked or unticked | Yes | | Number | Any finite number | Yes | | Tag | Short tags, including ones you never listed | No — open by design | | Text | Anything | No — a pass-through | That split is the one to hold on to. A constrained field can only come back with an answer from your own list; an open one can come back with anything. Either way, a value that fits the field is not evidence that it is the right value — "Wide" is a legal answer to every shot on your board. Full definitions live in [Field types](https://storyfolder.com/help/notes/field-types). ## What gets sent For each shot in the run: - **One representative frame** — the same frame the board shows as that shot's poster. - **The fields you ticked**: their names, their types, the options of a dropdown or tag field, and the descriptions you wrote. - **This run's additional context**, if you typed any. - **What the project already knows**: its title and description, and the video metadata you have filled in — so "which product is this?" has an answer before anyone looks at a frame. **Your source video is never uploaded.** That is a narrower promise than "nothing leaves the computer", and the difference is the point: frames and field context do leave, to StoryFolder and on to the AI model. Treat a confidential shot note the way you would treat anything you paste into a chat window. See [Local vs cloud](https://storyfolder.com/help/security/local-vs-cloud) and our [Privacy Policy](https://storyfolder.com/privacy). ## What AI Autofill is good at Things a single frame shows. Depending on how you have described your fields, that usually includes: - framing and shot size - interior or exterior, day or night - roughly how many people are in shot - broad action or subject - obvious technical problems — out of focus, badly exposed Treat that as a starting list, not a supported taxonomy. Your fields are yours; what Autofill can do with them depends on what you asked for. ## What to enter yourself Anything that is true of the job rather than visible in the picture: client, job number, rights and release status, approval state, who booked the day, where the footage came from. - Facts about the whole project belong in [video metadata](https://storyfolder.com/help/library/video-metadata), typed once. - A known value that many shots share is a [copy and paste](https://storyfolder.com/help/editing/copy-paste-metadata) job, not a model's guess. ## Limits worth knowing - **Results can be wrong, and results can be blank.** Both are normal outcomes. - **One frame is not the whole shot.** Action that starts after the poster frame is action Autofill never saw. - **A rejected value is silent.** An answer outside a field's allowed set is dropped and nothing is written, so an empty cell does not tell you whether the model declined or was overruled. - **Overwrite replaces human work.** With **Overwrite existing values** chosen, a value you typed is a value it can replace. - **There is no undo.** Autofill writes directly and records no restore point. [Version history](https://storyfolder.com/help/editing/version-history) has nothing to roll back, and `Cmd`+`Z` will not reverse a run. Your guards are **Only fill empty fields** and running small before running wide. - **Nothing marks a value as AI-written.** In the cell it looks exactly like one you typed. - **It does not know who anyone is.** No identity, no consent, no rights status, no facts from outside the frame and the context you sent. - **The Free plan covers 100 shots.** On the Free plan the **Autofill fields with AI** dialog shows how many of your 100 shots are left. A run larger than what is left fills the first shots and then stops with an upgrade prompt; the shots it filled stay filled. Pro is unlimited — see [Compare plans](https://storyfolder.com/help/billing/plans). ## Related pages - [Troubleshoot AI Autofill](https://storyfolder.com/help/ai/autofill-troubleshooting) - [Custom fields](https://storyfolder.com/help/notes/custom-fields) · [Field types](https://storyfolder.com/help/notes/field-types) - [Video metadata](https://storyfolder.com/help/library/video-metadata) - [Copy and paste metadata](https://storyfolder.com/help/editing/copy-paste-metadata) - [Version history](https://storyfolder.com/help/editing/version-history) - [Local vs cloud](https://storyfolder.com/help/security/local-vs-cloud) ## Next step → **[Troubleshoot AI Autofill](https://storyfolder.com/help/ai/autofill-troubleshooting)** --- # Troubleshoot AI Autofill URL: https://storyfolder.com/help/ai/autofill-troubleshooting Section: AI assistant Last updated: 2026-10-09 Read the Autofill card, tell a temporary pause from a finished run, and take the next step safely. # Troubleshoot AI Autofill An Autofill run keeps track of itself. It knows which shots have been written and which have not, it survives navigating away and restarting the app, and it tells a pause apart from a finish. So the first move is almost never to start again — it is to read what the card says. ## Check the Autofill card | The card says | What it means | Do this | | --- | --- | --- | | *Tagging shot N of M* | It is working through your shots | Nothing. Move around the app freely; the run continues | | *Paused — StoryFolder is busy. Resuming in m:ss* | StoryFolder asked this run to slow down | Let the countdown run out. It resumes itself | | *Paused — waiting for a connection* | Your computer is offline | Reconnect, then **Resume now** | | *Tagged N shots* | Everything asked for was settled | Review, then **Dismiss** | | *Tagged N of M shots. K could not be tagged.* | Partly done, and it stopped trying on those K | Review what landed, then **Retry K shots** | | A failure sentence | The run hit something terminal | Read the sentence and the section for it below | A run you cancel yourself draws no card. It stopped because you asked it to. ## The Autofill action does not appear **Autofill with AI…** appears in the inspector only when there is something for it to fill. - **No field has Autofill switched on.** Open **Preferences → Notes & Metadata → Shot Metadata** and turn on the switch for at least one field. This is the usual answer. - **You are looking at a video, not a shot.** Autofill is a shot metadata feature. The **Video Metadata** pane carries no Autofill control at all, by design — see [Video metadata](https://storyfolder.com/help/library/video-metadata). - **Your plan's AI Autofill shots are used up.** The Free plan includes your first 100 shots; opening Autofill after that shows an upgrade prompt rather than an empty dialog. ## The run is waiting ### StoryFolder is busy StoryFolder asked this run to slow down, and it stepped back. The card shows a countdown, and the run restarts itself when the countdown ends. Wait it out. Resuming early only re-trips the limit it is backing away from, which is why the card offers no resume button in this state. Do not start a second run over the same shots. You would be paying for the same work twice and racing two jobs at one board. ### Your computer is offline Autofill needs a connection for every run — this is the cloud half of StoryFolder, unlike [transcription](https://storyfolder.com/help/transcription/overview), which runs on your machine once its model has downloaded. Reconnect, then use **Resume now** on the card. Nothing already written is lost while it waits. ## The run completed with errors *Tagged 62 of 126 shots. 64 could not be tagged.* is a real, finished outcome — not a crash, and not a total failure. Sixty-two shots are genuinely written. 1. Review the values that did land, the same way you would review any run. 2. Click Retry N shots on the card. The retry is a new run covering only the shots that failed, linked back to the one that produced them. 3. Leave Only fill empty fields on for that retry, so a successful value from the first pass is never replaced by a second attempt. If the retry fails the same way, stop retrying and read [the results are consistently wrong](#the-results-are-consistently-wrong) — a run that cannot answer for a set of shots is usually being asked the wrong question about them. ## Some fields stayed empty An empty cell after a run has several honest explanations: - **The field already had a value**, and **Only fill empty fields** protected it — the intended behaviour. - **The answer did not fit the field.** A value outside a dropdown's options, or outside a rating's range, is dropped rather than forced in. Nothing is written, and nothing is announced. - **The frame did not carry the answer.** One frame per shot is all Autofill sees. - **The question was ambiguous.** A field called *Type* with no description can mean six things; so can a run instruction that assumes context the model does not have. The first is a setting. The rest are usually fixed by a better field description, or by a field type with a fixed set of answers. ## The results are consistently wrong Stop widening the run — every extra shot is another value to correct. 1. Rename the field to say what it actually wants, and rewrite its description to name a good answer. 2. Where the answer has a fixed set of possibilities, use a Dropdown, Checkbox, Rating or Number field rather than Text. A constrained field cannot invent an answer. 3. Re-run on a small, varied sample — not the easiest ten shots. 4. Read that sample before touching the rest of the board. If the fact simply is not in the frame — a client, a job number, a release status — no description will fix it. Type it once as [video metadata](https://storyfolder.com/help/library/video-metadata), or [paste it across the shots](https://storyfolder.com/help/editing/copy-paste-metadata) that share it. ## Sign-in or plan errors The card names these and offers the one control that fixes them. - **Sign in** — your account could not be verified. Signing back in and starting a fresh run is the whole fix. See [Sign in & sign out](https://storyfolder.com/help/account/sign-in). - **See plans** — the run stopped because your plan's included AI Autofill shots (100 on Free) are used up. Shots already filled stay filled. Upgrade to Pro for unlimited Autofill, or see [Compare plans](https://storyfolder.com/help/billing/plans). Neither is a temporary wait: a run that paused because StoryFolder was busy resumes itself, while a run stopped for sign-in or plan reasons stays stopped until you act. ## A run looks stuck after restarting StoryFolder Runs are built to survive a restart: StoryFolder remembers where one had got to and picks it up again when it reopens. Give it a moment after launch, then reopen the project. If the card still shows no movement: 1. Write down the exact message on the card, how many shots failed, and which project it belongs to — before you retry or dismiss anything. 2. Retry or resume, whichever the card offers. 3. If nothing changes, send us your logs and contact support with what you wrote down. Dismissing a card clears it away for good. Do that after you have written the error down, not before. ## Before you retry - Check what already landed. A retry over shots that are already correct is wasted work. - Keep **Only fill empty fields** on, unless replacing values is exactly what you mean to do. - Narrow the run to the shots that failed or are still empty. - Keep the failed run's card until you have read its error. ## What to include when you contact support - Your StoryFolder version and operating system. - The project's title — not the footage itself. - What the card said, including the number of shots that failed. - Whether retrying or resuming changed anything. - Your [logs](https://storyfolder.com/help/troubleshooting/logs). ## Related pages - [Fill shot metadata with AI Autofill](https://storyfolder.com/help/ai/autofill) - [Local vs cloud](https://storyfolder.com/help/security/local-vs-cloud) - [Compare plans](https://storyfolder.com/help/billing/plans) - [Send us your logs](https://storyfolder.com/help/troubleshooting/logs) · [Contact support](https://storyfolder.com/help/troubleshooting/contact-support) --- # Publish a share link URL: https://storyfolder.com/help/sharing/publish Section: Sharing storyboards Last updated: 2026-10-09 Turn your storyboard into a shareable, mobile-friendly web link in one click. # Publish a share link When you're ready to show your work to someone — a client, a teammate, a study group — you can publish a beautiful, interactive web version of your storyboard in a single click. ## How do I publish my storyboard? 1. Open the editor for the project you want to share. 2. Click the Share Link button in the top-right of the editor header. 3. In the dialog, click Publish. 4. StoryFolder uploads your shots, notes, and metadata to a hosted page on storyfolder.com/b/<id>. 5. Copy the link. You're done. ## What does a share link contain? A published share link shows your viewers: - The video itself (embedded if it's a public YouTube source). - Your storyboard in their choice of **Storyboard**, **Grid**, or **List** view. - All of your visible note fields, grouped by category. - Your favorites (highlighted). - Video-level metadata: title, duration, your name. It's mobile-friendly, so it works equally well on phone, tablet, and desktop. ## Can I update a published link? Yes. After your first publish, the button changes to **Publish Changes**. Clicking it pushes your latest notes, shots, and thumbnails to the same URL. The link doesn't change — but everyone who has it sees the new version next time they refresh. ## Will viewers see my hidden shots? No. Hidden shots are excluded from share links. So are any shots filtered out by your active search query at the time you publish — see **[Search & filters](https://storyfolder.com/help/editing/search)**. ## Will viewers see all my note fields? They see whichever fields are currently **visible** in your editor. To omit a field for a particular publish: 1. Open the **Notes & Data Fields** toggle in the header. 2. Untick the fields you don't want viewers to see. 3. Click **Publish Changes**. The hidden fields stay safe in your local copy — only the publish version is trimmed. ## Can I unpublish a link? Yes — open the Share dialog and click **Unpublish**. The URL stops working immediately. Re-publishing later gives you a new URL. ## Can I share videos I imported from a file? Yes. The web page will show your storyboard, thumbnails, and notes — but won't include an embedded player (since the file lives on your machine). If the video is also available online (e.g. unlisted YouTube), you can paste the link in the *Video Overview* note so viewers can find it. ## Who can see a published link? That depends on the **privacy level** you set when you publish. See **[Privacy levels](https://storyfolder.com/help/sharing/privacy)** for the full rundown. ## Next step → **[Privacy levels](https://storyfolder.com/help/sharing/privacy)** --- # Privacy levels URL: https://storyfolder.com/help/sharing/privacy Section: Sharing storyboards Last updated: 2026-10-09 Choose who can see your published storyboard. # Privacy levels When you publish a share link, you choose how visible it is. There are three privacy levels to pick from. ## What are the privacy levels? - **Public** — anyone with the link can view. - **Private (link-only)** — anyone with the link can view; use this when you only want people you send the URL to to see it. - **Password-protected** — viewers need the link *and* a password you set. (Pro) > **Info:** Regardless of the level you pick, **all share pages are disallowed to search-engine crawlers** in our `robots.txt` (every path under `/b/` is blocked), so compliant search engines are asked not to index any share page. The privacy level controls the access expectation you set, not whether a well-behaved crawler indexes the page. Note that `robots.txt` is a request, not an access control — treat a "public" or "private (link-only)" link as *"anyone who has the URL can open it."* For anything you need gated, use **password-protected**. ## How do I change the privacy level? 1. Open the editor and click Share Link in the header. 2. In the dialog, pick a level: Public, Private, or Password. 3. If you chose Password, enter the password. 4. Click Publish or Publish Changes. You can change a published link's privacy level any time — re-publish and the new setting takes effect. ## When should I use Public? - You're publishing a resource you're happy for anyone with the link to open. - You're showcasing your work in a portfolio and will share the link yourself. - You don't need password protection and want the simplest way to hand someone a link. (Share pages aren't indexed by search engines today — see the note above — so "Public" is about how freely you hand out the link, not about being found on Google.) ## When should I use Private (link-only)? - You're sending it to a specific person or small group. - You want full control over who you give the URL to. - You want the "link-only" framing so it's clear the page isn't meant to be findable — just shareable. ## When should I use Password-protected? - You're sharing with a client and want extra reassurance the work isn't leaked. - You're sharing internal-only research with a team. - You want a one-time password you can revoke later by re-publishing. > **Tip:** Password-protected pages compare your viewer's input against the password you set at publish time. To rotate a password, set a new one in the Share dialog and click Publish Changes. Old passwords stop working immediately. ## Are there any caveats? - **Embedded videos** on the share page rely on the source (YouTube) being accessible to the viewer. If the original was unlisted/private, viewers will see the storyboard but the embedded player may not load. - **Storyboard images and notes** are served from StoryFolder's CDN; viewers always see them as long as the link works. - **Password-protected pages** are public on the URL but the content is gated behind the password check. ## How do I stop sharing? In the Share dialog, click **Unpublish**. The URL stops working. Re-publishing creates a new link. ## Next step → **[What viewers see](https://storyfolder.com/help/sharing/viewer-experience)** --- # What viewers see URL: https://storyfolder.com/help/sharing/viewer-experience Section: Sharing storyboards Last updated: 2026-10-09 A walkthrough of the experience your shared storyboards give to the people you share them with. # What viewers see It helps to know what your client, teammate, or audience will encounter when they open a StoryFolder share link. ## What does the shared page look like? When a viewer opens your link, they see: - A **header** with your storyboard's title and your name as the author. - An **embedded video player** (if the source was a public YouTube link). - The **storyboard itself**, with one of three view options: - **Storyboard** — large thumbnails with notes alongside. - **Grid** — dense thumbnails for visual scanning. - **List** — compact rows with thumbnails and metadata. - A **view switcher** so viewers can pick the layout they prefer. ## Can viewers interact with the storyboard? Yes — but they can't edit. Specifically, viewers can: - Switch between view modes. - Click a shot to jump the embedded video player to that timecode. - Read all of your notes. - See which shots are favorited. - Read on mobile, tablet, or desktop. They **cannot**: - Add, edit, or delete notes. - Re-detect shots or run any AI tools. - Export PDFs or images (yet). - See hidden shots or fields you toggled off before publishing. ## Do viewers need a StoryFolder account? No. Anyone with the link can view, without signing up. ## What if my video is from a file (not a URL)? The shared page shows your storyboard, thumbnails, and notes — but the embedded player is omitted, since the original video lives on your machine. If you'd like viewers to be able to watch the video alongside, paste a URL to the source video in a video-level note before publishing. ## Will viewers see my email or full name? They see the **name** on your StoryFolder account. They don't see your email address. ## Can viewers leave comments? Not yet. Comment threads on shared links are on our roadmap. For now, send the link and a comment request through your usual channels (email, Slack, etc.). ## How long does the link stay live? As long as you keep it published. You can **Unpublish** any time from the Share dialog — the link will stop working immediately. ## Can I see who viewed a link? We don't currently expose per-viewer analytics for share links. If this is important to you, [let us know](https://storyfolder.com/help/troubleshooting/contact-support). ## Next step → **[Update or unpublish](https://storyfolder.com/help/sharing/manage)** --- # Update or unpublish a share link URL: https://storyfolder.com/help/sharing/manage Section: Sharing storyboards Last updated: 2026-10-09 Push changes to a live link, or take a link offline entirely. # Update or unpublish a share link Once you've published a storyboard, you can keep iterating. StoryFolder makes it easy to push updates or take the link down entirely. ## How do I push updates to a published storyboard? 1. Open the editor and make your changes — new notes, new shots, updated thumbnails, whatever. 2. Click the Share Link button in the header. 3. You'll see Publish Changes instead of Publish. 4. Click it. Your latest version is pushed to the same URL. Anyone who refreshes the link will now see the new content. The URL itself doesn't change. ## How often do I need to re-publish? Only when you want viewers to see your latest changes. Edits in the desktop app stay local until you click **Publish Changes**. ## Does re-publishing reset the privacy level? No. The current privacy level is kept unless you explicitly change it in the dialog before publishing. ## How do I take a link offline? 1. Open the Share dialog from the editor header. 2. Click Unpublish. 3. The URL stops working immediately. If you re-publish later, you'll get a **new** URL — the old one stays dead. ## Can I rename my storyboard's title in the share link? The title shown on the share page is the **project title** in StoryFolder. Rename the project from the home screen (click the project's title to edit it), then re-publish. ## Can I have two share links for the same project? No — each project has exactly one share link at a time. If you want to share two versions, duplicate the project (you can re-import the same source video into a fresh project) and publish each independently. ## How do I find all of my published links? The Share dialog of each project tells you whether it's currently published. We're working on a centralized "Published storyboards" view — until then, the canonical list is your set of projects. ## Will viewers be notified when I update? No. Updates are silent. If you'd like recipients to know about a change, message them the link again with a quick note. ## I unpublished by mistake — can I recover the link? The URL is gone, but the **content** is safe in your desktop app. Just click **Publish** again — you'll get a fresh URL. Send out the new link. --- # Export options overview URL: https://storyfolder.com/help/exporting/overview Section: Exporting Last updated: 2026-10-09 A guided tour of all the ways you can export your work from StoryFolder. # Export options overview When you're ready to take your storyboard out of StoryFolder, head to the **Export view**. From here you can produce PDFs, image sets, spreadsheets, video clips, and even scripts — alone or all together. ## How do I open the export view? - Press `X` on your keyboard, or - Click the workflow switcher in the top-left and pick **Export**. You can return to the editor any time with `S`. ## What export formats are available? | Format | What it is | Plan | | --- | --- | --- | | **PDF storyboard** | Multi-page PDF with thumbnails, timecodes, and notes. | All plans | | **Images** | Individual JPG/PNG files for each shot. | All plans | | **Shot list spreadsheet** | CSV/Excel of shot timecodes, durations, and metadata. | (Pro) | | **Video clips** | Individual video clips for each shot. | (Pro) | | **Scripts & subtitles** | Plain script and SRT subtitle files (when transcripts are available). | All plans | | **Editorial timeline files** | EDL and XML files that open directly in Premiere, Resolve, Avid or Final Cut — see [which file for which app](https://storyfolder.com/help/exporting/editorial). | (Pro) | | **Selects reel** | One H.264 video of every visible shot, back to back — a fast reference copy. | All plans | You can pick one or several at the same time — each format you enable is added to the export job. ## How do I run an export? 1. Switch to the Export view. 2. Choose a destination folder at the top. 3. Toggle on the formats you want. 4. For Editorial, check the box for each timeline format you want (see which file for which app). 5. Click Add to Queue. 6. Watch the progress in the queue panel. 7. When jobs finish, click Show in Finder / Show in File Explorer to find them. ## Can I queue multiple exports? Yes. You can queue more than one export job. They run sequentially. You can: - **Pause / resume** the queue. - **Cancel** an in-progress job. - **Delete** completed jobs from the list. ## Does the export respect my filters and selection? Yes. Exports include whatever shots are **currently visible** in the editor — meaning: - Hidden shots are **excluded**. - An active search query narrows the export. - Favorites are not auto-filtered (use the favorites toggle if you want only favorites). - Visual effects (B&W, contrast) are applied to image and PDF exports. This makes filtering before export a powerful way to control what ends up in the file. ## Where do exports get saved? To whatever **destination folder** you've picked. That folder is remembered between sessions for convenience. ## Can I export part of a video? Yes — narrow your storyboard with **search**, **favorites**, or by **hiding** shots, then run the export. Only the visible shots are included. ## What if I run out of disk space mid-export? The job fails with a disk-space error. Free space and click **Retry** in the job's row. Already-exported files in the destination folder remain. ## Next step Pick the format you want first: - → **[PDF storyboard](https://storyfolder.com/help/exporting/pdf)** - → **[Images](https://storyfolder.com/help/exporting/images)** - → **[Shot list spreadsheet](https://storyfolder.com/help/exporting/spreadsheet)** - → **[Video clips](https://storyfolder.com/help/exporting/clips)** - → **[Scripts & subtitles](https://storyfolder.com/help/exporting/script)** - → **[Editorial export](https://storyfolder.com/help/exporting/editorial)** - → **[Print directly](https://storyfolder.com/help/exporting/print)** --- # PDF storyboard export URL: https://storyfolder.com/help/exporting/pdf Section: Exporting Last updated: 2026-10-09 Generate a multi-page PDF storyboard from your project. # PDF storyboard export A PDF export is the most common way to share a polished storyboard outside of StoryFolder. It's great for client deliverables, printed pitch decks, classroom handouts, or your own archives. ## How do I export a PDF? 1. Press X to open the Export view. 2. Set the destination folder. 3. Toggle Storyboard PDF on. 4. Click Add to Queue. 5. When the job completes, click Show in Finder / Show in File Explorer to find the file. The output is a single multi-page PDF saved in your destination folder. ## What does the PDF look like? Each page includes shots laid out side by side with: - The shot thumbnail (with any custom thumbnail you've picked). - Its shot number. - Its start timecode and duration. - Your visible note fields, grouped by category. You can tweak the layout by changing which note fields are visible in the editor *before* you export. ## Can I print the PDF for a binder or pitch? Yes — it's formatted for 8.5" × 11" pages. Most printers handle it cleanly without adjustment. If you'd rather skip the file and print directly, see **[Print directly](https://storyfolder.com/help/exporting/print)**. ## Does the PDF include hidden shots? No. Hidden shots are excluded. So is any shot filtered out by an active search. ## Can I customize the PDF style? A few tools you have today: - **Visual effects** (B&W, contrast) — toggle them in the editor before export. - **Field visibility** — toggle which note fields appear with the **Notes & Data Fields** button in the editor header. - **Filters** — use favorites, hidden, or search to control which shots show up. Custom branding for client-facing exports (logos, color themes, custom layouts) is coming with the **Teams** plan — [get notified](mailto:jeff@jeffjassky.com?subject=StoryFolder%20Teams%20—%20notify%20me) or [contact support](https://storyfolder.com/help/troubleshooting/contact-support) if you need white-labeled exports today. ## Can I include the video itself in the PDF? A PDF can't include a playable video, but it can include the **embedded link**. The first page of the PDF includes the source URL (for YouTube imports) so viewers can jump to the original video. ## What about the embedded preview links from share pages? If you'd prefer your client could watch the video alongside the storyboard, share the storyboard as a [share link](https://storyfolder.com/help/sharing/publish) instead of (or in addition to) a PDF. ## Next step → **[Images](https://storyfolder.com/help/exporting/images)** --- # Image export URL: https://storyfolder.com/help/exporting/images Section: Exporting Last updated: 2026-10-09 Export every shot as an individual image file. # Image export Sometimes you need the raw images themselves — for a slide deck, a moodboard, a Notion doc, or a design comp. Image export gives you one file per shot. ## How do I export images? 1. Press X to open the Export view. 2. Set your destination folder. 3. Toggle Images on. 4. Click Add to Queue. 5. When the job completes, your images are in a sub-folder of the destination, named after the project. ## What format are the images? JPG by default — small files, suitable for slide decks and web use. We're working on a configurable format setting (PNG, WebP) for future updates. ## What are the file names like? Files are named so they sort in shot order, with timecode and shot number in the filename: ``` 0001-00.00.01.jpg 0002-00.00.04.jpg 0003-00.00.07.jpg … ``` This makes it easy to import them in shot order into other tools. ## Do custom thumbnails get used? Yes. Whatever thumbnail you've selected with the **[Frame Selector](https://storyfolder.com/help/editing/thumbnails)** tool is the image that gets exported. If you haven't set a custom thumbnail, the first frame of the shot is used. ## Do visual effects get applied? Yes. If you have Black & White or Boost Contrast on in the editor, the exported images will match. ## Are hidden shots excluded? Yes — only currently visible shots are exported. ## What resolution are the images? Images are exported at the source video's resolution. If your source is 4K, the images are 4K. If it's 1080p, they're 1080p. ## Can I export images for only my favorites? Yes. Turn on the **♥ Favorites** filter in the editor before opening Export. Only favorited shots will be visible and exported. ## Next step → **[Shot list spreadsheet](https://storyfolder.com/help/exporting/spreadsheet)** --- # Shot list spreadsheet URL: https://storyfolder.com/help/exporting/spreadsheet Section: Exporting Last updated: 2026-10-09 Export your shots and notes to a spreadsheet for analysis or scheduling. # Shot list spreadsheet (Pro) Spreadsheets are great for analysis, planning, and scheduling. A shot list export turns your storyboard into a structured table — one row per shot, one column per note field. > Spreadsheet export is available on the **Pro** plan. ## How do I export a spreadsheet? 1. Press X to open the Export view. 2. Set your destination folder. 3. Toggle Shot list / Spreadsheet on. 4. Click Add to Queue. 5. The result is a .xlsx file you can open in Excel, Numbers, or Google Sheets. ## What columns are included? Each row is one shot or merged section. Built-in columns: - **Shot Number** - **Start Time** (HH:MM:SS.mmm) - **End Time** (HH:MM:SS.mmm) - **Duration** (seconds) - **Frames** (start–end) - **Favorited** (true/false) Then **every visible note field** appears as a column — both the default fields and any custom fields you've created. ## Can I control which columns appear? Yes. Toggle the **Notes & Data Fields** menu in the editor *before* you export, and untick any field you don't want as a column. Hidden fields aren't included. ## What format are the columns for tags and dropdowns? - **Dropdown** values appear as the single chosen option (e.g. *Close-up*). - **Tag** values are comma-separated within a single cell (e.g. *Drone, Daylight, Wide*). - **Checkbox** values are `TRUE` / `FALSE`. - **Number** values are plain numeric cells — they sort and sum in Excel and Sheets. - **Rating** values are the whole number of stars, 1–5; unrated shots are blank. This makes it easy to filter or pivot in Excel. ## Can I import the spreadsheet back into StoryFolder? Not yet. The shot list export is one-way. We're working on round-tripping. ## What about CSV? The current export format is `.xlsx`. To get CSV, open the file in Excel or Sheets and use **Save As → CSV**. ## Why isn't this option available? If the toggle is greyed out and shows an upgrade prompt, you're on the Free plan. See **[Compare plans](https://storyfolder.com/help/billing/plans)** to upgrade. ## Next step → **[Video clips](https://storyfolder.com/help/exporting/clips)** --- # Video clips URL: https://storyfolder.com/help/exporting/clips Section: Exporting Last updated: 2026-10-09 Export an individual video clip for each shot in your storyboard. # Video clips (Pro) Some workflows want the actual moving footage of each shot — for assembling a reference reel, dropping into an edit timeline, or building a moodboard of clips. > Video clip export is available on the **Pro** plan. ## How do I export clips? 1. Press X to open the Export view. 2. Set your destination folder. 3. Toggle Clips on. 4. Click Add to Queue. 5. One .mp4 file is produced per shot, named in shot order. ## What format are the clips? Every clip is re-encoded to H.264, cut exactly at the shot's boundaries — there's no keyframe slop and no mode to pick. If you need the original codec, bit-for-bit source quality, or want your NLE to cut from the source file itself rather than from a re-encode, use [Editorial export](https://storyfolder.com/help/exporting/editorial) instead — it writes a timeline that points at the file you imported. Note that it points at *that* file, not at the camera originals behind a rendered source. ## Do clips include audio? Yes — both the audio and the video tracks are exported. If your source is muted, the clips are muted too. ## How big will the output be? Clips are re-encoded to H.264 at a fixed quality setting, so total output size is usually smaller than the source rather than proportional to the source's own bitrate. ## Can I export only some shots? Yes. Filter your storyboard with **favorites**, **search**, or **hidden** before opening Export. Only visible shots are exported. ## What happens if I deleted the source file? For **file imports**, if you've deleted the original video, clip export can't run. Put the file back and try again, or re-import it. For **URL imports**, the cached download is what gets used, so clips export from there. ## How long does it take? Depends on your CPU and the source, since every clip is re-encoded — plan for roughly 0.3–1× real-time. ## Why isn't this option available? If the toggle is greyed out and shows an upgrade prompt, you're on the Free plan. See **[Compare plans](https://storyfolder.com/help/billing/plans)** to upgrade. ## Next step → **[Scripts & subtitles](https://storyfolder.com/help/exporting/script)** --- # Scripts & subtitles URL: https://storyfolder.com/help/exporting/script Section: Exporting Last updated: 2026-10-09 Export a plain-text script and SRT subtitle file from a transcribed video. # Scripts & subtitles If your video has been transcribed (automatically, or because you imported a video with captions), you can export the transcript as a script and as a standard subtitle file. > Transcript and subtitle exports are **free on every plan**. The option only appears when a transcript is available for the video. The gated export is the [Spreadsheet / Shot List](https://storyfolder.com/help/exporting/spreadsheet). ## How do I export a script? 1. Press X to open the Export view. 2. Set your destination folder. 3. Toggle Transcript & Subtitles on. (You'll only see this option when a transcript is available.) 4. Tick the formats you want — SRT, WebVTT, plain text, CSV, Fountain. At least one is required. 5. Click Add to Queue. ## What does the script look like? The script is a plain-text file that lists the spoken dialogue and on-screen text along with timecodes. It's not a Final Draft script — it's a readable reference of what's said and when. A typical entry: ``` [00:00:05.300] So I thought to myself, what if shaving was simpler? [00:00:09.100] Just one blade. Just one handle. Just one price. ``` ## What does the SRT subtitle file look like? Standard SRT format. You can drop it onto any video editor, YouTube upload, or media player that supports subtitles. ``` 1 00:00:05,300 --> 00:00:09,100 So I thought to myself, what if shaving was simpler? 2 00:00:09,100 --> 00:00:12,400 Just one blade. Just one handle. Just one price. ``` ## When isn't this option available? The toggle only offers itself once a completed transcript exists for the video. Transcripts are generated automatically for many supported sources — if you're missing one, [contact support](https://storyfolder.com/help/troubleshooting/contact-support) and we can investigate. ## Can I edit the transcript before exporting? Yes. Open the **Transcript** tab (`R`), correct the text, and fix the speakers — see **[Transcription](https://storyfolder.com/help/transcription/overview)**. What you export is what you corrected. ## Does the script include speaker names? Yes, once the video has more than one speaker and **Identify speakers** was on for the run. Renaming a speaker changes the name in every export. See **[Identify speakers](https://storyfolder.com/help/transcription/speakers)**. ## What else can I export the transcript as? CSV and Fountain, alongside SRT, WebVTT and plain text. See **[Searching & exporting a transcript](https://storyfolder.com/help/transcription/search-and-export)** for what each is for. ## Next step → **[Editorial export](https://storyfolder.com/help/exporting/editorial)** --- # Editorial export URL: https://storyfolder.com/help/exporting/editorial Section: Exporting Last updated: 2026-10-09 Export EDL and XML timeline files that open in Premiere, Resolve, Avid or Final Cut. # Editorial export (Pro) If you're taking your selects into an edit, Editorial export writes timeline files instead of rendered video — files that open directly in your NLE with every visible shot already cut, in order, pointing back at the source file you imported into this board. That last part is the scope of the feature, so it's worth being precise about. A board holds one video, so a timeline holds one video: every event references **the file you imported**, at that file's frame rate. If you imported a rendered cut or a stringout, the timeline conforms to *that* file — not to the camera originals behind it, whose filenames, reels and source timecode a rendered file never carried. StoryFolder also writes **no AAF**, and **imports no timeline format at all** — EDL, XML, FCPXML, AAF and OTIO are all write-only here. > Editorial timeline files are available on the **Pro** plan. The **Selects reel** described below is a separate toggle and is free on every plan. ## Which file should I use? No single timeline file opens in every editing app — that's true of timeline interchange in general, not a StoryFolder limitation. StoryFolder writes three files so you can pick the one(s) your software reads: | File | Opens in | Doesn't open in | | --- | --- | --- | | `Selects.edl` (EDL) | Premiere, Resolve, Avid | Final Cut Pro — it has had no EDL import since Final Cut Pro 7. | | `Selects.xml` (Final Cut Pro 7 XML) | Premiere, Resolve, Avid | Final Cut Pro — despite the name, this is the older interchange format; current Final Cut only reads its own FCPXML. | | `Selects.fcpxml` (Final Cut Pro XML) | Final Cut Pro, Resolve | Premiere — it reads `.xml`, but has never read `.fcpxml`. | If you edit in Premiere, Resolve or Avid, check **EDL** or **Final Cut Pro 7 XML** (either works; the XML also carries clip names). If you edit in Final Cut, check **Final Cut Pro XML** — it's the only file that opens there. ## How do I export timeline files? 1. Press X to open the Export view. 2. Set your destination folder. 3. Toggle Editorial on. 4. Check the box for each format you want. 5. Click Add to Queue. 6. The files land in an Editorial folder inside your destination, alongside a README.txt that repeats the source, frame rate and timecode details below. ## How do I relink the media in Resolve? Resolve needs to already know about your source clip before it can conform an EDL or XML to it: 1. Open your project in DaVinci Resolve. 2. Bring your source clip into the Media Pool first — File → Import Media, or drag the file in. 3. File → Import → Timeline → Import AAF, EDL, XML… 4. Choose Selects.edl or Selects.xml, set the frame rate to match your source, and click Import. 5. Resolve builds a new timeline, matching each event to the clip already sitting in your Media Pool. Importing the EDL before the source is in the Media Pool is the most common reason a timeline "imports but nothing links." ## Why does the timecode read 00:00:00:00? That's the normal case, not a fault — most cameras, screen recorders and downloaded video never stamp a start timecode into the file at all, so there's nothing to write except zero. What your NLE actually uses to find the right clip for each event isn't the timecode — it's the eight-character **reel name** (`SF001`) on every line. That's the field editing software matches source media by. The real filename still travels with the export, in a comment line your NLE can display, so you can always confirm which file `SF001` refers to. ## What if my source has a variable frame rate? A timeline file works by writing one fixed number — "this many frames per second" — at the top of the file, and counting every cut point against it. A source with a **variable frame rate** (it speeds up or slows down instead of holding one steady rate) has no single such number, so cut points drift slightly the further into the file you go. That no longer stops the export. StoryFolder writes the timeline at the file's nominal rate and states the **measured drift across the whole file** in `README.txt`, so you know how much to expect before you trim. The **Selects reel** is unaffected either way — it's a rendered video, so ffmpeg reads the real per-frame timing off the source and re-encodes to a steady rate. ## Why did my export skip a timeline format? Two cases, and `README.txt` names whichever one applies: - **An EDL at 100 or 120 fps.** A CMX3600 EDL counts frames in a two-character field, so it cannot spell a number past 99. At those rates the EDL is skipped and any other format you checked is still written — Final Cut Pro 7 XML and FCPXML both carry the rate exactly, so check one of those instead. - **A source with no expressible frame rate at all.** Nothing readable to build a timeline from. You get the `Editorial` folder with a `README.txt` explaining it, rather than an empty folder under a completed job. Every other output in the export is unaffected. ## What is the Selects reel, and why is it H.264? **Selects reel** is a separate toggle, next to Editorial in the Export view — one video file containing every visible shot, back to back, in board order. It's the fastest way to watch your selects without opening an NLE, and it's free on every plan. The reel is always encoded to H.264 at one fixed quality setting — there's no format picker. It's built to be watched, not cut from. If you need full-quality footage to edit with, use the EDL/XML timeline files instead and conform them to the source file you imported — that's the file those events point at. Going further back than that, to the camera originals behind a rendered source, is a conform your NLE does from the timeline that made the render; a rendered video carries nothing StoryFolder could use to get there. ## What if my source file is offline? Editorial timeline files still export — they only need the technical details StoryFolder already has on file (frame rate, dimensions, audio), not the source file itself. The **Selects reel** does need the file, since it's rendering new video from it; if the source is missing, that toggle shows the same offline notice as [Clips](https://storyfolder.com/help/exporting/clips). ## Does this respect my filters? Yes. Hidden shots are excluded, and an active search narrows the export the same way it does for every other output. If you hide a shot and re-export, the remaining clips renumber `Shot 1..N` consistently across the timeline files, the Images folder and the shot list spreadsheet. ## Why isn't the Editorial toggle available? If it's greyed out with an upgrade prompt, you're on the Free plan — timeline files are a **Pro** feature. See **[Compare plans](https://storyfolder.com/help/billing/plans)** to upgrade. The Selects reel toggle next to it is always available. ## Next step → **[Print directly](https://storyfolder.com/help/exporting/print)** --- # Print directly URL: https://storyfolder.com/help/exporting/print Section: Exporting Last updated: 2026-10-09 Send a storyboard or script straight to your printer without generating a PDF first. # Print directly If you're heading to a meeting and want a paper copy of your storyboard, you don't need to generate a PDF first. StoryFolder can send the storyboard (or just the script) directly to your printer. ## How do I print a storyboard? 1. Open the editor for the project you want to print. 2. Choose what should be on the page — toggle field visibility and visual effects to match what you want printed. 3. Press Cmd+P (Mac) or Ctrl+P (Windows). 4. StoryFolder opens a print preview formatted for 8.5" × 11" paper. 5. Pick your printer and click Print. If you'd rather have a file, pick **Save as PDF** in the print dialog — or use the **[PDF export](https://storyfolder.com/help/exporting/pdf)** for the same result. ## How do I print just the script? If your project has a transcript: 1. Open the workflow menu and choose Print Script. 2. StoryFolder opens a print preview of just the spoken dialogue. 3. Pick your printer and click Print. ## What does the printed page look like? - **Storyboard print** — two columns of shots per page with thumbnail, timecode, duration, and any visible notes. - **Script print** — single-column dialogue with timecodes. ## Will my visual effects (B&W, contrast) apply? Yes — your editor's current settings are reflected in the print preview. ## Can I control how many shots per page? Page layout is fixed at the moment. If you need finer control, **[export to PDF](https://storyfolder.com/help/exporting/pdf)** and edit the PDF in your favorite tool. ## What about my favorites and filters? - Hidden shots are excluded. - An active search query narrows the print to matching shots. - Favorites are not auto-filtered. Turn on the favorites toggle if you want only favorites. ## Tip: a cleaner printed page For a tidier printed storyboard: 1. Hide note fields you don't need on the page. 2. Turn on **Black & White** to save ink. 3. Use the editor's **zoom** to set thumbnails to medium before printing. ## Next step → **[Analyze](https://storyfolder.com/help/analyze/metrics)** --- # Shot duration metrics URL: https://storyfolder.com/help/analyze/metrics Section: Analyze Last updated: 2026-10-09 Quantitative stats about your storyboard's pacing and shot length. # Shot duration metrics The Analyze view turns your storyboard into data. The first thing you'll see is a panel of **shot duration metrics** — quick numbers that describe the pacing of the video. ## How do I open the Analyze view? Press `A`, or pick **Analyze** from the workflow switcher in the top-left. ## What metrics are shown? | Metric | What it measures | | --- | --- | | **Total Shots** | The number of shots (or merged sections) in the storyboard. | | **Average Duration** | The mean length of a shot. Influenced by outliers. | | **Median Duration** | The middle shot length when sorted. Robust to outliers. | | **Longest Duration** | The longest single shot. | | **Shortest Duration** | The shortest single shot. | All times are shown in seconds. ## What do these numbers tell me? A few useful framings: - **Total Shots vs duration** = average cuts per minute. Useful for comparing pacing across videos. - **Average vs Median** — if average is much higher than median, you have a few very long shots stretching the average up. The median tells you what a typical shot really looks like. - **Longest** — usually surfaces an interview shot, an establishing shot, or end credits. Worth a click. - **Shortest** — flags shots that might be detection errors. If you see a 0.1-second shot, it's often a frame or two of motion blur that got split off. ## Do filters affect the metrics? Yes. The metrics reflect whatever's currently visible: - **Hidden shots are excluded.** - An **active search query** narrows the calculation. - The **♥ Favorites** toggle limits metrics to favorited shots when on. Want a slice of the video's pacing — only the dialogue scenes, only the action sequences? Filter for them, then look at Analyze. ## Will the metrics update as I edit? Yes, in real time. Split a shot, merge two shots, or change sensitivity — Analyze recalculates automatically. ## How do I export the metrics? Today the metrics live inside the app. The closest export is the **[shot list spreadsheet](https://storyfolder.com/help/exporting/spreadsheet)** — it gives you the per-shot durations so you can compute any aggregate you like in Excel or Sheets. ## Next step → **[Charts & distributions](https://storyfolder.com/help/analyze/charts)** --- # Charts & distributions URL: https://storyfolder.com/help/analyze/charts Section: Analyze Last updated: 2026-10-09 Visualize how your note metadata is distributed across the storyboard. # Charts & distributions (Pro) Below the duration metrics, the Analyze view shows a chart for every structured note field — dropdowns, tags, and checkboxes. It's a powerful way to spot patterns you wouldn't notice scanning shot by shot. > Charts in Analyze are available on the **Pro** plan. Custom fields themselves are included on every plan; the charts built from them are Pro. ## What charts are shown? There are two main visualizations: 1. **Shot duration over time** — a scatter plot showing each shot's duration along the timeline of the video. Useful for spotting pacing patterns (e.g. *"the pacing accelerates in the second half"*). 2. **Metadata distribution charts** — one chart per non-text note field. Bars show how often each value appears. A typical workflow might surface insights like: - *"This commercial uses **close-up** shots 60% of the time."* - *"The drone footage all happens in the back half of the video."* - *"The director uses **soft lighting** twice as often as **hard lighting**."* ## Which fields get charts? - **Dropdown** fields — one bar per option. - **Tag** fields — one bar per tag (a single shot can contribute to multiple). - **Checkbox** fields — two bars (true / false). - **Default time-based fields** (duration, start time) — the duration-over-time scatter. **Text** fields are excluded from charts since they're free-form. ## Do filters affect the charts? Yes. Charts reflect the currently visible shots. Use the editor's filters (favorites, hidden, search) to drill into a slice — for example, *"of the close-up shots, what lighting was used?"* ## Can I export the charts? Today, screenshots are the simplest way. Use your operating system's screenshot tool, or the snipping shortcut of your choice. The raw data behind every chart is in your **[shot list spreadsheet](https://storyfolder.com/help/exporting/spreadsheet)** — open it in Excel/Sheets and build any chart you want. ## What if my charts look empty? A couple of common causes: - You haven't filled in any values for that field yet. - The field is **text-type**, which isn't charted. - An active filter is hiding most of your shots. ## Why isn't this view available? If you see an upgrade prompt instead of charts, you're on the Free plan. See **[Compare plans](https://storyfolder.com/help/billing/plans)** to upgrade. ## Tip: design fields with analytics in mind When you're creating custom fields, knowing how Analyze handles each type can shape your choices. If you might want a chart of *Camera Angle*, make it a **Dropdown** with a defined set of options. If you scribble camera notes in a free-form **Text** field instead, you'll lose the ability to chart them. See **[Field types](https://storyfolder.com/help/notes/field-types)** for more. --- # Set up Claude Desktop URL: https://storyfolder.com/help/ai/claude-desktop Section: AI assistant Last updated: 2026-10-09 Connect Claude Desktop to your storyboards in one click from inside StoryFolder — or install the extension by hand. # Set up Claude Desktop There are two ways in, and StoryFolder offers both: - **Let StoryFolder do it.** One click inside the app writes Claude Desktop's configuration for you. Nothing to download. - **Install the extension.** Download one file, double-click it, restart Claude. The one-click route is the shorter one if you already have the connector on this computer. The extension is the shorter one on a fresh machine, because it carries everything with it. ## Before you start - **Claude Desktop 0.10.0 or newer.** Check Claude's menu → *About*. Update first if you're older. - **StoryFolder installed and open.** - Works on macOS, Windows and Linux. ## Connect it from inside StoryFolder 1. Open StoryFolder and go to Preferences → MCP Server, or click Connect an AI assistant in the header. 2. Choose Claude Desktop. 3. StoryFolder shows what it found — Node, the connector, and where Claude Desktop keeps its settings. Anything it couldn't find is named rather than guessed. 4. Decide whether you want Read-only. It's a checkbox, off by default. More below. 5. Click Add automatically. 6. Fully quit Claude Desktop and reopen it. On a Mac, closing the window is not quitting. StoryFolder edits Claude Desktop's settings file in place: it adds StoryFolder and leaves every other setting, and every other assistant connection you have, exactly as it was. If that file is already broken, StoryFolder refuses to write to it and tells you so, rather than replacing something it cannot read. > **Warning:** Claude Desktop reads its settings only when it starts. StoryFolder can be sure the setup is correct; it cannot be sure Claude has picked it up. That's why the panel says *added — not active yet* until you restart, and why it never claims "Connected" for Claude Desktop the way it does for the other two. This route needs Node and the connector folder on this computer, because what it sets up points at them. If StoryFolder can't find either, it says which one is missing and the button stays disabled — see [where the connector comes from](#where-the-connector-comes-from). ## Or install the extension 1. Download the extension with the button above. 2. Double-click the downloaded file. Claude opens and offers to install it. 3. Claude shows a notice that the extension is unverified. That's expected — see below. Continue. 4. Decide whether you want Read-only. It's a checkbox in the extension's settings, off by default. 5. Confirm the install, then quit and reopen Claude. It won't see StoryFolder until you do. The extension carries its own copy of the connector, so this route needs no separate download and no Node of your own. > **Tip:** The extension installs itself into Claude Desktop's own extensions list; the one-click route writes Claude Desktop's settings instead. StoryFolder's panel can only see the second of those, so an extension can be working perfectly and the panel will still say StoryFolder isn't connected. If you installed the extension, believe the extension. Running both at once isn't something we've tested, so if you switch routes, remove the one you're leaving behind first. ## Check it worked With StoryFolder open, ask Claude: > What projects are in my StoryFolder library? You should get your real project names back, with shot counts and durations. Then try [something more interesting](https://storyfolder.com/help/ai/examples). If Claude says it has no StoryFolder tools, or that StoryFolder isn't running, see [troubleshooting](https://storyfolder.com/help/ai/troubleshooting). ## Where the connector comes from The one-click route registers a connector folder that lives on your computer. In a packaged StoryFolder install, that's a folder you download once and keep — the same one [Claude Code](https://storyfolder.com/help/ai/claude-code) and [Codex](https://storyfolder.com/help/ai/codex) use. Unzip it, move it somewhere permanent (`~/StoryFolder-connector`, say), and reopen the panel. StoryFolder checks your home folder, Downloads, Desktop, Documents and Applications. If it still can't see it, use **Locate connector folder…** and point at it yourself. If you'd rather not keep a folder around at all, use the extension instead — it has the connector inside it. ## About the "unverified" notice You'll see a message saying the extension is from an unverified publisher, with a button to install anyway. That's expected, and it's about our paperwork rather than the file. We haven't finished setting up the credential that would let Claude confirm it's from us. It's the same extension either way. Click through and continue. If you'd rather not install something unverified, the one-click route above installs no extension at all. ## Let Claude read, but not edit Turn on **Read-only** and Claude can look at everything and change nothing. Renaming, tagging, adding note fields, importing and exporting all stop being available to it — not hidden, just not offered. - **One-click route:** tick the box in StoryFolder before you click **Add automatically**. To change it later, tick or untick and add again. - **Extension route:** find it under **Settings → Extensions → StoryFolder**. Restart Claude after changing it, either way. There's more on what read-only costs you, and what it doesn't protect against, on the [overview](https://storyfolder.com/help/ai/overview#let-it-read-but-not-edit). ## Using Claude on the web or your phone? Those can't reach it. StoryFolder runs on your computer and answers only to things on that computer, so a browser tab or a phone has no way in. You need Claude Desktop. ## Using Claude Code? That's a separate product with its own setup, and StoryFolder connects it in one click too. → **[Set up Claude Code](https://storyfolder.com/help/ai/claude-code)** ## Next step → **[Things to try](https://storyfolder.com/help/ai/examples)** --- # Set up Claude Code URL: https://storyfolder.com/help/ai/claude-code Section: AI assistant Last updated: 2026-10-09 Connect StoryFolder to Claude Code with one click from inside the app — no command to copy, no paths to work out. # Set up Claude Code Claude Code is Anthropic's command-line assistant — a different product from [Claude Desktop](https://storyfolder.com/help/ai/claude-desktop). If you use both, set up both; they keep separate configurations. StoryFolder connects it for you. You don't need to find Node, find the connector, or type a command. ## What you'll need - **Claude Code installed**, and available as `claude` in a terminal. If it isn't installed yet, StoryFolder says so and links you to Anthropic's install page. - **StoryFolder installed and open.** - **Node 18 or newer.** Claude Code runs the connector with Node and doesn't bring its own copy. StoryFolder finds it for you — including a version-manager Node under your home folder, which a command line launched from the Dock normally can't see. - **The connector folder**, if you're running the installed app. See [where the connector comes from](#where-the-connector-comes-from) below. ## Connect it 1. Open StoryFolder and go to Preferences → MCP Server, or click Connect an AI assistant in the header. 2. Choose Claude Code. 3. StoryFolder shows what it found on this computer — Node, the connector, and where Claude Code keeps its settings. Anything it couldn't find is named, not guessed. 4. Decide whether you want Read-only. It's a checkbox, off by default. More below. 5. Click Install StoryFolder MCP. 6. Restart Claude Code. It won't pick up a new connection mid-session. StoryFolder runs `claude mcp add` for you with the real locations filled in, then checks Claude Code's own settings to confirm it took. "Connected" means it looked. It sets the connection up for your whole account, so it's there in every folder you work in — not just the one Claude Code happened to start in. ## Check it worked With StoryFolder open, start a Claude Code session and ask: > What projects are in my StoryFolder library? You should get your real project names back, with shot counts and durations. Then try [something more interesting](https://storyfolder.com/help/ai/examples). ## Let it read, but not edit Tick **Read-only** before you connect and Claude Code can look at everything and change nothing. Renaming, tagging, adding note fields, importing and exporting stop being offered to it. To change your mind, tick or untick the box and connect again — it replaces the earlier setup. Restart Claude Code afterwards. There's more on what read-only costs you, and what it doesn't protect against, on the [overview](https://storyfolder.com/help/ai/overview#let-it-read-but-not-edit). ## Where the connector comes from In a packaged StoryFolder install, the connector is a folder you download once and keep. 1. Download the file above and unzip it. 2. Move the folder somewhere permanent — ~/StoryFolder-connector, say. Not Downloads, which you'll empty one day. 3. Reopen the MCP Server panel. StoryFolder looks in your home folder, Downloads, Desktop, Documents and Applications for it. If it still can't find it, use **Locate connector folder…** in the panel and pick the folder yourself. StoryFolder only accepts a folder that actually holds the connector — one containing `src/index.js` and our `manifest.json` — so a wrong pick is refused rather than silently registered. > **Tip:** One connector folder serves Claude Code and ChatGPT Codex. You don't need two. Claude Desktop's `.mcpb` extension is a different file. ## If you'd rather run the command yourself The panel never hides it. Click **Or run the command yourself…** and it shows the exact command, already filled in with this computer's paths: ```bash claude mcp add storyfolder --scope user -- /absolute/path/to/node /path/to/StoryFolder-connector/src/index.js ``` With read-only: ```bash claude mcp add storyfolder --scope user \ --env STORYFOLDER_MCP_READ_ONLY=1 \ -- /absolute/path/to/node /path/to/StoryFolder-connector/src/index.js ``` Confirm it registered: ```bash claude mcp list ``` > **Warning:** Typing plain `node` works only if Claude Code can find the same Node your shell does. If yours is managed by nvm, fnm, asdf or volta, it usually can't — use the output of `which node`. This is exactly the guesswork the in-app button exists to remove, which is why the command it writes always spells the path out. The panel also shows the same connection as a `~/.claude.json` entry, if you'd rather edit that file by hand. Add the object under its top-level `mcpServers` key. ## Next step → **[Things to try](https://storyfolder.com/help/ai/examples)** --- # Set up ChatGPT (Codex) URL: https://storyfolder.com/help/ai/codex Section: AI assistant Last updated: 2026-10-09 Connect StoryFolder to ChatGPT through Codex in one click from inside the app — no command to copy, no paths to work out. # Set up ChatGPT You connect StoryFolder to ChatGPT through **Codex**, OpenAI's own assistant tool. You sign in to Codex with the ChatGPT account you already have. StoryFolder connects it for you. You don't need to find Node, find the connector, or type a command. ## Where you'll find StoryFolder Once this is set up, StoryFolder shows up in the two places Codex lives: - the **Codex app or command line** on your computer - the **Codex sidebar** in an editor like VS Code or Cursor It doesn't appear in the ChatGPT desktop app's chat window yet. That's on our list. For now, open Codex and ask it there. StoryFolder sets up three clients in all — [Claude Desktop](https://storyfolder.com/help/ai/claude-desktop), [Claude Code](https://storyfolder.com/help/ai/claude-code) and ChatGPT Codex — and no others. > **Warning:** Claude Desktop is the path we've run end to end. For Codex we've confirmed it reads the setup below and starts StoryFolder, but we haven't signed off on a full working conversation yet. If something misbehaves, [tell us](https://storyfolder.com/help/troubleshooting/contact-support) — that feedback is genuinely useful right now. ## What you'll need - **Codex**, signed in. [Install the CLI or the editor extension](https://learn.chatgpt.com/docs/codex/cli) from OpenAI, then run `codex login` and sign in with your ChatGPT account. - **StoryFolder installed and open.** - **Node 18 or newer.** Codex runs the connector with Node and doesn't bring its own copy. StoryFolder finds it for you — including a version-manager Node under your home folder, which Codex usually can't find on its own. - **The connector folder** — one download, kept somewhere permanent. Next section. ## Get the connector 1. Download the file above and unzip it. 2. Move the folder somewhere you'll keep — ~/StoryFolder-connector, say. Not Downloads, which you'll empty one day. Everything StoryFolder needs is already in the folder. There's nothing to install into it, and no path for you to note down — StoryFolder looks for it in your home folder, Downloads, Desktop, Documents and Applications. > **Tip:** It's the same folder. One download serves both. Claude Desktop's extension is a different file — grab that from the [Claude Desktop page](https://storyfolder.com/help/ai/claude-desktop). ## Connect it 1. Open StoryFolder and go to Preferences → MCP Server, or click Connect an AI assistant in the header. 2. Choose ChatGPT Codex. 3. StoryFolder shows what it found on this computer — Node, the connector, and where Codex keeps its settings. Anything it couldn't find is named, not guessed. 4. Decide whether you want Read-only. It's a checkbox, off by default. More below. 5. Click Install StoryFolder MCP. 6. Restart Codex. It won't pick up a new connection until you do. StoryFolder runs `codex mcp add` for you with the real locations filled in, then checks Codex's own settings to confirm it took. "Connected" means it looked. **If the connector isn't found**, use **Locate connector folder…** in the panel and pick the folder yourself. StoryFolder only accepts a folder that actually holds the connector — one containing `src/index.js` and our `manifest.json` — so a wrong pick is refused rather than silently registered. ## Check it worked With StoryFolder open, start a Codex session and ask: > What projects are in my StoryFolder library? You should get your real project names back. Then try [something more interesting](https://storyfolder.com/help/ai/examples). If nothing comes back, it's almost always that StoryFolder is closed or you didn't restart Codex. ## Let it read, but not edit Tick **Read-only** before you connect and the assistant can look at everything and change nothing. Renaming, tagging, adding note fields, importing and exporting stop being available to it. To change your mind, tick or untick the box and connect again — it replaces the earlier setup. Restart Codex afterwards. There's more on what read-only costs you on the [overview](https://storyfolder.com/help/ai/overview#let-it-read-but-not-edit). ## If you'd rather run the command yourself The panel never hides it. Click **Or run the command yourself…** and it shows the exact command, already filled in with this computer's paths: ```bash codex mcp add storyfolder -- /absolute/path/to/node /Users/you/StoryFolder-connector/src/index.js ``` With read-only: ```bash codex mcp add storyfolder \ --env STORYFOLDER_MCP_READ_ONLY=1 \ -- /absolute/path/to/node /Users/you/StoryFolder-connector/src/index.js ``` Confirm it registered: ```bash codex mcp list ``` `storyfolder` should be in the list. Restart Codex afterwards. ## When Codex cannot find Node If you ran the command by hand and Codex never starts StoryFolder at all, this is nearly always why. The in-app button avoids it entirely — it writes the absolute path — but here's the whole thing. `node --version` working in your terminal doesn't mean Codex can find Node. An app you launch from the Dock or Start menu doesn't read your shell's settings, so it looks in a different set of places. If you manage Node with **nvm**, **fnm**, **asdf** or **volta**, your Node lives in your home folder and won't be one of them. **The fix is to spell out where Node is.** Find it: ```bash # macOS / Linux which node # Windows (PowerShell) where.exe node ``` That prints something like `/Users/you/.nvm/versions/node/v22.22.0/bin/node`. Use that whole thing in place of `node`. > **Tip:** An nvm path has the version number in it, so `.../v22.22.0/bin/node` stops existing the day you move to v22.23. If StoryFolder disappears from Codex after a Node upgrade, reopen **Preferences → MCP Server** and connect again — the panel will show it pointing somewhere that no longer exists, and one click repairs it.
Editing the config file by hand `codex mcp add` writes to `~/.codex/config.toml`. You can edit that file directly instead — the panel shows this block too, filled in for your machine: ```toml [mcp_servers.storyfolder] enabled = true command = "/Users/you/.nvm/versions/node/v22.22.0/bin/node" args = ["/Users/you/StoryFolder-connector/src/index.js"] ``` On Windows, note the doubled backslashes — TOML requires them: ```toml [mcp_servers.storyfolder] enabled = true command = "C:\\Program Files\\nodejs\\node.exe" args = ["C:\\Users\\you\\StoryFolder-connector\\src\\index.js"] ``` Read-only mode goes in its own sub-table: ```toml [mcp_servers.storyfolder.env] STORYFOLDER_MCP_READ_ONLY = "1" ``` `1`, `true` and `yes` all turn it on. Anything else, including an empty value, leaves editing available. Restart Codex after any change. The Codex CLI and the editor extension read the same file, so you set this up once and both see it.
## Next step → **[Things to try](https://storyfolder.com/help/ai/examples)** --- # Things to try URL: https://storyfolder.com/help/ai/examples Section: AI assistant Last updated: 2026-10-09 Real requests to make of an assistant connected to StoryFolder, and what comes back. # Things to try You don't need special phrasing. Ask for what you want the way you'd ask an assistant editor, and name projects the way you name them. Here's what people actually ask for, roughly in the order they discover it. > **Info:** The reading examples below were run against a real library — seven projects, 250 shots, a mix of YouTube imports and local files. Results are trimmed for length, not invented. ## Get your bearings > **What's in my StoryFolder library?** You get your projects listed by name, with how long each one is, how many shots it has, and what folder it's in. It's the fastest way to confirm the connection works. It also knows when a project has lost its footage. If you moved or deleted the original video, the storyboard is still there but the media isn't — and the assistant can see that, so it tells you rather than failing partway through an export later. Projects in the Trash are left out unless you ask for them. ## Have it look at your shots > **Show me the first four shots of the makerspace video.** This is the one that changes how the whole thing feels. The assistant doesn't read a description of your shots — it looks at the frames. It pulls the middle frame of each shot you named and can then tell you what's in them, compare them, spot a continuity problem, or write you a description. > **Compare shot 3 and shot 11 — do they cut together?** > **Which of these shots would work as a thumbnail?** Two things to know: - **Twelve frames at a time.** For a forty-shot video the assistant will work through it in passes. - **It asks for what you said.** You say "shot 3", it fetches shot 3. You never have to think about the [numbering](#a-note-on-shot-numbers). ## Tag a batch of shots at once > **Go through the hoodie ad and tag each shot with its shot size — wide, > medium or closeup.** The assistant looks at the frames, decides, and writes it in. If you don't have a Shot Size field yet, it can create one first. This is the workflow that pays for itself. Twenty shots of tagging becomes one request, and because it goes in as a single edit, it's a **single undo** if you don't like the result. More things in the same shape: > **Mark shots 4 through 9 as B-roll.** > **Favourite every shot with the product in frame.** > **Add a Location field and fill it in for the shots that are outdoors.** Re-writing a value that's already there does nothing at all — no edit, no history entry, no flicker in the app. So you can ask twice without making a mess. ## Find things across everything you've made > **Which shots anywhere in my library are marked as favourites?** One search covers every project, not one per project. You get the count, which projects the matches are in, and the shots themselves with their timecodes. The search reads **your notes**, not the picture. So it works on whatever you've recorded: > **Find every shot tagged Closeup.** > **Which shots have nothing in the Emotion field?** That last one is the one people end up using most — it's how you find the gaps in a pass you didn't finish. And the answers are usefully different: "nothing matched" and "you haven't filled that field in on anything" don't look the same in the reply. If you want to search on something you've never recorded, tag it first — see [the section above](#tag-a-batch-of-shots-at-once) — and it's searchable from then on. ## Start an export and carry on working > **Export a PDF storyboard of the hoodie ad.** Exports don't hold up the conversation. The assistant starts the job, hands you a reference, and you can keep talking or go back to editing. Ask later: > **Did that export finish?** It can produce any of the things StoryFolder exports: | Ask for | What you get | | --- | --- | | A storyboard | A PDF | | Images | A PNG for every shot | | Clips | A separate video file for every shot | | A shot list | An XLSX spreadsheet with timecodes | | A transcript | SRT and VTT by default; TXT, CSV and Fountain on request | | An online storyboard | A shareable link | **It checks the export actually produced something.** A job can finish having written no files at all, and the assistant can tell the difference — so "finished" from it means finished, not just "stopped". ### Where exports land Say where you want them and they go there. Say nothing and they go to: ``` ~/Documents/StoryFolder Exports/ ``` The assistant can't see your file system, so it doesn't guess. It used to invent plausible-looking folders that didn't exist, and the export would fail halfway through. Now the folder is checked before the job starts, and the assistant tells you the exact path it used. ## Import a video > **Import ~/Movies/interview-take-3.mov into my Client Work folder.** It checks the file is readable, then starts the import in the background. Ask for progress and it'll check. This is the one case where you do need to give it a real file path — it can't browse your drive. ## Keep an eye on what it changed > **What have you changed in this project?** Everything the assistant writes goes into StoryFolder's **Version history**, tagged as made by an assistant rather than by you. So you can ask it to account for itself, and then undo exactly those entries in the app. Your open StoryFolder window updates live as it works. You don't need to reload anything. ## When something's off ### StoryFolder isn't open You get a sentence, not an error: > StoryFolder is not running. These tools work by talking to the StoryFolder > desktop app on this computer, so the app has to be open. Open StoryFolder, > wait for your library to appear, and try again. Open the app and ask again. You don't need to restart the assistant. ### A note on shot numbers Every shot has two numbers behind the scenes, and they're off by one: the number you see (shot 1, shot 2…) and the number the tools count from (0, 1…). You should never have to care. Say "shot 5" and you get shot 5. But if an assistant ever quotes a shot number that's one off from what you're looking at, that's what happened — tell it to use the numbers StoryFolder shows, and it will.
The exact rule `shot_number` is 1-based and is what StoryFolder displays and what exported files are named — `Images/Shot-1.png`. `index` is 0-based and is what the tools address shots by. Shot 1 is index 0. The tools accept both, so no conversion is needed. When something does go wrong, the error names both scales, for example: > This project has 15 shot(s), so shot index 99 does not exist. Valid indices > are 0-14, which are shot numbers 1-15.
## Next step → **[What you can ask for](https://storyfolder.com/help/ai/reference)** — the full list of what it's able to do. --- # What you can ask for URL: https://storyfolder.com/help/ai/reference Section: AI assistant Last updated: 2026-10-09 Everything an AI assistant connected to StoryFolder is able to do, and which of it read-only mode turns off. # What you can ask for This is the complete list of what an assistant connected to StoryFolder can do. You never have to name any of it — you ask for what you want and it picks. The list is here for when you want to know exactly where the edges are. 9 of the 14 abilities only look at your library. 5 of them change it, and those 5 are the ones [read-only mode](https://storyfolder.com/help/ai/overview#let-it-read-but-not-edit) switches off. If you would rather see this in action, [things to try](https://storyfolder.com/help/ai/examples) has real requests and what came back. ## What it can look at ### See your whole library Reads only The projects you have, with how long each one is, how many shots it holds, and where it is filed. > "What is in my StoryFolder library?"
The detail — list_projects List the video projects in the StoryFolder library. Returns a summary per project (id, name, duration, shot count, folder) — use get_project for shot boundaries and metadata. StoryFolder must be running. | Argument | Type | | What it does | | --- | --- | --- | --- | | `query` | string | optional | Case-insensitive substring match on the project name. | | `folder_id` | string | optional | Only projects filed in this folder. | | `limit` | integer (1–200) | optional | Default 50. | | `include_archived` | boolean | optional | Include projects in the Trash. Default false. |
### Open one project Reads only Every shot in a project, with its timecode and whatever notes you have written on it. > "Walk me through the makerspace video."
The detail — get_project One project in detail: its shot boundaries with timecodes, and the metadata attached to each shot. Use the shot list to pick frames for get_frames or set_frame_metadata. Each shot carries two identifiers: "index" is 0-based and is what you pass back to these tools, while "shot_number" is the number the user sees in StoryFolder and in exported filenames. Shot 1 is index 0 — always tell the user the shot_number, never the index. | Argument | Type | | What it does | | --- | --- | --- | --- | | `project_id` | string | **required** | From list_projects. |
### Look at the shots Reads only The actual pictures, up to twelve at a time, so the assistant can see what is in them rather than guess. > "Show me shots 1 to 4 of the hoodie ad."
The detail — get_frames Return frames from a project as images so you can see what is in the video. Give either shots (the centre frame of each shot) or explicit times in seconds. At most 12 per call. Shots can be named either way: "shots" takes 0-based indices, "shot_numbers" takes the numbers the user sees. Shot 1 is index 0. | Argument | Type | | What it does | | --- | --- | --- | --- | | `project_id` | string | **required** | — | | `shots` | array of integer (items min 0) | optional | Shot indices (0-based, the "index" from get_project). The centre frame of each is returned. | | `shot_numbers` | array of integer (items min 1) | optional | The same shots named the way the user sees them (1-based, the "shot_number" from get_project). Use this to avoid converting. Give either shots or shot_numbers, not both. | | `times` | array of number (items min 0) | optional | Explicit times in seconds. Use instead of shots for a specific moment. | | `width` | integer (64–1920) | optional | Pixel width. Default 512 — larger costs proportionally more. |
### Search your notes Reads only Find shots by what you have recorded on them — in one project, or across everything in one go. > "Which shots have nothing in the Emotion field?"
The detail — search_frames Find the shots that match — in one project, or across the whole library. Omit project_id to search every project that is not in the Trash; that is ONE call, not one per project. "query" searches BOTH the metadata a human typed AND the transcript of what is spoken, so "which shots mention the hoodie sale?" is one call and you do not have to know which it was. Transcript matching is multi-word and fuzzy — a phrase runs across pauses and cuts, and a plausible mishearing still matches — so every match says whether it came from "metadata" or "transcript", and a transcript match carries the words actually spoken and whether they were an approximate match. Quote from "transcript" rather than paraphrasing. Use "search" to restrict to one source. Match one field with "field" (plus optional "value" and "match"), or several conditions at once with "criteria" — all of which must hold. A field title that two categories both use matches both. Every match names its project and carries "index" (0-based, what get_frames takes) and "shot_number" (what the user sees — shot 1 is index 0). | Argument | Type | | What it does | | --- | --- | --- | --- | | `project_id` | string | optional | One project, from list_projects. Omit to search every project that is not in the Trash. | | `query` | string | optional | What to look for. Matched case-insensitively against every metadata value (as a substring) and against the transcript (multi-word and fuzzy). Several words are matched as a phrase. | | `search` | `all` \| `metadata` \| `transcript` | optional | Which source "query" searches. Default "all" — both metadata and transcript. Use "metadata" or "transcript" to restrict it. Ignored when there is no query. | | `field` | string | optional | Field title or id, or one of favorite / hidden / posterTime. | | `value` | any | optional | The value to compare against. How it is compared is up to "match". | | `match` | `contains` \| `equals` \| `one_of` \| `is_set` \| `not_set` | optional | equals (default when value is given), contains (substring), one_of (value is a list), is_set (default when value is omitted), not_set (the field is not filled in on that shot). | | `criteria` | array of objects | optional | Several field conditions, ANDed — a shot must satisfy all of them to match. | | `limit` | integer (1–200) | optional | Most matches to return. Default 50; the response says whether it truncated. |
### List your folders Reads only The folders you can file projects in. > "What folders do I have?"
The detail — list_folders The folders projects can be filed in. Use a folder id with list_projects or update_project. *Takes no arguments.*
### See what you can tag with Reads only Your note categories and the fields inside them, including the options a dropdown allows. > "What can I tag shots with?"
The detail — list_metadata_fields The metadata schema: categories and the fields inside them, with their types and options. Field titles from here are what set_frame_metadata and search_frames accept. *Takes no arguments.*
### Check on an export Reads only Whether a job finished — and whether it actually wrote any files, which is not the same thing. > "Did that export finish?"
The detail — get_export_job The state of one export job. Pass wait_seconds to wait for it to finish instead of polling — the wait ends as soon as StoryFolder reports the job changed, or when the time runs out. A finished job also lists the files it wrote, relative to its location; check "files_written" before telling the user an export succeeded, because a job can finish having produced nothing. "progress" is the percentage of the CURRENT task and only means anything while one is running. | Argument | Type | | What it does | | --- | --- | --- | --- | | `job_id` | string | **required** | — | | `wait_seconds` | integer (0–120) | optional | Wait up to this long for the job to finish. Default 0 (answer immediately). |
### See recent exports Reads only What you have exported lately, newest first. > "What have I exported this week?"
The detail — list_export_jobs Export jobs, newest first. Optionally only those for one project. | Argument | Type | | What it does | | --- | --- | --- | --- | | `project_id` | string | optional | — | | `limit` | integer (1–100) | optional | Default 20. |
### Review what changed Reads only A project's restore points, newest first, flagging which ones an assistant made. > "What have you changed in this project?"
The detail — list_versions The restore points StoryFolder captured for a project, newest first, including which ones an assistant made. Use it to check what your own edits changed — the user restores a version from the Version history window in the app. | Argument | Type | | What it does | | --- | --- | --- | --- | | `project_id` | string | **required** | — | | `limit` | integer (1–100) | optional | Default 20. |
## What it can change Every one of these goes through the same path the app itself uses, so the change lands in **Version history**, tagged as made by an assistant, and you can undo it from there. ### Rename or re-file a project Editing — off in read-only mode Change a project's name or description, or move it into a different folder. > "Rename this to Pacific Hoodie, cut 3."
The detail — update_project Change a project's title, description, or the folder it is filed in. Every change is recorded in StoryFolder's Version history, tagged as made by an assistant, so the user can undo it. | Argument | Type | | What it does | | --- | --- | --- | --- | | `project_id` | string | **required** | — | | `title` | string | optional | The project name shown in the library. | | `description` | string | optional | — | | `folder_id` | string or null | optional | Folder to file it in, or null for none. |
### Add a note field Editing — off in read-only mode Create a new field to tag shots with, and the category to hold it if you do not have one yet. > "Add a Location field with the options Studio, Street and Home."
The detail — create_metadata_field Add a metadata field to the schema so shots can be annotated with it. Creates the category too if it does not exist yet. | Argument | Type | | What it does | | --- | --- | --- | --- | | `category` | string | **required** | Category title or id. Created if it does not exist. | | `name` | string | **required** | The field title, e.g. "Lens" or "Location". | | `type` | `text` \| `checkbox` \| `dropdown` \| `tag` \| `file` \| `date` \| `slider` | optional | Default "text". | | `options` | array of string | optional | Choices, for dropdown and tag fields. | | `description` | string | optional | — |
### Tag shots Editing — off in read-only mode Write a value onto one shot or many. A batch counts as one edit, so it is one undo. > "Mark shots 4 through 9 as B-roll."
The detail — set_frame_metadata Write a metadata value onto one or more shots (or explicit frame numbers). Recorded in StoryFolder's Version history and attributed to an assistant, so the user can undo it. | Argument | Type | | What it does | | --- | --- | --- | --- | | `project_id` | string | **required** | — | | `field` | string | **required** | Field title or id from list_metadata_fields, or favorite / hidden / posterTime. | | `value` | any | **required** | The value to write. Arrays for tag fields, booleans for checkboxes. | | `shots` | array of integer (items min 0) | optional | Shot indices (0-based, the "index" from get_project). The value lands on each shot's start frame, which is where StoryFolder itself writes it. | | `shot_numbers` | array of integer (items min 1) | optional | The same shots as the user sees them (1-based "shot_number" from get_project). Shot 1 is index 0. Give either shots or shot_numbers, not both. | | `frames` | array of integer (items min 0) | optional | Explicit frame numbers, instead of shot indices. |
### Import a video Editing — off in read-only mode Bring a video file from this computer into StoryFolder. It imports in the background. > "Import ~/Movies/interview-take-3.mov into my Client Work folder."
The detail — import_video Import a video file from this computer into StoryFolder. Checks the file is readable first, then starts the import. Importing runs in the background — poll get_project until status is complete. | Argument | Type | | What it does | | --- | --- | --- | --- | | `path` | string | **required** | Absolute path to a video file on this computer. | | `folder_id` | string | optional | Folder to file the new project in. | | `title` | string | optional | Project name. Defaults to the file name. |
### Start an export Editing — off in read-only mode Queue a PDF storyboard, images, clips, a shot list, a transcript, or a shareable link. It never holds up the conversation. > "Export a PDF storyboard of the hoodie ad."
The detail — create_export Queue an export of a project. Returns a job id immediately — exports take minutes, so this never blocks. Poll get_export_job with that id, or give it wait_seconds to wait for progress. Leave "location" out unless the user named a folder: StoryFolder then exports to its own default folder under the user's Documents and tells you the absolute path it used. Do not invent a path — a folder that does not exist on this computer is refused here. | Argument | Type | | What it does | | --- | --- | --- | --- | | `project_id` | string | **required** | — | | `outputs` | array of `storyboard` \| `images` \| `clips` \| `timecode` \| `transcript` \| `onlineStoryboard` | **required** | What to produce: storyboard (PDF), images (PNG per shot), clips (video per shot), timecode (XLSX shot list), transcript (SRT/VTT/TXT), onlineStoryboard (shareable link). | | `location` | string | optional | Absolute path to an output folder on THIS computer. Optional — omit it and StoryFolder uses its default export folder, and reports the path it used. Only pass a path the user gave you or one you have confirmed exists. | | `transcript_formats` | array of `srt` \| `vtt` \| `txt` \| `csv` \| `fountain` | optional | Which transcript formats to write. Default srt and vtt. | | `clip_speed` | `fast` \| `slow` | optional | Clip transcode preset. Default fast. |
## Two things worth knowing **Shot numbers.** You say "shot 5" and you get shot 5 — the numbering is handled for you. If an assistant ever quotes a number that's one off from what you see, [here's why](https://storyfolder.com/help/ai/examples#a-note-on-shot-numbers). **This page tracks the connector.** It is generated from the connector's own definitions, so it describes exactly what version 0.3.0 offers your assistant — not a hand-written summary that drifted. ## Next step → **[Troubleshooting](https://storyfolder.com/help/ai/troubleshooting)** --- # Troubleshooting URL: https://storyfolder.com/help/ai/troubleshooting Section: AI assistant Last updated: 2026-10-09 What to do when the assistant cannot find StoryFolder, will not edit anything, or gets your shots wrong. # Troubleshooting Find the thing that's happening to you. Most of these are a one-line fix. ## Start in the app **Preferences → MCP Server** reads your assistant's own settings and tells you what it finds. It's faster than guessing, and most of the sections below have a one-click fix there. The states it can show are covered in [what the panel shows you](https://storyfolder.com/help/ai/overview#what-the-panel-shows-you). ## The assistant says it can't find StoryFolder Work down this list — it's in order of how often each one is the answer. 1. Is StoryFolder open? The assistant reads the running app. If StoryFolder is closed, there's nothing to read. 2. Did you restart the assistant? Neither Claude nor Codex notices a new connection until it restarts. Quit it properly — on a Mac, closing the window isn't quitting — and reopen. 3. Are you in the right app? For ChatGPT you ask in Codex, not the ChatGPT chat window. More below. 4. Is it actually listed? Open Preferences → MCP Server in StoryFolder and pick your assistant — it checks that assistant's own settings and tells you. Or look yourself: codex mcp list, claude mcp list, or Claude Desktop's Settings → Extensions. 5. Did you set it up by hand? If so, the path to Node is the usual culprit, and it has its own section. That last one catches most hand-written setups that never worked at all — see [when Codex cannot find Node](https://storyfolder.com/help/ai/codex#when-codex-cannot-find-node). Connecting from inside StoryFolder avoids it: the app writes the absolute path. ## It says StoryFolder isn't running, but it is The full message: > StoryFolder is not running. These tools work by talking to the StoryFolder > desktop app on this computer, so the app has to be open. Open StoryFolder, > wait for your library to appear, and try again. **If StoryFolder is still starting up**, give it a few seconds and ask again. You don't need to restart the assistant — it re-checks every time. **If StoryFolder is definitely up and running**, quit it completely and reopen it. The assistant finds the app through a small file StoryFolder writes when it launches, and a hard crash can leave that file pointing somewhere stale. Relaunching rewrites it. ## ChatGPT has no StoryFolder tools Ask in **Codex** rather than the ChatGPT chat window. Codex is where the connection lives — the Codex app, the command line, or the Codex sidebar in your editor. It signs in with the same ChatGPT account, so nothing extra is needed. StoryFolder doesn't appear in the ChatGPT desktop app's chat window yet. That's on our list. If you'd rather have this in an ordinary chat window today, [Claude](https://storyfolder.com/help/ai/claude-desktop) is the shorter route. ## The panel says my assistant isn't detected StoryFolder looked for the assistant on this computer and didn't find it. - **Claude Code / Codex** — it looks for the `claude` or `codex` command and actually runs it to confirm it works. A broken shim left behind by a version manager counts as not found, which is correct: the assistant can't be driven by it either. - **Claude Desktop** — it looks for the app and for its settings folder. Install the assistant, then reopen the panel. It re-checks every time you open it. If it's definitely installed and still not detected, connect by hand — the panel's **Or run the command yourself…** block has the exact command. ## The panel says the connector wasn't found The connector is the small folder that talks to StoryFolder on the assistant's behalf. In a packaged install you download it once and keep it — grab it from the [Codex page](https://storyfolder.com/help/ai/codex#get-the-connector) or the [Claude Code page](https://storyfolder.com/help/ai/claude-code#where-the-connector-comes-from). Unzip it, put it somewhere permanent, then reopen the panel. StoryFolder checks your home folder, Downloads, Desktop, Documents and Applications for a folder called `StoryFolder-connector`. Anywhere else, use **Locate connector folder…** and pick it yourself. **"That folder does not hold the connector."** You picked a folder that isn't it. The right one contains `src/index.js` and a `manifest.json`. If you picked the zip's outer folder, look one level in. Claude Desktop's extension route needs none of this — the extension carries the connector inside it. ## The panel says Node wasn't found Claude Code and Codex run the connector with Node and don't bring their own. [Install the LTS build from nodejs.org](https://nodejs.org/), then reopen the panel. If it found Node but warns about the version, it's older than 18. Upgrade it — the connector won't run on it. ## The panel says it points somewhere else on this computer StoryFolder is already set up there, but it points at a location that has moved or no longer exists. This is what a Node upgrade or a moved connector folder looks like. Press the button again. It sets it up afresh with the current locations. Then restart the assistant. ## The panel says it couldn't connect It shows the assistant's own error output underneath, which is usually the whole answer. **Try again** re-runs it. If it keeps failing, use the manual route in the same panel — the command shown there is the exact one StoryFolder was trying to run, with the real paths already filled in, so you can run it in a terminal and see the failure in full. For Claude Desktop, a failure usually means its settings file couldn't be written. If StoryFolder says the file isn't valid JSON, it has deliberately refused to touch it rather than overwrite a file it can't parse — fix the file by hand, or install the extension instead. ## Claude Desktop says "added — not active yet" That's accurate, not a failure. Claude Desktop reads its configuration only when it starts, so a correct entry on disk still isn't loaded. **Fully quit Claude Desktop and reopen it.** On a Mac, closing the window isn't quitting — use Claude → Quit, or ⌘Q. ## The panel says "no storyfolder entry yet" but Claude works fine You installed the `.mcpb` extension. That registers inside Claude Desktop's own extension store, which the panel can't see — it only reads `claude_desktop_config.json`. Believe the extension. If Claude answers questions about your library, it's connected. Don't add it a second way to make the panel happy; running both routes at once isn't something we've tested. ## It can read my projects but won't change anything Read-only mode is on. That's the switch that lets the assistant look but not touch, and it's doing its job. If it tries anyway, it gets told plainly that the tool isn't available because read-only mode is on — so you'll usually see the assistant explain that rather than fail silently. **To turn editing back on:** - **Connected from inside StoryFolder** — open **Preferences → MCP Server**, pick the assistant, untick **Read-only**, and connect again. It rewrites the earlier setup. Restart the assistant afterwards. - **Claude Desktop extension** — untick **Read-only** under Settings → Extensions → StoryFolder, then restart Claude. - **Set up by hand** — remove `STORYFOLDER_MCP_READ_ONLY` from what you wrote, or set it to `0`, then restart the assistant. The opposite problem — it's editing and you wanted it not to — is the same switch the other way. See [let it read, but not edit](https://storyfolder.com/help/ai/overview#let-it-read-but-not-edit). ## Claude says the extension is unverified That's expected, and it's about our paperwork rather than the file. Click through and continue. [The longer answer](https://storyfolder.com/help/ai/claude-desktop#about-the-unverified-notice). ## It's quoting the wrong shot numbers It's off by one — behind the scenes, shots are counted from zero as well as from one, and it's mixed them up. **Tell it to use the shot numbers StoryFolder shows you.** It can, and it will. Background in [a note on shot numbers](https://storyfolder.com/help/ai/examples#a-note-on-shot-numbers). ## It says a project doesn't exist Ask for the project by name rather than by number, or ask it to list your projects first and pick from that. Asking for a project that isn't in your library currently comes back as a raw error message rather than a plain sentence. It's harmless. ## It worked, then stopped after I updated something Upgrading Node breaks a setup that names the old one — version managers put the version number in the path. Moving or deleting the connector folder does the same. **Open Preferences → MCP Server, pick your assistant, and connect again.** The panel will already be showing it pointing somewhere else, and one click repairs it with the current locations. Restart the assistant afterwards. Claude Desktop extension users shouldn't hit either of these — the extension carries everything it needs.
Where the diagnostic output is The connector writes diagnostics to standard error, which both clients capture in their log view. On a healthy start the first line is: ``` storyfolder-mcp: ready on stdio ``` In Claude Desktop, look for the StoryFolder entry under **Settings → Extensions**. `codex mcp list` and `claude mcp list` show what's configured, and each client's own log output is where a failed launch shows up. If you're sending us a bug report, that output plus your [StoryFolder logs](https://storyfolder.com/help/troubleshooting/logs) is what we need.
## Still stuck [Contact support](https://storyfolder.com/help/troubleshooting/contact-support). Tell us which assistant you're using, which operating system, what **Preferences → MCP Server** says, and what you asked it. A real person answers within one business day. --- # Sign in & sign out URL: https://storyfolder.com/help/account/sign-in Section: Account Last updated: 2026-10-09 How to sign in to StoryFolder on the web and the desktop app, and how to sign out. # Sign in & sign out You sign in once on the web. The desktop app picks up that session through the **Connect your account** flow. ## How do I sign in on the web? 1. Go to storyfolder.com/signin. 2. Enter your email and password. 3. Click Sign in. If you'd rather not use a password, try a **[sign-in link](https://storyfolder.com/help/account/sign-in-link)**. ## How do I sign in on the desktop app? The desktop app uses your browser to authenticate so your password is never typed into a native window. 1. Open StoryFolder. You'll see the Sign In screen. 2. Click Connect your account. 3. The browser opens to storyfolder.com/auth-app. 4. Sign in with email/password or a sign-in link. 5. The browser hands control back to the desktop app, which activates automatically. Full walkthrough: **[Connect your account](https://storyfolder.com/help/getting-started/connect-account)**. ## How do I sign out of the web? Click your avatar in the top-right of the marketing site and pick **Sign Out**. You'll be returned to the homepage. ## How do I sign out of the desktop app? 1. Open Preferences (Cmd+P / Ctrl+P). 2. Switch to the Account pane. 3. Click Deactivate Machine. The app returns to its Sign In screen. This frees up your machine slot. You can sign back in at any time on the same computer or a different one. ## How long does a session stay signed in? - **Web sessions** persist until you sign out or clear cookies. - **Desktop activations** persist indefinitely until you deactivate the machine or the activation expires (which happens 7 days after subscription end, on canceled accounts). ## What if I forget my password? See **[Reset your password](https://storyfolder.com/help/account/reset-password)**, or use a **[sign-in link](https://storyfolder.com/help/account/sign-in-link)** to log in without one. ## What if my browser keeps signing me out? Check that your browser allows cookies for `storyfolder.com`. Private/incognito tabs commonly drop sessions when closed. Switch to a regular window if you'd like persistent login. ## Can I sign in on multiple devices? Yes. The web session is independent of the desktop activation, so you can have both up simultaneously. Desktop activations are limited by your plan (1 or 3 machines) — see **[Activated machines](https://storyfolder.com/help/account/machines)**. --- # Sign-in link (passwordless) URL: https://storyfolder.com/help/account/sign-in-link Section: Account Last updated: 2026-10-09 Sign in to StoryFolder by clicking a link emailed to you — no password required. # Sign-in link (passwordless) If you don't want to remember a password, StoryFolder can email you a one-time link that signs you in directly. It's the easiest way to log in on a new device. ## How do I request a sign-in link? 1. Go to storyfolder.com/signin. 2. Click Email me a sign-in link. 3. Enter the email address on your StoryFolder account. 4. Click Send. 5. Check your inbox for an email from StoryFolder. 6. Click the link inside. It will sign you in instantly. ## How long is the link valid? One hour. After that, you'll need to request a new one. ## Can I use a sign-in link to activate the desktop app? Yes. Click **Connect your account** in the desktop app, request a sign-in link in the browser, click the link in your email, and the desktop app will activate automatically. ## I didn't get the email — what now? A few common reasons: - **Wrong email.** Make sure you typed the address that's on your StoryFolder account. - **Spam folder.** Search for *storyfolder* in your spam or promotions folder. - **Corporate email filter.** Some workplace email servers delay or block automated messages. Try again from a personal address. - **Slow delivery.** Most emails arrive in under 30 seconds. Occasionally they take a couple of minutes. If you still don't see it after a few minutes, [contact support](https://storyfolder.com/help/troubleshooting/contact-support). ## Can I use the same link twice? No — sign-in links are one-time. Once you click the link, it's marked used. Request a new one any time. ## Is this secure? Yes. Sign-in links are: - Sent only to the email address on your account. - Single-use — they're invalidated the moment they're consumed. - Time-limited — they expire after one hour. - Bound to your account — anyone clicking the link signs in *as you*, so keep your inbox secure. For added safety, treat sign-in links like temporary passwords. Don't forward them. ## Can I disable sign-in links? There's no toggle to disable them today. As long as someone has your email's inbox access, they can request a sign-in link. Use a strong inbox password and two-factor authentication on your email account. ## Next step → **[Reset your password](https://storyfolder.com/help/account/reset-password)** --- # Reset your password URL: https://storyfolder.com/help/account/reset-password Section: Account Last updated: 2026-10-09 How to reset a forgotten password. # Reset your password Forgot your password? Resetting it takes about a minute. ## How do I reset my password? 1. Go to storyfolder.com/signin. 2. Click Forgot password?. 3. Enter your email address and click Send reset link. 4. Check your inbox for an email from StoryFolder. 5. Click the reset link in the email. It opens a page where you can set a new password. 6. Type your new password twice and click Reset. 7. You're signed in with the new password immediately. ## How long is the reset link valid? Four hours. After that, request a new one. ## I didn't get the email — what now? - Check your spam or promotions folder. - Make sure you used the email on your StoryFolder account. - If you have multiple accounts, you may have requested a reset for the wrong one. - Allow a couple of minutes — corporate email filters can delay automated mail. If you've waited and still don't see it, [contact support](https://storyfolder.com/help/troubleshooting/contact-support). ## What makes a strong password? We don't enforce specific complexity rules, but please use a strong password: - At least 12 characters. - A mix of letters, numbers, and symbols. - Unique to StoryFolder — don't reuse it from another site. - Stored in a password manager. If you'd rather skip passwords entirely, use a **[sign-in link](https://storyfolder.com/help/account/sign-in-link)** to log in. ## Can I reset my password from inside the desktop app? The reset flow happens in your web browser. The desktop app links you to the right page automatically — just click **Forgot password?** on the sign-in screen. ## I reset my password — will my desktop activation still work? Yes. Resetting your password doesn't sign you out of any active machines. If you want to also kick a particular machine, do it from **[Activated machines](https://storyfolder.com/help/account/machines)**. ## Next step → **[Your account page](https://storyfolder.com/help/account/account-page)** --- # Your account page URL: https://storyfolder.com/help/account/account-page Section: Account Last updated: 2026-10-09 A tour of what you can do from your account page on the web. # Your account page Your account page is the central hub for managing your StoryFolder identity, subscription, and machines. You'll find it at [storyfolder.com/account/subscription](https://storyfolder.com/account/subscription). ## What can I do from the account page? The account page has a sidebar with sections for: - **Profile** — your name, email, and account info. - **Subscription** — your plan and billing controls. - **Invoices** — past payments and receipts. - **Machines** — activated devices. - **Download** — direct links to the desktop installers. ## How do I update my name? 1. Go to storyfolder.com/account/subscription. 2. Click Profile in the sidebar (or it may be selected by default). 3. Edit the name field. 4. Click Save. Your name appears on your published [share links](https://storyfolder.com/help/sharing/publish), so this is what your viewers will see. ## How do I change my email address? Email changes are sensitive — they involve confirming the new address. For now, please [contact support](https://storyfolder.com/help/troubleshooting/contact-support) and we'll make the change for you. ## Where do I find my activation key / API key? On the **Profile** section of your account page. You'll usually only need it if support asks for it during troubleshooting — the desktop app's **Connect your account** flow uses it behind the scenes. ## Can I see how many machines I'm using? Yes. Click **Machines** in the sidebar. See **[Activated machines](https://storyfolder.com/help/account/machines)** for details. ## Where do I manage my subscription? Click **Subscription** in the sidebar. See **[Plans & Billing](https://storyfolder.com/help/billing/plans)** for the full set of subscription docs. ## Can I delete my account? Yes — see **[Delete your account](https://storyfolder.com/help/security/delete-account)**. ## Next step → **[Activated machines](https://storyfolder.com/help/account/machines)** --- # Activated machines URL: https://storyfolder.com/help/account/machines Section: Account Last updated: 2026-10-09 See which computers are signed in, and deactivate the ones you don't need. # Activated machines When you connect the desktop app on a computer, that machine takes one of your activation slots. You can review your active machines and deactivate any of them at any time. ## How many machines can I activate? Depends on your plan: | Plan | Active machines | | --- | --- | | Free | 1 | | Pro | 1 | Shared, multi-seat workspaces are coming with the **Teams** plan. If you need more machines today, [contact support](https://storyfolder.com/help/troubleshooting/contact-support). ## How do I see my activated machines? Go to [storyfolder.com/account/machines](https://storyfolder.com/account/machines) and click **Machines** in the sidebar. You'll see a list with: - The machine name (or generic *Mac* / *Windows PC* label). - The activation date. - A **Deactivate** button. ## How do I deactivate a machine from the web? 1. Go to Machines on your account page. 2. Find the machine you want to remove. 3. Click Deactivate. 4. Confirm. The slot is freed. If StoryFolder is open on that machine, it'll return to the Sign In screen the next time it checks in. ## How do I deactivate from inside the desktop app? 1. Open StoryFolder. 2. Open Preferences (Cmd+P on Mac, Ctrl+P on Windows). 3. Switch to the Account pane. 4. Click Deactivate Machine. The app immediately returns to the Sign In screen. ## What happens to my data when I deactivate? Your local data is safe — your shot lists and notes stay in your StoryFolder app data folder. Sign back in on the same computer and everything comes right back. ## I lost the computer I activated on — how do I free that slot? Go to **Machines** on your account page and deactivate the missing computer from there. You don't need physical access to the machine. ## How do I move my StoryFolder to a new computer? 1. Install StoryFolder on the new computer. See Install the app. 2. If you're at your machine limit, deactivate the old computer's slot — either from inside the desktop app on the old machine, or from Machines on your account page. 3. On the new computer, click Connect your account and sign in. > **Tip:** Your shot lists and notes were saved to your account and the local cache. On the new computer, your **published storyboards** appear immediately. Local-only projects will need to be re-imported from the source video. ## My desktop app says “maximum activations reached.” What now? That means every slot is occupied. Free a slot from your account page (or from another computer's Preferences), then click **Connect your account** again on the new machine. ## Need more machines than your plan allows? Multi-seat workspaces are coming with the **Teams** plan — [get notified](mailto:jeff@jeffjassky.com?subject=StoryFolder%20Teams%20—%20notify%20me). Or [contact support](https://storyfolder.com/help/troubleshooting/contact-support) if you have a specialized need today (computer labs, post-production houses, etc.). --- # Compare plans URL: https://storyfolder.com/help/billing/plans Section: Plans & billing Last updated: 2026-10-09 Side-by-side comparison of the Free and Pro plans, plus Teams (coming soon). # Compare plans StoryFolder keeps pricing simple: a **Free** plan to get started and a **Pro** plan for professional work. A **Teams** plan for agencies and studios is on the way. You can switch at any time. > Always-current pricing lives at [storyfolder.com/pricing](https://storyfolder.com/pricing). Pro is **$14/mo billed annually** ($168/year — save 18%) or **$17/mo** month-to-month. ## Feature comparison | Feature | Free | Pro | | --- | :---: | :---: | | Active machines | 1 | 1 | | Number of boards | 6 | Unlimited | | Shots per board | 50 | Unlimited | | Custom note fields | ✓ | ✓ | | AI field discovery | ✓ | ✓ | | AI Autofill | First 100 shots | Unlimited | | Reports & charts | — | ✓ | | PDF export | ✓ | ✓ | | Image export | ✓ | ✓ | | Spreadsheet export | — | ✓ | | Video clip export | ✓ | ✓ | | Transcript & subtitle export | ✓ | ✓ | | Selects reel | ✓ | ✓ | | Password-protected sharing | — | ✓ | | [Editorial export](https://storyfolder.com/help/exporting/editorial) — EDL & XML for Premiere, Resolve, Final Cut | — | ✓ | [Editorial export](https://storyfolder.com/help/exporting/editorial) writes three timeline files — `Selects.edl`, Final Cut Pro 7 `.xml` and `.fcpxml` — because no single format opens in every editing app. The **Selects reel**, one video of every shot back to back, is a separate output and is free on every plan. > **Tip:** Pro starts with a **14-day free trial**. You don't need to pay anything during the trial, and you can cancel before it ends with no charge. ## Who is each plan for? **Free** is great for trying StoryFolder out, casual study, or analyzing a few short videos. You get the core import → notes → share workflow — custom fields and your first 100 shots of AI Autofill included — just with limits on the number and length of boards: 6 boards of up to 50 shots each. **Pro** is the sweet spot for individual professionals: filmmakers, video editors, marketing analysts, educators. Unlimited boards and shots, unlimited AI Autofill, full exports, charts, and password-protected sharing. ## Teams — coming soon **Teams — from $49/mo** is in development for agencies and studios: shared seats and **unlimited client viewers**, so you pay for the people building storyboards, not the clients reviewing them. Each workspace includes **5 seats** to start. Want it when it launches? [Add yourself to the notify list](mailto:jeff@jeffjassky.com?subject=StoryFolder%20Teams%20—%20notify%20me) and we'll reach out. ## How do I pick the right plan? Ask yourself: - **How many videos do you want to analyze?** Free maxes out at 6. Pro is unlimited. - **How long are your videos?** A Free board holds 50 shots. A feature film has thousands — that needs Pro. - **Do you want spreadsheets, charts, or more than 100 shots of AI Autofill?** That's Pro. - **Are you a team of collaborators?** Teams (coming soon) is built for shared workspaces — [get notified](mailto:jeff@jeffjassky.com?subject=StoryFolder%20Teams%20—%20notify%20me). ## How do I change plans? See **[Upgrade or downgrade](https://storyfolder.com/help/billing/change-plan)**. ## Where do I go to buy a plan? [storyfolder.com/pricing](https://storyfolder.com/pricing). Once you've signed up and started a trial, the **Subscription** section of your [account page](https://storyfolder.com/help/account/account-page) handles upgrades, cancellations, and billing details. ## Next step → **[Start your free trial](https://storyfolder.com/help/billing/trial)** --- # Start your free trial URL: https://storyfolder.com/help/billing/trial Section: Plans & billing Last updated: 2026-10-09 Pro starts with a 14-day free trial. Here's how it works. # Start your free trial Pro starts with a **14-day free trial**, so you can fully experience every Pro feature before committing. ## How do I start a free trial? 1. Go to storyfolder.com/pricing. 2. Pick the plan you want to try. 3. Click Start free trial. 4. Enter your billing details on the Stripe-hosted checkout page. 5. Confirm. You're now on a trial. You won't be charged during the trial. We use the card on file to verify the account, but no money moves until the trial ends. ## Why do you need my card if it's free? Two reasons: 1. It makes the transition to paid seamless — there's no friction at the end of the trial if you decide to stay. 2. It reduces abuse so we can keep generous free-trial terms. ## Can I cancel before being charged? Yes. You can cancel any time during the 14 days. As long as you cancel before the trial ends, you won't be charged at all. See **[Cancel or pause](https://storyfolder.com/help/billing/cancel)**. ## What happens when the trial ends? If you haven't cancelled, your subscription becomes paid on the 15th day at the rate you signed up for. You can still cancel or downgrade at any point after that. ## Will I get a reminder before being charged? Yes — we send an email reminder a few days before the trial ends. ## Do I get all the features during a trial? Yes. A trial of Pro gives you the same features a paid Pro plan does. ## Can I trial a plan more than once? Trials are per-account. If you've already trialed Pro on the same account, you typically can't trial it again. [Contact support](https://storyfolder.com/help/troubleshooting/contact-support) if you have a specific situation. ## Next step → **[Upgrade or downgrade](https://storyfolder.com/help/billing/change-plan)** --- # Upgrade or downgrade URL: https://storyfolder.com/help/billing/change-plan Section: Plans & billing Last updated: 2026-10-09 Change your plan, prorated automatically. # Upgrade or downgrade You can switch plans whenever you want. Upgrades give you immediate access to the new features. Downgrades take effect at the end of your billing period. ## How do I change my plan? 1. Sign in at storyfolder.com/account/subscription. 2. Click Subscription in the sidebar. 3. Click Change plan. 4. Pick the new plan. You'll see a preview of any prorated charge. 5. Click Confirm. The change is immediate. Your card is charged for the prorated difference if it's an upgrade. ## What happens to my data when I upgrade? Nothing changes about your shot lists, notes, or projects. Upgrading just unlocks more features. New capabilities (like unlimited AI Autofill or video clip export) become available right away. ## What happens to my data when I downgrade? Going from **Pro → Free**, your custom fields and their values remain in your projects, and you can still add new ones. What you lose is the Pro-only exports, charts, password-protected links, and unlimited AI Autofill. If you're over the Free plan's 6-board or 50-shots-per-board limit, you'll see a notice; existing projects stay viewable, but you may not be able to publish more shots until you're within limits. > **Info:** If you're on a retired plan (Basic or Business), you keep everything you have today. Those plans are no longer offered to new customers, so a change moves you to Free or Pro rather than back to a legacy tier. [Contact support](https://storyfolder.com/help/troubleshooting/contact-support) if you're unsure what a change means for your account. > **Tip:** Downgrading never deletes your projects, notes, or share links. Pro features just become unavailable until you upgrade again. ## When does a downgrade actually take effect? Downgrades take effect at the end of your current billing period (the date you last paid through). You keep your current features until then. ## Can I change billing intervals while I change plan? Yes. You can switch from monthly to yearly (and vice-versa) when picking a new plan. See **[Monthly vs yearly](https://storyfolder.com/help/billing/interval)** for the implications. ## Will I get a credit for downgrading mid-cycle? Outside the [14-day money-back guarantee](https://storyfolder.com/help/billing/refunds) we don't refund mid-cycle downgrades, but the change takes effect at the end of the paid period, so you get full value from what you've already paid. ## Will I be billed immediately on an upgrade? Yes — Stripe issues a prorated charge based on how much of the current period remains. ## Will my saved card be used? Yes. We use the payment method already on file. If you'd like to change it, see **[Update payment method](https://storyfolder.com/help/billing/payment-method)**. ## Next step → **[Monthly vs yearly](https://storyfolder.com/help/billing/interval)** --- # Monthly vs yearly URL: https://storyfolder.com/help/billing/interval Section: Plans & billing Last updated: 2026-10-09 How the two billing intervals work, and when to pick which. # Monthly vs yearly Every paid plan offers a **monthly** and a **yearly** option. Yearly saves you roughly **15%** compared to paying month by month. ## How do I pick a billing interval? When you subscribe at [storyfolder.com/pricing](https://storyfolder.com/pricing), use the **Yearly / Monthly** toggle at the top of the plan grid before choosing your plan. When changing plans from your account, you'll see the interval choice as part of the change flow. ## Should I pay yearly? **Yes**, if: - You know you'll use StoryFolder for a year or more. - You'd rather not think about billing every month. - The ~15% discount is meaningful to you. **Stick with monthly**, if: - You're not sure yet — Pay monthly while you decide. - You're between projects and may pause your subscription. - Cash flow is tight and you'd rather smooth payments. ## How do I switch from monthly to yearly (or vice versa)? 1. Sign in at storyfolder.com/account/subscription. 2. Open Subscription. 3. Click Change plan. 4. On the change page, toggle between monthly and yearly. 5. Pick your plan and confirm. The change is prorated. Monthly → yearly is charged at the new rate immediately, with credit for unused time. Yearly → monthly takes effect at the end of your current paid year, so you get the full value of the year you already paid for. ## What if I cancel my yearly plan early? You get the full year of features you paid for, even if you cancel. The subscription stops auto-renewing — see **[Cancel or pause](https://storyfolder.com/help/billing/cancel)**. Outside the [14-day money-back guarantee](https://storyfolder.com/help/billing/refunds) we don't offer pro-rated refunds for yearly cancellations, but the value you paid for is preserved until the renewal date. ## Will my discounted price stay the same on renewal? If you signed up under a coupon or promotional pricing, the discounted rate locks in for the duration of your current subscription. On the next renewal, the rate you pay is determined by current pricing and any active discount on file — your account page is the source of truth. ## Next step → **[Cancel or pause](https://storyfolder.com/help/billing/cancel)** --- # Cancel or pause URL: https://storyfolder.com/help/billing/cancel Section: Plans & billing Last updated: 2026-10-09 How to cancel your subscription — or temporarily pause it if you'll be back. # Cancel or pause If you need to take a break from StoryFolder, you have two options: **pause** (paused for up to 3 months, then auto-resumes) or **cancel** (stops at the end of the paid period and won't auto-renew). ## How do I cancel my subscription? 1. Sign in at storyfolder.com/account/subscription. 2. Click Subscription in the sidebar. 3. Scroll down and click Cancel subscription. 4. Confirm. Your subscription is set to cancel at the end of the current billing period. You **keep full access until then** — no immediate downgrade. ## What happens after cancellation? When your paid period ends: - Your account drops down to the Free plan automatically. - Pro features (advanced exports, charts, password-protected links, unlimited AI Autofill) become read-only or hidden. - Your projects, notes, and share links **stay intact** — nothing is deleted. - Published storyboards remain published. You can re-subscribe at any time and pick right back up where you left off. ## How do I pause instead of cancelling? If you'll be back in a few weeks or months: 1. From the Subscription page, click Pause subscription. 2. Confirm. The subscription is paused for up to **3 months**. We don't bill you during the pause. After the pause window, the subscription resumes automatically — or you can resume it earlier. Pausing keeps your account in a "paid" state, so all your features remain available to view, but you may not be able to add new content depending on the paused plan limits. (Practical heads-up: pausing is meant for short breaks, not as a long-term Free downgrade.) ## How do I resume a paused subscription? Go to **Subscription** on your account page and click **Resume**. Billing picks back up immediately and you regain full access. ## What if I change my mind after I cancel? If the cancellation hasn't taken effect yet (i.e. your paid period hasn't ended), you can reactivate from your account page: 1. Open Subscription. 2. Click Reactivate subscription. Your subscription returns to normal — same plan, same renewal date, no new charge. If your paid period already ended, just sign up again with your same email and you'll pick right up where you left off (sans Pro features until you re-subscribe). ## Will I get a refund for cancelling mid-cycle? Within 14 days of a charge, yes: every charge has a 14-day money-back guarantee. After that we don't refund unused time, and you keep full access until the end of the period you've already paid for. If you were charged in error, or your plan renewed when you meant to cancel, [contact support](https://storyfolder.com/help/troubleshooting/contact-support). ## Will my published storyboards stay live? Yes. Published share links remain accessible even on the Free plan. Re-publishing works on Free too. Password-protected sharing reverts to public/link-only. ## Next step → **[Refunds](https://storyfolder.com/help/billing/refunds)** --- # Invoices & receipts URL: https://storyfolder.com/help/billing/invoices Section: Plans & billing Last updated: 2026-10-09 Where to find your past invoices, and how to download them. # Invoices & receipts You can view and download every invoice for your subscription from your account page. ## Where do I find my invoices? 1. Sign in at storyfolder.com/account/receipts. 2. Click Invoices in the sidebar. 3. You'll see a chronological list of every charge — date, amount, plan, and a link to the invoice. ## How do I download an invoice as a PDF? Click an invoice in the list. It opens the Stripe-hosted invoice page, with **Download PDF** and **Download Receipt** buttons in the top-right. ## Do I get an invoice by email automatically? Yes — every successful charge sends a receipt to the email on your account. If you'd rather not receive these, [contact support](https://storyfolder.com/help/troubleshooting/contact-support) and we can adjust your preferences. ## Can I update the company name and billing address on the invoice? Yes. Open the Stripe billing portal: 1. Go to Subscription → Manage billing on your account page. 2. In the Stripe portal, find the Billing information section. 3. Update company name, address, and tax ID. Future invoices will use the updated details. Past invoices reflect what was on file at the time they were issued. ## My company needs a custom invoice (PO number, custom fields). Can you help? For team/business accounts with special invoicing needs, [contact support](https://storyfolder.com/help/troubleshooting/contact-support). We can work with you to issue invoices that satisfy your AP team. ## Can I get a VAT / tax invoice? Yes. Stripe invoices automatically include tax / VAT details where required by jurisdiction. If you're missing something specific, let us know and we'll make sure your invoice has it. ## Why don't I see an invoice for the trial? Trials aren't billed, so no invoice is generated. Your first invoice appears the day your trial converts to paid. ## Next step → **[Update payment method](https://storyfolder.com/help/billing/payment-method)** --- # Update payment method URL: https://storyfolder.com/help/billing/payment-method Section: Plans & billing Last updated: 2026-10-09 How to change the card on file for your StoryFolder subscription. # Update payment method If your card is expiring, was lost or stolen, or you want to switch to a different card, you can update your payment method any time. ## How do I update my card? 1. Sign in at storyfolder.com/account/subscription. 2. Open Subscription. 3. Click Manage billing (or Update payment method). 4. You'll be redirected to the Stripe billing portal — that's where payment details are stored. 5. Click Add payment method, enter your new card, and save. 6. Click Set as default on the new card. 7. (Optional) Delete the old card if you no longer want it on file. The next billing cycle will charge the new card. ## What payment methods are accepted? Through Stripe, StoryFolder accepts: - Major credit cards (Visa, Mastercard, American Express, Discover). - Debit cards. - Apple Pay and Google Pay (in supported browsers). - Some regional payment methods (SEPA in Europe, iDEAL in the Netherlands, etc.). The exact list depends on your country. ## What happens if my card is declined? Stripe will retry the charge a few times over the following days. While the charge is failing: - You'll get an email asking you to update the card. - Your account is marked as past-due but you retain access for a short grace period. - After repeated failures, your subscription will be paused or cancelled. To recover, just update the card from **Manage billing** and the next retry will succeed. ## Can I add a backup card? Yes — Stripe lets you store multiple cards. Only the **default** card is charged for renewals, but having a backup means a smoother recovery if the primary card declines. ## Do you store my card number? No. Card numbers are held by Stripe — a PCI-compliant payment processor. StoryFolder only stores a token, the last four digits, and the card brand. We never see or store the full card number, expiration, or CVV. ## How do I remove all payment methods? If you want to clear all stored cards, first **[cancel your subscription](https://storyfolder.com/help/billing/cancel)**, then delete the cards from the billing portal. You can re-add a card any time to re-subscribe. ## Next step → **[Refunds](https://storyfolder.com/help/billing/refunds)** --- # Refunds URL: https://storyfolder.com/help/billing/refunds Section: Plans & billing Last updated: 2026-10-09 Our refund policy and how to request one. # Refunds We want you to be happy with StoryFolder. If something's not right, [reach out](https://storyfolder.com/help/troubleshooting/contact-support) and we'll do our best to help. ## What's the refund policy? Every charge made through StoryFolder comes with a **14-day money-back guarantee**. Contact us within 14 days of the charge and we'll refund that charge in full. This matches section 4 of our [Terms of Service](https://storyfolder.com/terms). - **Free trials:** No charge happens during the trial, so there's nothing to refund. Cancel before the trial ends to avoid being billed. - **Renewals:** A renewal is a new charge, so it gets its own 14 days. If your plan renewed when you meant to cancel, contact us within 14 days of the renewal. - **After 14 days:** We don't refund partial periods. If you cancel, your plan stays active until the end of the period you've paid for. - **Billing errors:** If you were charged in error, we'll always refund promptly. - **App store purchases:** Purchases made through a third-party app store follow that store's refund policy. Request those refunds through the store. ## How do I request a refund? 1. Contact support. 2. Tell us which charge you're asking about (the date and amount, or a screenshot of the invoice). 3. Briefly explain the situation. 4. We'll get back to you within one business day. ## How long do refunds take? If we approve a refund, it's issued through Stripe and typically appears on your statement within **5–10 business days**, depending on your bank. Some banks are faster. ## What if I just don't want StoryFolder anymore? The simplest path: 1. **[Cancel](https://storyfolder.com/help/billing/cancel)** your subscription to stop future renewals. 2. Use StoryFolder through the end of the period you've already paid for. 3. Optionally, **[delete your account](https://storyfolder.com/help/security/delete-account)** when you're truly done. ## Will I be charged again after I cancel? No — once a subscription is cancelled, no further charges occur. The card stays on file in case you re-subscribe, but Stripe will not bill it again unless you explicitly restart your subscription. ## What if I'm disputing the charge with my bank? If you'd like a refund, please [contact us first](https://storyfolder.com/help/troubleshooting/contact-support) rather than starting a chargeback. We can resolve almost any concern directly, and a direct refund is faster than a chargeback would be. Chargebacks also tend to cost both sides extra fees. --- # How your data is stored URL: https://storyfolder.com/help/security/data-storage Section: Security & data Last updated: 2026-10-09 A clear, plain-English explanation of where your StoryFolder data lives. # How your data is stored StoryFolder is designed with a clear separation between **your videos** (which stay on your computer) and **your notes and account info** (which are stored on our servers so they can sync and be shared). ## Where do my videos live? Always on your computer. - **File imports** — the original file stays exactly where you put it. StoryFolder reads it; it doesn't copy it. - **URL imports** — the downloaded video is cached in StoryFolder's local app data folder. It's not uploaded to our servers. In neither case do we upload your video to StoryFolder's servers. ## Where do my thumbnails live? In StoryFolder's local app data folder on your computer. Thumbnails are generated when you import and re-used every time you open the project. - **macOS:** `~/Library/Application Support/StoryFolder` - **Windows:** `%APPDATA%\StoryFolder` If you **[publish a share link](https://storyfolder.com/help/sharing/publish)**, the thumbnails needed for that link are uploaded so viewers on the web can see them. ## Where do my notes live? In two places: 1. **Locally** — in StoryFolder's local database, alongside your shot list and project metadata. 2. **On our servers** — so they sync across machines and underpin sharing. Your notes are tied to your account and never visible to anyone except you, unless you publish a share link. ## Where does my account information live? On StoryFolder's servers. This includes: - Email, name, and password (hashed — we never see your plain-text password). - Your subscription state (managed by Stripe; we only store identifiers). - Your activated machine fingerprints (so we know which devices are signed in). ## Where does payment information live? With Stripe, a PCI-compliant payment processor. StoryFolder never sees or stores your card number, expiration, or CVV. We only store a Stripe customer ID, last four digits, and brand for display purposes. ## How long do you keep my data? - **Active accounts:** as long as you have an account. - **Cancelled paid accounts:** indefinitely on the Free plan unless you delete your account. - **Deleted accounts:** your data is purged shortly after deletion, except billing and tax records, which the law requires us to keep for about 7 years. See **[Delete your account](https://storyfolder.com/help/security/delete-account)**. The retention period for every kind of data we hold is listed in our [Privacy Policy](https://storyfolder.com/privacy). ## How is my data secured? - **In transit:** all connections to StoryFolder use HTTPS. - **At rest:** databases are hosted on professionally managed infrastructure with disk-level encryption. - **Passwords:** hashed with bcrypt. - **Machine licenses:** encrypted with strong symmetric encryption. ## What about the privacy policy? Our full privacy policy is at [storyfolder.com/privacy](https://storyfolder.com/privacy). It's the legally binding source — this page is a plain-English summary, and if the two ever disagree, the policy is right. ## Next step → **[Local vs cloud](https://storyfolder.com/help/security/local-vs-cloud)** --- # Local vs cloud URL: https://storyfolder.com/help/security/local-vs-cloud Section: Security & data Last updated: 2026-10-09 A precise breakdown of what stays on your computer and what goes to our servers. # Local vs cloud StoryFolder is a hybrid desktop + cloud app. Knowing exactly what lives where helps you make confident decisions about confidential or sensitive videos. ## What's local-only? These never leave your computer: - **Your video files**, whether you imported them from disk or downloaded them via a URL. - **The full-resolution thumbnail cache** used by the editor. - **The local working database** with your project state. - **App preferences** (UI settings, column widths, release channel). - **Transcription.** Speech recognition runs as a process on your own computer, on audio taken from the local file. **Your audio is never uploaded to be transcribed**, and no third-party transcription service is involved. [Speaker identification](https://storyfolder.com/help/transcription/speakers) runs locally too. - **Shot detection**, which also runs on your machine. ## What's synced to our servers? - **Your account info** — email, name, password hash, subscription state. - **Your projects' metadata** — project titles, source URLs (not the video), settings. - **Your shot lists** — start times, durations, frame ranges. - **Your notes** — every value in every note field, across default and custom. - **Your activated machine fingerprints** — used to validate your machine slot. ## What does AI Autofill send? [AI Autofill](https://storyfolder.com/help/ai/autofill) is the one feature that sends your footage's *pictures* off the machine. For each shot in a run it sends: - **One frame from that shot**, to StoryFolder's server and on to a hosted vision model. - **The context around it** — your field names, types, options and descriptions, the run's instructions, and the video's title, description and video-level field values. **The video file itself is never uploaded.** But Autofill needs an internet connection every time, and it is not local. Don't read "local" as an app-wide promise: transcription is local, Autofill is not. Our [Privacy Policy](https://storyfolder.com/privacy) is the authority on what each AI feature sends, and to which provider. ## What gets uploaded when I publish a share link? When you publish, StoryFolder uploads: - A copy of the **thumbnails for the visible shots** to a CDN so web viewers can see them. - The same shot list and notes that are already on the server. - Your privacy settings (public / link-only / password). The **original video file** is still not uploaded. For URL imports, the published page embeds the original source (YouTube) using its own URL. ## What if I import a confidential video? If you're working with confidential or pre-release material: - **The video itself stays on your computer.** Importing it does not upload it. - **Your notes do go to our servers** (so they sync). Treat them with the same level of confidentiality as the video — they describe the video. - **Don't publish a share link** unless you're cleared to. Or, if you must share, use **[password protection](https://storyfolder.com/help/sharing/privacy)** to limit exposure. If you have strict requirements (NDAs, air-gapped environments), [contact us](https://storyfolder.com/help/troubleshooting/contact-support). We can talk through your options. ## Can I work fully offline? The editor and most note-taking work fine offline once a video is imported. Things that require an internet connection: - **Signing in / activating** a new machine. - **URL imports** (obviously). - **Publishing or updating share links**. - **AI field discovery** (calls a server-side model). - **[AI Autofill](https://storyfolder.com/help/ai/autofill)** (sends a frame per shot to a hosted vision model, every run). - **Downloading the transcription engine and a [model](https://storyfolder.com/help/transcription/models)** — once each, from StoryFolder's servers. Once they're on disk, transcription itself runs with the network off. - **License validation** (runs occasionally; will use a cached license for short outages). ## Does my data stay synced across machines? Yes. Sign in on a second computer and your shot lists and notes appear there too. The video files themselves need to be re-imported on the new machine (since they're local). ## Next step → **[Delete your account](https://storyfolder.com/help/security/delete-account)** --- # Delete your account URL: https://storyfolder.com/help/security/delete-account Section: Security & data Last updated: 2026-10-09 How to permanently delete your StoryFolder account and all associated data. # Delete your account If you'd like to leave StoryFolder, you can request a complete deletion of your account and data. ## How do I delete my account? You can delete your account yourself from your account settings: 1. Sign in and open your Account settings. 2. Find Delete account in the account/security section. 3. Confirm — you'll be asked to acknowledge that the deletion is permanent. 4. Your account and data are scheduled for deletion right away, and your published share links stop working immediately. Prefer a hand? You can still contact support from the email address on your account, with the subject "Delete my account", and we'll complete it for you after verifying your identity. ## What gets deleted? - Your **account record** (email, name, password hash). - All your **projects, shot lists, and notes**. - All your **published share links**. URLs stop working immediately. - Your **activated machines** and license records. - Your **Stripe customer record**, except billing and tax records we're legally required to keep (see below). ## What about local data? After deletion: - The data on **our servers** is gone. - Data still in StoryFolder's **local app data folder** on your computer is up to you. You can delete the StoryFolder app and its app data folder (see **[Install the app](https://storyfolder.com/help/getting-started/install)** for paths). If you don't, no harm — without a valid account, the desktop app can't use the data. ## How long does deletion take? The user-facing deletion is immediate — your share links stop working right away and you lose access. Backend purging of projects, notes, and logs happens shortly after. A few categories are retained longer for legal and operational reasons: - **Billing and tax records** — approximately **7 years**, as required by tax and financial-recordkeeping law. - **Backups** — deleted content ages out of routine backups within our normal backup rotation. We don't keep your project content beyond what's needed for these purposes. ## Will my published links still work after deletion? No. Published share links are tied to your account and disappear when the account is deleted. If a viewer has a copy of the link, they'll see a "not found" message. ## What if I just want to cancel, not delete? Plenty of people prefer to keep their account around as a Free plan rather than deleting outright. To stop paying without losing your work: - **[Cancel your subscription](https://storyfolder.com/help/billing/cancel)** — you drop to the Free plan at the end of your paid period. - Your projects, notes, and share links stay intact. - You can re-subscribe any time. Account deletion is for when you're truly done. ## What if I change my mind after deletion? Once deleted, your data can't be restored. You're welcome to sign up again with the same email, but it'll be a fresh account. ## Anything else? If you have specific data-deletion requirements (GDPR right-to-erasure, contractual obligations to a client), tell us in your deletion request. We'll make sure the right pieces are addressed. --- # Preferences overview URL: https://storyfolder.com/help/settings/preferences Section: App settings Last updated: 2026-10-09 A tour of every preference pane in the StoryFolder desktop app. # Preferences overview The Preferences window is where you customize StoryFolder for your workflow. Open it any time with `Cmd`+`P` (Mac) or `Ctrl`+`P` (Windows). ## What's in Preferences? Preferences is organized into three panes: - **Notes & Data** — customize the note fields you take on shots. - **Updates** — pick your release channel and check for updates. - **Account** — see your activation status and deactivate this machine. ## Notes & Data pane This is the most powerful pane. From here you can: - See every category and field that's currently defined. - Add a **new category** to group related fields. - Add **custom fields** of any type (text, number, dropdown, tag, checkbox, rating). - Use **AI field discovery** to get suggestions for a project type. - Reorder fields and categories by dragging. - Toggle fields on / off without deleting them. Full reference: - → **[Adding notes](https://storyfolder.com/help/notes/adding-notes)** - → **[Custom fields](https://storyfolder.com/help/notes/custom-fields)** - → **[Field types](https://storyfolder.com/help/notes/field-types)** - → **[Categories](https://storyfolder.com/help/notes/categories)** - → **[AI field discovery](https://storyfolder.com/help/notes/ai-discovery)** ## Updates pane From here you can: - See your current StoryFolder version. - Check whether a new version is available. - Choose your **release channel**: - **Beta** (recommended) — stable, public releases. - **Alpha** — early access to unreleased features. Expect rough edges. - Manually trigger an update download. Full reference: **[Release channels & updates](https://storyfolder.com/help/settings/updates)**. ## Account pane From here you can: - See the email and name on your StoryFolder account. - See which plan you're on and when it renews. - **Deactivate this machine** (sign out). - **Reload license** (refresh activation info from the server). If your subscription state changes (you upgrade, renew, or cancel), clicking **Reload license** is the fastest way to pull the new state into the desktop app. ## Are preferences synced across machines? Custom fields, categories, and account info **are synced** — they live on your StoryFolder account. UI preferences (column widths, last-used view mode, zoom level) are **per-machine** — they're stored in your local app settings, not synced. ## Next step → **[Release channels & updates](https://storyfolder.com/help/settings/updates)** --- # Release channels & updates URL: https://storyfolder.com/help/settings/updates Section: App settings Last updated: 2026-10-09 How StoryFolder gets new versions, and how to opt into early-access builds. # Release channels & updates StoryFolder ships frequent updates with new features, fixes, and improvements. By default the app checks for them automatically and offers to install when ready. ## How does auto-update work? Every time you launch StoryFolder, it checks our update server. If a new version is available: - You'll see a notice (in the About window and as a banner). - Click **Download Update** to fetch it. The app keeps running while it downloads. - When the download finishes, click **Restart Now** to install. The app relaunches and you're on the new version. You can also check manually from **About → Check for updates**. ## What are the release channels? StoryFolder has two channels: - **Beta** (default, recommended) — stable, public releases. This is what most users should be on. - **Alpha** — early access to unreleased features. Updates more frequently. Expect occasional rough edges. ## How do I switch channels? 1. Open Preferences (Cmd+P / Ctrl+P). 2. Switch to the Updates pane. 3. Pick Beta or Alpha. 4. The next update check will pull from the new channel. ## Should I switch to Alpha? Switch to Alpha if: - You want to try new features before they're stable. - You're happy reporting bugs and helping us shake out edge cases. - You don't rely on StoryFolder for time-sensitive client work. Stick with Beta if: - You're using StoryFolder professionally and need stability. - You'd rather wait until features are proven. You can switch back to Beta any time — your projects are forward and backward compatible across releases. ## Can I delay an update? Yes — just don't click **Restart Now** until you're ready. The download persists across sessions; you can keep working and install when convenient. ## Will updates change my files? No. Updates change the app itself, never your local data or projects. ## Will updates change pricing or features? We sometimes ship new pricing tiers or roll Pro features down to Free (or vice versa). If your plan's feature set changes, we'll communicate clearly via email. You'll never be silently downgraded. ## How do I know what's in an update? In-app release notes are on our roadmap. For now, recent release notes live on the [StoryFolder blog](https://storyfolder.com/blog). ## What if an update breaks something? Send us your logs and a description of the bug — we can roll your local install back to the previous version while we fix the issue. See **[Send us your logs](https://storyfolder.com/help/troubleshooting/logs)**. --- # App won't open URL: https://storyfolder.com/help/troubleshooting/app-wont-open Section: Troubleshooting Last updated: 2026-10-09 Step-by-step fixes when StoryFolder won't launch. # App won't open If StoryFolder refuses to launch — bouncing in the Dock, an instant crash, or just nothing at all — work through these checks in order. ## On macOS ### Make sure the app is in your Applications folder If you ran the app directly from the disk image (`.dmg`), some macOS versions block updates. Drag StoryFolder to your **Applications** folder and run it from there. ### Right-click → Open the first time If macOS blocks an unidentified developer warning, right-click (or `Control`-click) the app icon and pick **Open**. Confirm in the dialog. macOS remembers the choice from then on. ### Check the Console for errors 1. Open Console.app (search Spotlight for "Console"). 2. In the left sidebar, click Crash Reports. 3. Look for a recent StoryFolder entry. If you see one, that's the smoking gun — send the file to support. ### Restart your Mac If StoryFolder was force-quit and a background helper is stuck, a restart clears it. ## On Windows ### Try running as Administrator Right-click the StoryFolder shortcut and pick **Run as administrator**. This isn't required for normal use, but it can bypass a permission glitch. ### Check Windows Event Viewer 1. Press Win+X and pick Event Viewer. 2. Expand Windows Logs → Application. 3. Find a recent error from StoryFolder or StoryFolder.exe. 4. Note the error code and send it to support. ### Reinstall If the install is corrupt, uninstalling and re-downloading often resolves it. 1. Go to Settings → Apps and uninstall StoryFolder. 2. Download a fresh installer from storyfolder.com/download. 3. Run the installer. Your local data (projects, settings) is in `%APPDATA%\StoryFolder` and is **not** removed by uninstalling. Your work is safe. ## Both platforms ### Make sure you're not at the very edge of disk space StoryFolder needs a small amount of free space to launch and read its database. If your drive is full, free some space and try again. ### Check your antivirus Some aggressive antivirus tools quarantine Electron apps incorrectly. Whitelist `StoryFolder.app` (Mac) or `StoryFolder.exe` (Windows) and try again. ### Update macOS / Windows Very rarely, a missing system library on outdated OS versions prevents launch. Make sure you're on a supported OS — see **[Install the app](https://storyfolder.com/help/getting-started/install)** for requirements. ## Still stuck? Send us your logs and we'll dig in: → **[Send us your logs](https://storyfolder.com/help/troubleshooting/logs)** → **[Contact support](https://storyfolder.com/help/troubleshooting/contact-support)** --- # Import failed URL: https://storyfolder.com/help/troubleshooting/import-failed Section: Troubleshooting Last updated: 2026-10-09 A diagnostic checklist when a video won't import. # Import failed Most failures fall into one of a handful of categories. Walk through these in order and you'll likely resolve the issue. ## What did the error message say? If the progress screen shows a specific error, that's your first clue. Common messages: - **"Could not retrieve video metadata."** → URL is private, region-locked, or unreachable. - **"Unsupported codec."** → The video uses a codec FFmpeg can't decode in this configuration. - **"Download interrupted."** → Network connection dropped mid-import. - **"Processing failed."** → A later stage of shot detection or thumbnail generation failed. If there's no specific message, work through the checks below. ## Quick checks first - **Internet** — for URL imports, confirm your internet is working by loading a website. - **Disk space** — both the source video and StoryFolder's working cache need room. If your drive is more than ~95% full, free space and try again. - **Source playback** — open the file or URL in VLC or a browser to confirm it actually plays. ## URL imports If a YouTube URL won't import: 1. Open the URL in a browser. If you can't play it (private, age-gated, region-locked, deleted), StoryFolder can't either. 2. Check the URL format. The supported formats are listed in Import from YouTube. 3. If it's an unlisted video, try copying the URL again — some unlisted links time out after a while. 4. Try downloading the video manually (with a browser extension or yt-dlp) and importing the file directly. ## File imports If a video file won't import: 1. Open the file in VLC or QuickTime. If it doesn't play there either, the file is corrupt. 2. If it plays but won't import into StoryFolder, re-export it as .mp4 (H.264) using HandBrake, Adobe Media Encoder, or QuickTime's Export As…. Try importing the new file. 3. Check that the file isn't on a network drive that just disconnected. Copy it to your desktop and try again. 4. Make sure the filename has a supported extension. See Supported formats. ## Import stuck at 0% or 99% A separate guide covers these specific cases in detail: - → **[Troubleshooting imports](https://storyfolder.com/help/importing/troubleshooting)** — for stuck-at-percentage issues. ## The import succeeded but the shots are wrong This is a detection issue, not a failure. Adjust the **AI shot detection sensitivity slider** in the editor and use **Split** / **Merge** to clean up the few shots that need it: - → **[AI shot detection sensitivity](https://storyfolder.com/help/editing/sensitivity)** - → **[Splitting & merging shots](https://storyfolder.com/help/editing/split-merge)** ## Retry the import Once you've fixed the underlying issue: 1. Go to the home screen. 2. Hover the failed project and click the ⋯ menu. 3. Pick Delete. 4. Start the import again. ## Still failing? We'd love to take a look. Send us your logs: → **[Send us your logs](https://storyfolder.com/help/troubleshooting/logs)** --- # Activation problems URL: https://storyfolder.com/help/troubleshooting/activation Section: Troubleshooting Last updated: 2026-10-09 Fixes for when the desktop app won't activate against your account. # Activation problems When the desktop app and your StoryFolder account don't see eye to eye, you'll see issues like a stuck sign-in flow, a "maximum activations reached" message, or a subscription that should be active showing as expired. Here's how to fix each. ## The browser opened but the desktop app didn't activate This is the most common one. The desktop app expected to receive a "you're authenticated" handoff via a `storyfolder://` URL but didn't. 1. Make sure the desktop app is still running. 2. If the browser shows an Open StoryFolder button, click it. Click Always allow in any browser prompt about storyfolder:// links. 3. If nothing happens, copy the full activation URL from your browser's address bar. 4. Switch back to the desktop app's Sign In screen. 5. Paste the URL into the activation input (development mode) and press Enter. If that didn't work, see **[Reset license](https://storyfolder.com/help/troubleshooting/reset-license)** for a clean slate. ## "Maximum activations reached" You're at your plan's machine limit. To free a slot: 1. Go to storyfolder.com/account/machines → Machines. 2. Identify a machine you don't need active anymore. 3. Click Deactivate. 4. Return to the desktop app and click Connect your account again. If you need more concurrent machines, multi-seat workspaces are coming with the **Teams** plan — [get notified](mailto:jeff@jeffjassky.com?subject=StoryFolder%20Teams%20—%20notify%20me) or [contact support](https://storyfolder.com/help/troubleshooting/contact-support). ## My subscription is active but the app thinks it's expired The desktop app caches your activation status and re-validates periodically. If you've just upgraded, renewed, or fixed a payment issue, force a refresh: 1. Open Preferences → Account. 2. Click Reload License. 3. The app re-fetches your plan and renewal date from the server. If that doesn't help, deactivate and re-activate the machine. ## My subscription is canceled but I still see Pro features If you cancel during a paid period, you keep access through the end of that period. The desktop app reflects what the server tells it. When the period ends, **Reload License** will sync the new state. ## I switched accounts — the app still thinks I'm the old user The desktop app holds an activation for one account at a time. To switch: 1. Open Preferences → Account. 2. Click Deactivate Machine. 3. Click Connect your account and sign in with the new email. ## I'm offline — will activation still work? The desktop app keeps a cached activation that's valid for several days of offline use. If you're going on a flight or off the grid: - Sign in before you leave. - The app will keep working offline for at least a few days. - When you reconnect, license validation runs again automatically. ## Reset everything If activation feels truly stuck, the simplest fix is to wipe the local activation and start fresh: → **[Reset license](https://storyfolder.com/help/troubleshooting/reset-license)** ## Still stuck? Send us your logs and a screenshot of any error message, plus the email on your account: → **[Send us your logs](https://storyfolder.com/help/troubleshooting/logs)** → **[Contact support](https://storyfolder.com/help/troubleshooting/contact-support)** --- # Reset license URL: https://storyfolder.com/help/troubleshooting/reset-license Section: Troubleshooting Last updated: 2026-10-09 Wipe the desktop app's local activation and start over. # Reset license When activation gets stuck — corrupt cache, mismatched account, or a license that refuses to refresh — the cleanest fix is to wipe the local activation and re-authenticate. ## What does "reset license" mean? It clears the activation data stored locally on this computer. It does **not**: - Delete your account. - Cancel your subscription. - Touch your projects, notes, or share links. After a reset, the next time you launch the app it'll behave like a fresh install — showing the Sign In screen and waiting for you to connect. ## How do I reset the license? ### Option 1 — From inside the app 1. Open Preferences → Account. 2. Click Deactivate Machine. 3. The app returns to the Sign In screen. 4. Click Connect your account and authenticate normally. This is the right starting point for most cases. ### Option 2 — From the web If the app can't reach **Preferences** (e.g. it's stuck on Sign In): 1. Go to storyfolder.com/account/machines → Machines. 2. Deactivate this machine from the web. 3. Restart the desktop app and click Connect your account. ### Option 3 — Manual cache wipe (advanced) If neither of the above work, you can manually clear the activation cache. > **Warning:** Make sure StoryFolder is fully quit before editing its data folder. **macOS** ``` ~/Library/Application Support/StoryFolder/activation.json ``` **Windows** ``` %APPDATA%\StoryFolder\activation.json ``` 1. Quit StoryFolder completely. 2. Open the path above in Finder / File Explorer. 3. Delete activation.json. 4. Relaunch StoryFolder. 5. Click Connect your account. This is a last-resort method. Don't delete other files in the folder — your projects live there. ## What if I get the same error after the reset? Two more things to try: 1. **Sign in to the web** at [storyfolder.com/signin](https://storyfolder.com/signin) and make sure your account is actually accessible. If you see "subscription expired" or "no plan", that's a billing issue, not an activation issue. 2. **Try a sign-in link** instead of email/password. See **[Sign-in link](https://storyfolder.com/help/account/sign-in-link)**. ## After resetting — will I have to re-download my projects? No. Your projects are tied to your account, and the local thumbnail cache stays put. After you re-activate, everything reappears. ## Still stuck? Send us your logs and we'll figure it out: → **[Send us your logs](https://storyfolder.com/help/troubleshooting/logs)** --- # Send us your logs URL: https://storyfolder.com/help/troubleshooting/logs Section: Troubleshooting Last updated: 2026-10-09 How to send your StoryFolder log files to support so we can diagnose an issue. # Send us your logs When something goes wrong, the StoryFolder log files are the fastest way for support to figure out what happened. Sending them takes about a minute. ## How do I send my logs? ### Option 1 — From inside the app (easiest) 1. Open StoryFolder. 2. Click the Help menu (top of the screen on Mac, top of the window on Windows). 3. Pick Upload logs to support. 4. Confirm. A short progress indicator runs and the logs are sent. 5. Email jeff@jeffjassky.com describing what happened. Include the email address on your StoryFolder account so we can match the logs. This is the recommended path — it includes the right files and avoids you having to attach anything manually. ### Option 2 — Reveal the logs folder yourself If the in-app upload doesn't work: 1. Open StoryFolder. 2. Click the Help menu → Open logs folder. 3. The folder opens in Finder / File Explorer. 4. Zip the folder. 5. Email the zip to jeff@jeffjassky.com. ### Option 3 — Find logs manually If you can't open StoryFolder at all: - **macOS:** `~/Library/Logs/StoryFolder` - **Windows:** `%APPDATA%\StoryFolder\logs` Zip the folder and email it to us. ## What's in the logs? The log files contain: - App version, OS version, locale. - A timeline of recent actions and any errors. - Which requests to StoryFolder's servers succeeded or failed. They **do not** contain: - Your passwords. - The contents of your videos. - The full text of your notes. We treat logs as confidential and only use them to diagnose your issue. ## How can I clear the logs? In **Help → Reset logs** the app clears out old log files. This is useful if you'd like to capture a fresh log of a reproducible issue: 1. Click Help → Reset logs. 2. Reproduce the issue. 3. Upload the new logs. A fresh, focused log is easier for us to diagnose than a sprawling one. ## What information should I include in my email? When you send logs, please also tell us: - The **email address** on your StoryFolder account. - A **short description** of what you were trying to do. - **What went wrong** (an error message, a screenshot, the symptom). - The **time** the issue happened, if recent. The more context, the faster we can help. --- # Welcome to StoryFolder URL: https://storyfolder.com/help/getting-started/welcome Section: Getting started Last updated: 2026-10-09 A quick tour of what StoryFolder does, who it's for, and where to go next. # Welcome to StoryFolder StoryFolder turns any video into an editable storyboard in seconds. Drop in a film, an ad, or your latest YouTube reference — StoryFolder detects every unique shot, lays them out on an interactive canvas, and gives you a powerful place to take notes, organize ideas, and share what you find. ## What can I do with StoryFolder? - **Reverse-engineer a video.** Convert any clip into a shot-by-shot storyboard so you can study its pacing, framing, and structure. - **Take notes on every shot.** Capture takeaways, cinematography decisions, dialogue, sound design — anything that matters to you. - **Customize your workflow.** Build your own note fields for cinematography, marketing analysis, lighting reviews, screenwriting prep, or anything in between. - **Share with one click.** Publish a beautiful link to your storyboard for clients, teammates, or your own future reference. - **Export your way.** Generate PDFs, image sets, shot list spreadsheets, video clips, and more. ## Who is StoryFolder for? StoryFolder is designed for anyone who works closely with video: - Filmmakers and directors studying the craft. - Video marketers and creative directors deconstructing ads. - Production studios planning their next shoot. - Editors building reference boards. - Students learning cinematography and storytelling. ## How does it work? 1. **You import a video.** Paste a YouTube link, or drop in a file from your computer. 2. **StoryFolder breaks it into shots.** An AI-powered shot detector finds every cut and lays each shot on the canvas as a thumbnail. 3. **You take notes.** Click any shot to add structured notes — using the default fields or your own. 4. **You share or export.** Publish a link, generate a PDF, download a CSV. Your call. The desktop app runs locally — your videos never have to leave your computer unless you choose to share them. ## Where should I go next?
- New here? Start with **[Create your account](https://storyfolder.com/help/getting-started/create-account)**. - Already signed up? Jump to **[Install the app](https://storyfolder.com/help/getting-started/install)**. - Curious about pricing first? See **[Compare plans](https://storyfolder.com/help/billing/plans)**.
> **Tip:** Most people get their first storyboard done in under five minutes. If you'd rather see it before you sign up, watch the [intro video on the StoryFolder homepage](https://storyfolder.com). --- # Connect AI Assistants URL: https://storyfolder.com/help/ai/overview Section: AI assistant Last updated: 2026-10-09 Talk to your storyboards. Connect StoryFolder to Claude or ChatGPT and ask about your shots, tag them, and start exports from a conversation. # Connect AI Assistants Connect StoryFolder to an AI assistant and you can talk to your footage instead of clicking through it. Ask which shots are closeups. Ask it to look at the first three shots and tell you what's happening. Ask it to tag twenty shots at once, or start a PDF storyboard while you keep working. It reads the same library you see on screen, and every change it makes is one you can undo. Setup is one click from inside the app. Open **Preferences → MCP Server**, or click **Connect an AI assistant** in the header, pick your assistant, and press the button. StoryFolder works out everything the assistant needs to know about this computer, sets it up, and then checks the assistant's own settings to confirm it worked — so "connected" means it looked, not that it hoped. Three clients are set up from there: Then restart the assistant. None of them notice a new connection mid-session. ## What the panel shows you It's the same panel whether you open it from Preferences or from the header button, and it tells you where you stand rather than making you guess: | What it says | What it means | | --- | --- | | *Checking whether it's already connected…* | Looking at your assistant's settings | | *…is not detected* | The assistant isn't installed on this computer — there's a link to its install page | | *… is installed. StoryFolder isn't connected yet.* | Ready to go. Press the button | | *Connected* | Set up, and confirmed afterwards rather than assumed | | *Added to … — not active yet* | Claude Desktop only. Correctly set up; restart Claude to switch it on | | *…points somewhere else on this computer* | An older setup, aimed at a folder that has moved. One click repairs it | It also names the three things it found on this computer — **Node**, the **connector** folder, and where your assistant keeps its **settings** — with their real locations. Anything it couldn't find is said plainly rather than guessed at: a plausible wrong answer here produces a setup that silently never starts. If you'd rather do it by hand, the panel never hides the manual route: **Or run the command yourself…** shows the exact command for your machine, ready to copy. ## What you can ask for Here are the kinds of things people actually ask. [Things to try](https://storyfolder.com/help/ai/examples) has more, with the answers they came back with. | You say | What you get | | --- | --- | | "What's in my library?" | Your projects, with shot counts and durations | | "Show me shots 1 to 4 of the hoodie ad" | The actual frames, so it can see them and describe them | | "Which shots have no Shot Size filled in?" | Every gap in your notes, across one project or all of them | | "Tag shots 4 through 9 as B-roll" | Written to all six at once, as a single undo | | "Export a PDF storyboard" | Queued in the background while you keep working | | "Give me the shot list as a spreadsheet" | An XLSX export with timecodes | | "What did you change in here?" | The list of its own edits, so you can roll them back | A few limits worth knowing up front: - It searches **your notes**, not the picture. "Find the closeups" works if you have a field where closeups are recorded. If you don't, ask it to look at the frames and fill that field in — then the search works from then on. - It can see up to **twelve frames at a time**. A forty-shot video takes a few passes. - **StoryFolder has to be open.** The assistant reads the running app, not your files. ## Your footage stays on your computer "AI integration" usually means uploading your media somewhere. This doesn't. The connection runs on your computer and talks to StoryFolder locally. **Your video files are never uploaded.** There's no account to make and no key to paste. Close StoryFolder and the whole thing stops working, which is the behaviour you want. The one thing that does travel is whatever the assistant sends to its own AI service — the same as if you'd typed it into the chat box yourself. So if a shot note is confidential, treat it the way you'd treat anything you paste into a chat. Read-only mode doesn't change this: it stops the assistant writing, not reading.
The technical version The connector reaches StoryFolder over loopback — `127.0.0.1`, the network interface that never leaves the machine. When StoryFolder starts, it writes a small handshake file into your user folder holding the port it picked and a token for that session. The connector reads that file before each request. No StoryFolder is running, no token, nothing works.
## Let it read, but not edit There's a **Read-only** switch. Turn it on and the assistant can read everything and change nothing — not by accident, not by misunderstanding you, and not by being talked into it. The editing tools aren't hidden from it, they're not offered to it at all. With read-only on it can still list your projects, read your shots and notes, look at frames, search your library, and check on exports. What it loses is renaming, tagging, adding note fields, importing and exporting. You'll find the switch during setup on either platform, and you can change your mind later. It's a checkbox, not a commitment. ## Every edit is undoable When the assistant changes something, it goes through the same path the app itself uses. The change lands in StoryFolder's **Version history**, tagged as made by an assistant rather than by you. So you can open Version history, see exactly which entries came from the assistant, and roll back those. Tagging twenty shots counts as one entry and one undo, the same as a multi-select edit you make by hand. You can also ask directly: *"what have you changed in this project?"* ## What you need - **StoryFolder, open.** If it's closed, the assistant tells you so in plain words and nothing else happens. - **A desktop assistant.** StoryFolder sets up three from inside the app: **Claude Desktop**, **Claude Code**, and **ChatGPT Codex**. This runs on your computer, so a browser tab or a phone can't reach it — and it doesn't appear in the ChatGPT desktop app's own chat window. - **Node 18 or newer**, for Claude Code and Codex. Node is a free runtime those two need in order to run the connector, and they don't bring their own copy — StoryFolder finds yours for you, including installs those assistants can't normally see. Claude Desktop's extension needs none of this. - **A couple of minutes.** ## Check it worked The panel tells you when it's connected. To prove it end to end, restart your assistant with StoryFolder open, then ask: > What projects are in my StoryFolder library? You should get your real project names back, with shot counts and durations. If you don't, [troubleshooting](https://storyfolder.com/help/ai/troubleshooting) covers the usual causes. ## Not the same thing as AI Autofill Connecting an assistant is a conversation with your library. **[AI Autofill](https://storyfolder.com/help/ai/autofill)** is a batch job that looks at frames and fills the metadata fields you enabled — a different feature, with its own plan limits, with different privacy consequences. ## Next step → **[Set up Claude Desktop](https://storyfolder.com/help/ai/claude-desktop)**, **[set up Claude Code](https://storyfolder.com/help/ai/claude-code)**, or **[set up ChatGPT](https://storyfolder.com/help/ai/codex)** --- # Contact support URL: https://storyfolder.com/help/troubleshooting/contact-support Section: Troubleshooting Last updated: 2026-10-09 How to reach the StoryFolder team for help. # Contact support If the docs don't cover your question, or you're stuck and need a real human, we're here. We try to reply within one business day — often faster. ## How do I email support? Email us at **[jeff@jeffjassky.com](mailto:jeff@jeffjassky.com)**. Please include: - The **email address** on your StoryFolder account. - A **short description** of what you're trying to do. - **What's not working** (an error message, a screenshot, a video of the issue). - For app problems, **your StoryFolder version** (visible in the **About** window). - For app problems, attached **[logs](https://storyfolder.com/help/troubleshooting/logs)** when possible. The more context up-front, the faster we can help. ## How do I use the in-app help button? In the desktop app's header, click the **Help** button (the **?** icon). It opens a support page authenticated to your account — perfect for sending feature requests or reporting bugs without re-entering your email. ## Is there a live chat? There's a chat widget on every page of [storyfolder.com](https://storyfolder.com). It's not always staffed in real time, but messages route to the same support inbox. For urgent issues, email is the most reliable channel. ## How fast will I get a reply? - **Business / Pro accounts** — within one business day, often the same day. Business accounts get priority queueing. - **Free / Basic accounts** — typically within one business day. ## What about feature requests? We love hearing them. Email **[jeff@jeffjassky.com](mailto:jeff@jeffjassky.com)** with the subject line **"Feature request"** and a quick description of: - What you'd like to do. - Why it would help your work. We read every request and use them to shape the roadmap. We can't promise every feature lands, but yours informs what we build. ## What about bugs? Email us with: - A short description of what you did. - What you expected to happen. - What actually happened. - Whether you can reproduce it. - Your [logs](https://storyfolder.com/help/troubleshooting/logs) if relevant. A screen recording is often the fastest way to demonstrate a tricky bug. ## What about security issues? If you've found a vulnerability — please report it privately to **[jeff@jeffjassky.com](mailto:jeff@jeffjassky.com)** before posting publicly. We take security seriously and will work with you to address the issue and credit you appropriately. ## What about press, partnerships, or sales? Email **[jeff@jeffjassky.com](mailto:jeff@jeffjassky.com)** with a quick note about what you have in mind. Press inquiries get a same-week response. ## Tips for a faster resolution - One issue per email — multiple unrelated questions in one thread can slow things down. - Be specific. *"Export doesn't work"* is hard to debug; *"Clip export fails halfway with 'disk full' on my Pro plan, here are my logs"* gets fixed faster. - Tell us what you've already tried. - Send screenshots or screen recordings whenever practical. We're rooting for you. Don't suffer in silence — we'd rather hear about a small problem than have you frustrated. --- # Index URL: https://storyfolder.com/help Section: Help home Last updated: 2026-10-09
## Can't find what you're looking for? Search the docs from the top of the page, or **[contact us directly](https://storyfolder.com/help/troubleshooting/contact-support)** — a real person will get back to you within one business day.
--- # Image pipeline: automatic responsive + WebP variants for every image in `public/` URL: https://storyfolder.com/help/plans/image-pipeline Section: plans Last updated: 2026-10-09 # Image pipeline: automatic responsive + WebP variants for every image in `public/` Status: implementation plan, 2026-09-09. Branch `feat/image-pipeline`, worktree `/Users/jeffjassky/Projects/scenedetect-images`. ## Goal Every `.jpg`/`.jpeg`/`.png` under `public/` automatically gets a ladder of resized variants plus WebP equivalents, with zero manual steps, and every place that renders an image (marketing components, blog heroes, blog body HTML) serves that ladder. Free (no paid CDN features). Incremental: only regenerate what changed. ## Non-goals - No change to OG image generation (`server/router/og-image.js`). Untouched. - No change to serving/caching (`server/main.js` Cache-Control is already done). - No AVIF. WebP only. - No SVG/GIF/MP4 processing. ## Design in one paragraph One script (`scripts/images.js`) walks `public/`, hashes each source image, and writes `@w` + `@w.webp` beside it for each rung of the ladder, skipping anything whose hash and outputs are already present. It writes `public/image-manifest.json` describing what exists. Derived files and the manifest are **gitignored** (regenerated on every `yarn build`/`yarn serve` via `prebuild`/`preserve` hooks, and in CI with an `actions/cache` so steady-state runs take seconds). Three consumers read the manifest: `ResponsiveImage.vue`, `Capture.vue`, and an isomorphic helper `upgradeImages(html, manifest)` that rewrites `` tags in blog body HTML into `` — used both server-side (`blog-meta-inject.js`) and client-side (`PageBlogArticle.vue`). ## Fixed contracts (every agent depends on these — do not deviate) ### Derived file naming For source `/blog-media/x/hero.jpg` (width W): - Rungs: `[600, 1000, 1600]` filtered to `< W`, plus `min(W, 1600)` appended if not already present. Examples: W=2400 → `[600,1000,1600]`; W=1600 → `[600,1000,1600]`; W=900 → `[600,900]`; W=500 → `[500]`; W=1437 → `[600,1000,1437]`. - For each rung N: `/blog-media/x/hero@w.jpg` (same format as source; PNG stays PNG) and `/blog-media/x/hero@w.webp`. - Never upscale. Never modify the source file. - The existing convention is exactly this naming (`@w600/@w1000/@w1600`), and 38 database `featureImage` values point at `…@w1600.jpg`, so the rung set and the `@w` naming must be preserved exactly. ### Manifest: `public/image-manifest.json` ```json { "version": 1, "images": { "/blog-media/x/hero.jpg": { "width": 2400, "height": 1260, "ext": ".jpg", "widths": [600, 1000, 1600], "webp": true } } } ``` - Keys are site-absolute URL paths (leading `/`, forward slashes, relative to `public/`). - `version` is the script's `SCRIPT_VERSION` constant. If it changes, everything regenerates. - Keys are sorted so the file diff is stable. - Source sha1 hashes are NOT in the manifest (it is inlined into the client bundle; 647 hashes cost 18 KB gzipped). They live in a sidecar `public/.image-cache.json` (`{version, hashes: {key: sha1}}`) that only `scripts/images.js` reads. - Consumers must treat a missing key as "no variants, use the plain `src`". ### Client-side manifest import Vue components import it as `import manifest from '@/../public/image-manifest.json';` (webpack resolves `@` to `src/`). The `prebuild`/`preserve` hooks guarantee it exists before webpack runs. Do not add fallbacks for a missing file in components. ### Server-side manifest load `server/utils/upgrade-images.js` exports `loadManifest(distDir)` which reads `/image-manifest.json` once, returns `{version, images}` and returns `{version: 0, images: {}}` (never throws) if missing or unparsable. ## Work packages Four packages, disjoint files, run in parallel. **Agents do not commit.** The reviewer commits after review. Agents run `yarn test` (node --test) freely. Agents must NOT run `yarn build`, `yarn serve` or `yarn prerender` — the reviewer does that once at the end. ### WP-A: generator script (owner: agent A) Files: `scripts/images.js` (new), `scripts/images.test.js` (new), `package.json` (scripts only), `.gitignore`, `scripts/set-feature-images.js` (one error-message line), and the git index for `public/**/*@w*` (see step 5). 1. `scripts/images.js`, CommonJS, requires only `sharp`, `node:fs`, `node:path`, `node:crypto`, `node:os`. Export `run({ publicDir, log, concurrency })` returning `{ scanned, generated, skipped, removed, manifestPath }`. CLI guard `if (require.main === module)` runs `run({ publicDir: path.join(__dirname, '..', 'public') })` and prints one summary line; `--verbose` prints per-file lines; exits non-zero on any sharp error. 2. Algorithm: - Walk `publicDir` recursively. Source = file matching `/\.(jpe?g|png)$/i` whose basename does NOT match `/@w\d+\.[a-z0-9]+$/i`. Skip `.DS_Store`, skip nothing else. - Load existing manifest if present (tolerate missing/corrupt → empty). If `manifest.version !== SCRIPT_VERSION`, treat as empty. - For each source: `hash = sha1(bytes)`. Compute expected rung list from the source width (read via `sharp(file).metadata()` — only when needed; if the manifest entry hash matches, reuse its stored `width`/`height`/`widths` and only stat the expected outputs). If hash matches AND every expected output file exists → `skipped++`, keep entry. Otherwise generate all outputs with sharp (`.resize({ width: N, withoutEnlargement: true })`; jpeg `{ quality: 80, mozjpeg: true }`; png `{ compressionLevel: 9 }`; webp `{ quality: 80 }`), strip metadata (sharp default), write entry, `generated++`. - Concurrency: a simple promise pool of `os.cpus().length` (min 2). - Orphans: any file in `publicDir` matching `/@w\d+\.(jpe?g|png|webp)$/i` whose source (strip `@w\d+`; for `.webp` try `.jpg`, `.jpeg`, `.png` in that order) no longer exists → delete, `removed++`. Manifest entries whose source is gone → drop. - Write manifest (2-space JSON, sorted keys) only if its content changed. 3. `scripts/images.test.js` (node:test, `.js` so the repo's `yarn test` glob picks it up): - Uses `fs.mkdtempSync` and sharp to create fixtures: a 2400×1260 jpg, a 900×600 png, a 400×300 jpg, and a stray orphan `ghost@w600.jpg` with no source. - Run once: assert outputs exactly `[600,1000,1600]` jpg+webp for the first; `[600,900]` png+webp for the second; `[400]` for the third; orphan removed; manifest keys/widths correct; `hash` is 40 hex chars. - Run twice: assert `generated === 0`, `skipped === 3`, and output mtimes unchanged. - Modify the 900px png (rewrite with different pixels), run: `generated === 1`. - Delete the 400px source, run: its variants removed, manifest entry gone. - Delete one output file only, run: that source regenerates (`generated === 1`). 4. `package.json` scripts: add `"images": "node scripts/images.js"`, `"prebuild": "yarn images"`, `"preserve": "yarn images"`. Touch nothing else in package.json. 5. `.gitignore` — append: ``` # Derived image variants + manifest. Regenerated by `yarn images` (scripts/images.js), # which also runs before every build/serve. Sources stay committed; these never are. public/**/*@w[0-9]*.* public/image-manifest.json ``` Then `git rm -r --cached --quiet` every currently tracked file matching `public/**/*@w*` (291 files: 202 jpg, 89 png). Leave them on disk. Confirm with `git ls-files 'public/**/*@w*' | wc -l` → 0. 6. `scripts/set-feature-images.js`: its "Not on disk, refusing to wire" error should add one line: `Run \`yarn images\` first — @w variants are generated, not committed.` 7. Run `node scripts/images.js --verbose` once in the worktree so the manifest and the full ladder exist for the reviewer. Report the summary line and wall time in your final message. Then run it a second time and report that summary line too (expect generated 0). Completion criteria: `yarn test` passes including the new test; second run of the script reports `generated: 0`; `git status` shows the 291 removals staged and no derived files untracked; `public/image-manifest.json` exists and is gitignored (`git check-ignore` confirms). ### WP-B: blog body `` → `` (owner: agent B) Files: `server/utils/upgrade-images.js` (new), `server/utils/upgrade-images.test.js` (new), `server/middlewares/blog-meta-inject.js` (call site), `src/pages/PageBlogArticle.vue` (call site). 1. `server/utils/upgrade-images.js`, CommonJS, **no dependencies, no Node built-ins in the exported transform** (it is bundled into the browser by webpack). Exports: - `upgradeImages(html, manifest, { sizes } = {})` → string. - `srcsetFor(entry, base, ext)` and `webpSrcsetFor(entry, base)` helpers (exported for tests and for the Vue components to stay consistent). - `loadManifest(distDir)` — the only function that uses `fs`/`path`; `require` them **inside** the function so webpack's browser bundle does not pull them in. - `DEFAULT_SIZES = '(min-width: 1000px) 940px, 100vw'`. 2. `upgradeImages` behaviour: - Find every `` tag (`/]*>/gi`). Parse attributes with a tolerant regex (double-quoted, single-quoted, unquoted, bare). If parsing fails, return the tag unchanged. - Skip if the tag has `data-optimized`. - Look up `attrs.src` in `manifest.images`. If absent, or `widths` is empty → unchanged. - Otherwise emit: ```html ``` where the inner `` keeps every original attribute except `srcset` and `sizes`, which are replaced by the manifest-derived jpg/png srcset and the resolved `sizes` (`attrs.sizes` if present, else the option, else `DEFAULT_SIZES`). If the original has no `width`/`height`, add them from the manifest entry. Attribute order: original order, then the added ones. - ``/`` derive from `src` exactly as `ResponsiveImage.vue` does today: `/^(.*)(\.[a-zA-Z0-9]+)$/`. - Never throws. If `manifest` is falsy or has no `images` → return `html` unchanged. 3. Tests (`node:test`): empty manifest passthrough; unknown src passthrough; known src → picture with correct webp/jpg srcsets, original alt/class/loading preserved, `sizes` default applied; existing Ghost `srcset`/`sizes` replaced; `width`/`height` added when missing and preserved when present; idempotent (running twice yields identical output); PNG source keeps `.png` fallback srcset; malformed tag left alone; `loadManifest` on a missing dir returns `{version: 0, images: {}}`. 4. `server/middlewares/blog-meta-inject.js`: load the manifest once at module scope with `loadManifest(path.join(__dirname, '..', '..', 'dist'))` (same `dist` resolution `server/router/og-image.js` line ~99 uses) and wrap the body at the single interpolation site (`${article.body}` in the article body builder, ~line 185) as `${upgradeImages(article.body, manifest)}`. Do not touch anything else in that file. Read the file header first; it is dense and deliberate. 5. `src/pages/PageBlogArticle.vue`: `import { upgradeImages } from '../../server/utils/upgrade-images';` and `import manifest from '@/../public/image-manifest.json';`. At the END of the existing `processedBody()` computed (after all existing regex passes, before the `return`), add `html = upgradeImages(html, manifest);`. Nothing else changes. Completion criteria: `yarn test` passes with the new test file; `grep -n upgradeImages server/middlewares/blog-meta-inject.js src/pages/PageBlogArticle.vue` shows exactly one call site each; the transform module has no top-level `require` of Node built-ins. ### WP-C: components (owner: agent C) Files: `src/components/atoms/ResponsiveImage.vue`, `src/components/marketing/sections/appframe/Capture.vue`. Both import `manifest from '@/../public/image-manifest.json'` and `{ srcsetFor, webpSrcsetFor } from '../../../server/utils/upgrade-images'` (adjust relative depth per file; **do not** add a webpack alias). WP-B owns that helper and its signature is fixed above: `srcsetFor(entry, base, ext)` returns the jpg/png srcset string, `webpSrcsetFor(entry, base)` the webp one, both from `entry.widths`. Until WP-B lands, write against that contract; do not stub it in your files. 1. `ResponsiveImage.vue`: - Root becomes `` containing `` then the existing `` unchanged in attributes. - New computed `entry` = `manifest.images[this.src] || null`. - `srcsetAttr`: if `entry` and `entry.widths.length` → `srcsetFor(entry, base, ext)`; else keep the current behaviour (derive from the `widths` prop) so any image not yet in the manifest renders exactly as today. - `webpSrcset`: `entry && entry.webp ? webpSrcsetFor(entry, base) : ''`. - `resolvedWidth`/`resolvedHeight`: prop if given, else `entry.width`/`entry.height`, else null. - Styles: keep `.responsive-image` rules on the ``; add `.responsive-image-picture { display: block; }`. - Keep every existing prop, comment and the `fetchPriorityAttr` logic verbatim. 2. `Capture.vue`: - Add `` **after** the existing `mobileSrc` `` and **before** `CaptureImage`/``. Order matters: the browser takes the first matching ``, and the mobile crop must win below 600px. - Computed `entry` = `manifest.images[media.src] || null`. - `srcset`: if `entry` and `entry.widths.length` → `srcsetFor(...)`; else current logic (from `media.widths`), unchanged. - `webpSrcset` as above. Also add `entry`-derived `width`/`height` fallbacks on the `` only when `media.width`/`media.height` are absent. - Keep the header comment; append one sentence explaining the manifest-driven webp source. Completion criteria: `yarn lint --no-fix` reports no errors for the two files (`npx vue-cli-service lint --no-fix src/components/atoms/ResponsiveImage.vue src/components/marketing/sections/appframe/Capture.vue`); both files still compile with `node -e "require('vue-template-compiler').parseComponent(require('fs').readFileSync(process.argv[1],'utf8'))"` without throwing; no other files changed. ### WP-D: CI (owner: agent D) File: `.github/workflows/aws.yml` only. 1. After the `Checkout` step and before `Make envfile`, add: ```yaml - name: Use Node 20 uses: actions/setup-node@v4 with: node-version: 20 cache: yarn # Derived image variants (see scripts/images.js and docs/plans/image-pipeline.md) # are gitignored and regenerated here. The cache holds last run's outputs so # only sources that changed since then are re-encoded. The key hashes the # sources and the script; restore-keys falls back to the newest cache so a # miss on the exact key still restores everything except the changed files. - name: Restore derived image variants uses: actions/cache@v4 with: path: | public/**/*@w[0-9]*.* public/image-manifest.json key: images-v1-${{ hashFiles('public/**/*.jpg', 'public/**/*.jpeg', 'public/**/*.png', 'scripts/images.js') }} restore-keys: | images-v1- - name: Install dependencies run: YOUTUBE_DL_SKIP_PYTHON_CHECK=1 yarn install --frozen-lockfile --ignore-engines - name: Generate image variants run: yarn images --verbose ``` Mirror the exact `yarn install` flags the Dockerfile uses (they are quoted above). 2. Purge step (last step, "Purge changed media from Cloudflare's cache"): derived variants are no longer in git, so `git diff -- public/` will never list them. After `CHANGED` is computed, expand it: for each changed path that is a source image (`.jpg/.jpeg/.png`, not `@w`), read `public/image-manifest.json` and append each `@w` and `@w.webp` from that entry's `widths`. Do this in the existing Node `fetch` block (it already has the list in memory) rather than in bash. Keep the 30-per-request batching. Keep the secrets-unset early exit. Keep every existing comment. 3. Validate: `python3 -c "import yaml; yaml.safe_load(open('.github/workflows/aws.yml'))"`. Also run `node --check` on the extracted Node block if you touched it (extract to a temp file under the scratchpad). Completion criteria: YAML parses; the diff touches only the four new steps and the purge step's Node block; no `secrets.*` appears in any `if:`. ## Reviewer checklist (after all four land) 1. `yarn test` green. 2. `node scripts/images.js` second run → `generated: 0`, under 15 s. 3. `yarn build` succeeds (runs `prebuild` → images → vue-cli build). Then: - `dist/image-manifest.json` exists. - `grep -c 'image/webp' dist/index.html` is irrelevant (SPA shell); instead compile-check by grepping the built JS for `image/webp` and `@w`. 4. Every `featureImage` in Mongo that ends in `@wN.ext` has that file under `public/` after generation (script in reviewer's notes). 5. Server SSR: `node -e` require `blog-meta-inject`'s body builder with a fake article and a loaded manifest and confirm `` appears with both srcsets. 6. `git status`: only intended files; 291 deletions staged; no derived files tracked. 7. Commit on `feat/image-pipeline`, merge `--no-ff` into `development`, push. 8. Post-deploy: `curl -sI https://storyfolder.com/blog-media//hero@w1000.webp` → 200, `content-type: image/webp`, `cf-cache-status` HIT on second request. ## WP-E: coverage — heroes, captures, cards, section fallbacks (added after review) The first four packages covered blog bodies and `Capture`'s fixture branch. An audit of the live pages found the actual LCP elements still bypass the manifest, plus one bug. Files: `server/utils/upgrade-images.js` (+test), `src/components/marketing/CaptureImage.vue`, `src/components/marketing/sections/appframe/Capture.vue`, `src/components/atoms/ResponsiveImage.vue`, `src/pages/PageBlogArticle.vue`, `src/pages/PageBlog.vue`, and the section components listed in step 5. 1. **`resolveEntry(manifest, src)`** exported from `upgrade-images.js`: returns `{ entry, base, ext } | null`. Looks up `src` in `manifest.images`; if absent and `src` matches `/^(.*)@w\d+(\.[a-zA-Z0-9]+)$/`, looks up `` instead. `base`/`ext` are always the *source's*. `upgradeImages` and both Vue components use it, so the derived-path handling lives in one place (37 `Article.featureImage` values are `…/hero@w1600.jpg`). Tests: direct hit, derived hit, miss, malformed. 2. **Bug fix in `Capture.vue`.** The webp `` is keyed on `media.src`, the *fallback* image; when `media.capture` is set that source precedes `CaptureImage`, so the browser shows the fallback's webp instead of the app capture. Fix: `webpSrcset` returns `''` when `media.capture` is truthy. `CaptureImage` handles its own webp (next step). 3. **`CaptureImage.vue` becomes manifest-aware.** Root becomes ``; a webp `` and an `` are emitted only when `resolveEntry(manifest, captureSrc)` hits and the component is NOT in `usingFallback`. In fallback state render exactly today's plain `` so the `@error` → fallback flow is untouched. Keep every prop, `data-capture*` attribute, class, `eager` behaviour and comment. Width/height: prop, else entry. `sizes` prop (String, default `'(min-width: 1000px) 560px, 100vw'`) added and passed to both. 4. **Blog hero and cards.** `PageBlogArticle.vue` line ~42: replace the raw `` with `` (register the component). `PageBlog.vue` lines ~57 and ~83: `` (lazy default). `ResponsiveImage` must resolve derived srcs via `resolveEntry`; when the manifest misses AND `src` is a derived path, emit no srcset at all (today it would build `hero@w1600@w600.jpg`). Check the `.feature-image img` and `.card-image-link img` LESS still applies (they target `img`, which is still inside the picture — confirm, don't restyle). 5. **Section fallback branches → `ResponsiveImage`.** In `SplitA`, `AnnotatedA`, `AnnotatedB`, `SeamA`, `HeroThumbnailWall`, `WallLifted`, `ArtifactFan`, `AutofillBoard`: every raw `` whose `src` is a `/marketing-media/…` or `/blog-media/…` path becomes ``, passing through `alt`, `width`, `height`, `sizes`, `loading`/`fetchpriority` semantics (`HeroThumbnailWall`'s hero is `loading="eager"`). Where a component computes its own `srcset` from `widths`, delete that computed; `ResponsiveImage` derives it. Do NOT touch ``s whose src is an `/api/…` URL, an inline SVG, or a data URI. Keep all classes on the `` by passing them via `img-class` — add that String prop to `ResponsiveImage` and bind it as `:class="['responsive-image', imgClass]"` on the `` — because several of these components' LESS rules target a class on the `` itself. 6. **Verification**: `yarn test` green; lint of every touched `.vue` clean apart from the pre-existing `vue/no-v-html` warning; template-compile check on each; `yarn build` green (reviewer runs it); `grep -rn '`) plus server-injected JSON-LD. Every non-JS crawler (Bing, PerplexityBot, GPTBot, ClaudeBot) sees no homepage copy at all. The other 14 marketing routes are already snapshotted at Docker-build time by `scripts/prerender-marketing.mjs`; this plan extends that to `/` **generically** — no per-route configuration anywhere. ## Current blockers (all verified) 1. `isReady()` in `scripts/prerender-marketing.mjs` requires the captured `` to differ from the shell's. `public/index.html`'s title is exactly the homepage's title, so `/` can never pass. It also requires a `<script data-managed="pageHead">`, which `PageHome.vue` deliberately does not declare. 2. `snapshotRoute()` writes to `dist/<route>/index.html`; for `/` that is `dist/index.html`, i.e. it would overwrite the SPA shell every other route depends on. 3. `server/middlewares/homepage-meta-inject.js` answers `GET /` before the generic prerendered-file handler in `server/main.js` and always sends the bare shell. 4. `injectIntoHead()` in that middleware strips **every** `ld+json` script, which would delete any schema a prerendered page carried. 5. Prerendered pages capture `Reveal.vue`'s `sf-reveal--armed` (CSS-hidden) state, so most sections ship CSS-hidden to non-JS crawlers. `Reveal.vue` hides nothing under `prefers-reduced-motion`. ## Work packages ### WP-A — prerender script + ready signal + router flag Files: `src/components/mixins/pageHeadMixin.js`, `scripts/prerender-marketing.mjs`, `server/router/spa-routes.js`, `server/router/sitemap-routes.test.js`, `src/router.js`, new `scripts/prerender-marketing.test.js`. ### WP-B — homepage middleware serves the snapshot Files: `server/middlewares/homepage-meta-inject.js`, `server/middlewares/homepage-meta-inject.test.js`. WP-A and WP-B touch disjoint files and can land in parallel. They share one contract: > **Contract:** `server/router/spa-routes.js` exports `prerenderOutDir(route)` returning the > directory name (relative to `dist/`) that holds `index.html` for a prerendered route. > `prerenderOutDir('/') === 'home'`; every other route returns `route` without its leading > slash (e.g. `'/use-cases/footage-library'` → `'use-cases/footage-library'`). > WP-A implements it. WP-B **must** consume it (not hardcode `'home'`). If WP-B's tests run > before WP-A lands, WP-B stubs it in the test only. --- # Free Video-to-PDF Storyboard Creator URL: https://storyfolder.com/blog/video-to-pdf-storyboard Author: StoryFolder Published: 2026-09-15 Tags: Video outputs, Storyboard PDF Reading time: 7 min Turn a video into Storyboard.pdf: detect shots, choose poster frames, add your own notes, control shot scope, and export free within current limits. *Last updated: 10 September 2026.* Import the video into [StoryFolder](https://storyfolder.com/), let it detect the shots, pick the frame that stands for each one, type your notes, and export `Storyboard.pdf`. A representative image is chosen for every shot automatically and you can change any of them. PDF export is free on every plan, within the free plan's 6 boards of 50 shots each; sign in before you export and the pages print unwatermarked. ![](/blog-media/video-to-pdf-storyboard/hero-storyboard@w1600.png) ## What does the PDF contain? One card per included shot, in order. Each card prints the shot's chosen image, an attributes strip carrying `Shot` number, `Start` timecode, `Duration` to one decimal, and the inclusive frame range, then whichever of your own shot fields you left visible, printed under it in full. Any of those four attributes can be switched off. Where the video has a transcript, the words spoken over that shot can print on the card too. Pages are US Letter, portrait. The file is called `Storyboard.pdf`. You do not choose the filename, the page size, the layout or the branding. Nobody can comment inside the file, and publishing the board is not the way round that: the published page is view-only too. The PDF is the copy that gets printed and filed. ## How do you import a video and detect its shots? Create a board and drag the file in. Detection runs on import, and the board fills with one card per detected shot, each carrying its own image. A local `.mov` or `.mp4` works great. Scroll the board before you annotate anything. You are looking for the places the detector was wrong: a dissolve that slid past, or a cut between two similar angles that went unnoticed. On a 461-shot board that is a handful of cards, not a review of all of them. Correcting boundaries is the same pass whatever you are exporting, and [how to make a shot list from a video that already exists](https://storyfolder.com/blog/how-to-make-a-shot-list-from-an-existing-video) covers it in full. ## How do you choose the poster frame for each shot? Right-click the frame you want and choose **Set Poster Frame**. That frame becomes the shot's image in the PDF. The automatic choice is usually fine, so this is a fix for the ones that are not: a card that landed on a blur, or on the half second before someone turns to camera. On a long board, set posters on the shots the reader will actually stop at. **Save Frame…** writes that one frame to disk. **Copy Frame Image** puts it on the clipboard for a deck or an email. Neither changes the shot's poster, and nothing in that menu alters the source video. The poster you set is also the image an Images export writes when it is set to one frame per shot. ![](/blog-media/video-to-pdf-storyboard/set-poster-frame@w1600.png) ## How do you add your own notes before the PDF? Open a shot and type into its fields. You create the fields yourself, in six types: Text, Tag, Dropdown, Checkbox, Rating and Number. Custom fields are included on every plan, and only the fields you leave visible are printed. What to write depends on who opens the file. Why the shot is there. The continuity problem you spotted. The change you want in the next pass. What the client said on the call. Pick one convention for the board and hold it, so the printed pages read consistently rather than shot by shot. AI Autofill fills only the fields you switch on, and every field starts off. It is a cloud call to StoryFolder's server and a hosted vision model, with no restore point. Every plan includes it: free covers your account's first 100 shots, Pro is unlimited. See [the AI Autofill guide](https://storyfolder.com/blog/ai-autofill). Read the notes on the shots that carry the point, and on the first and last pages, the way the recipient will. A line you typed for yourself prints for whoever opens the file. ## How do you leave shots out of the PDF? The **favourites** and **hidden** toggles in the export settings decide the scope. There is no separate list of shots to tick at export time. Mark the keepers as favourites and set the export to favourites only, or hide the ones nobody needs and leave hidden off. A search query or filter narrowing the board does not carry over to the export — only favourites and hidden do. Check the scope after you set it: favourites only decides on its own, and with it off, hidden shots stay out unless you switch the hidden toggle on. ## How do you export Storyboard.pdf? Turn on the **Storyboard** row in the export panel, the one described as "PDF storyboard with notes". Pick a destination folder and start the export. Progress reports per task while it runs and you can cancel it. The file lands in the destination as `Storyboard.pdf`. Open it and read three pages before it goes anywhere: the first included shot, one from the middle, and the last. That catches a poster you meant to change and a field you meant to hide, the two that usually go wrong. ![](/blog-media/video-to-pdf-storyboard/pdf-export-state@w1600.png) ![](/blog-media/video-to-pdf-storyboard/finished-pdf-page@w1600.png) ## What happens if you also turn on a dense Images mode? Switching **Images** on opens a sub-panel with three modes: **One frame per shot**, **Every video frame**, and **Every N frames per shot**. The dense two write PNG files named for the source frame number, like `Frame-000842.png`. The PDF prints one poster per included shot whichever mode is selected, and a spreadsheet keeps one poster per row. With the Storyboard turned on, the `Shot-*.png` poster set is written alongside the dense frames; only when Images is the one output selected does a dense mode write `Frame-*.png` and nothing else. The counts beside each mode describe the shots currently included, not any product limit. [Extracting frames from a video](/blog/extract-frames-from-video/) covers the modes and what N means. ![](/blog-media/video-to-pdf-storyboard/images-modes@w1600.png) ## What can you make on the free plan? Storyboard PDF export and Images export are included on every plan, and so are the custom fields that become the notes on the page. The free plan holds 6 boards of 50 shots each. The 50 is per board, not per account, so six separate 50-shot boards is what the free plan gives you. A short that detects into 461 shots is past that in one board. Current plans and limits are on the [pricing page](https://storyfolder.com/pricing); check it rather than budgeting against a number in an article. ## What should you check before you send the PDF? The shots, the posters, the notes, the scope, and then the file itself. It takes a minute. - The board fits the plan you are on. - Detection has finished and you have scrolled the board for wrong boundaries. - The shots that carry the point have posters you chose. - Notes are written for the person opening the PDF, with nothing internal left in. - Favourites and hidden toggles add up to the scope you want; an active search or filter does not narrow the export. - Images mode settings are not being mistaken for PDF page content. - Storyboard.pdf opens, and the first, middle and last pages look right. ## FAQ **How do I convert a video to a PDF storyboard?** Drag a local `.mov` or `.mp4` into a board and turn on the **Storyboard** output; what lands in your destination folder is `Storyboard.pdf`. Shots are detected on import, so what you add between those two steps is your choice of image for each shot and the notes you want printed. **Is the video-to-PDF storyboard creator free?** Yes. Storyboard PDF export is included on every plan, and the free plan holds 6 boards of 50 shots each. Check [pricing](https://storyfolder.com/pricing) for larger work. **Does the PDF include every frame of the video?** No. It prints one chosen image per included shot, so a 461-shot board yields 461 shot cards rather than tens of thousands of frames. **What page size is the storyboard PDF?** US Letter, portrait. There is no page-size or orientation control to change it. **Will a hidden shot show up in the PDF?** Hidden shots are left out unless you switch the hidden toggle on, and that toggle starts off. The exception is favourites only, which decides the scope by itself, so a shot that is both hidden and favourited still prints. **Can I drop the timecode and frame numbers from the cards?** Yes. `Shot`, `Start`, `Duration` and `Frames` each carry their own switch, so a card can print the shot number alone. **What file does StoryFolder create?** `Storyboard.pdf`, in the destination folder you picked. The name is fixed. **Can I put two boards into one PDF?** No. The export runs on one board and writes one `Storyboard.pdf`, so put the shots that belong together on the same board before you export. --- # How to Extract Frames from Video: Single Images, Every Frame, or Intervals URL: https://storyfolder.com/blog/extract-frames-from-video Author: StoryFolder Published: 2026-09-15 Tags: Video outputs, Frame extraction Reading time: 8 min Extract one video frame, one poster per shot, every frame, or every Nth frame as PNGs. Preview counts and control shot scope in StoryFolder. *Last updated: 10 September 2026.* StoryFolder detects the shots in a video automatically, and there are four ways to pull frames out afterwards. Right-click a frame on the storyboard to save that one still to disk, or to put a copy of it on the clipboard. Turn on **Images** and keep **One frame per shot** to write one PNG per included shot. Choose **Every video frame** for a complete PNG sequence. Choose **Every N frames per shot** for a sampled one. The path is the same every time: import, review the detected shots, pick a mode, set the favourites and hidden scope, read the count on the radio label, export. Interval counting restarts inside every shot. Frame filenames are built from frame numbers counted in the file you imported, so an every-frame export carries no original camera filenames and no source timecode. Detection is automatic and it is an algorithm, so scroll the board and fix anything obviously wrong before you commit to a big export. ## Which frame-extraction method matches the job? Right-click a storyboard frame and **Save Frame…** writes that one still to disk, while **Copy Frame Image** puts it on the clipboard. Under **Images**, **One frame per shot** writes `Shot-1.png` onward, one per included shot, **Every video frame** writes a `Frame-*.png` for every frame in every included shot, and **Every N frames per shot** writes a sampled `Frame-*.png` sequence. Need StoryFolder action Output One exact still Hover the frame you want, right-click, then choose **Save Frame…** One saved frame image Put a still on the clipboard Hover, right-click, then choose **Copy Frame Image** One copied image Choose the representative still for a shot Right-click and choose **Set Poster Frame** That shot's poster for later exports One representative image for every included shot Turn on **Images** and choose **One frame per shot** `Shot-1.png`, `Shot-2.png`, and so on Complete image sequence Choose **Every video frame** Source-frame-numbered `Frame-*.png` files Smaller, regular sample Choose **Every N frames per shot** and enter N An approximate-count source-frame sequence ## Import the video and let StoryFolder detect the shots Open or create a board, import the video, and wait for shot detection to finish before you touch the export settings. Scroll the board and look at anything questionable, then fix those boundaries. On a 461-shot board you are not choosing 461 posters by hand. Leave the automatic posters alone and set one only on the handful of shots where the automatic frame lands on a blur or a transition. If you want the boundaries themselves in a document, the guide to [software that breaks a video into individual shots with timings](https://storyfolder.com/blog/what-software-breaks-a-video-into-individual-shots-with-timings) covers detection and correction properly. ## Save, copy, or set one exact frame from the storyboard - Hover along a shot in the storyboard until the frame you want is showing. - Right-click, and pick the action that matches what happens next: **Save Frame…** writes that one frame to a location you choose. - **Copy Frame Image** puts it on the clipboard for a chat message or a deck. - **Set Poster Frame** makes that frame the shot's representative still, which is what the storyboard PDF and the spreadsheet thumbnail then use. All three act on the single frame under the pointer, so they appear only when one shot is selected. Select several shots and the frame group drops out of the menu. ## Export one PNG poster for every included shot Turn on **Images**, leave the mode on **One frame per shot**, confirm your scope, and export. You get `Shot-1.png`, `Shot-2.png` and so on, numbered 1 upward in board order across the included shots. These are real PNG files, and they are the same images the [video storyboard PDF](https://storyfolder.com/blog/video-to-pdf-storyboard/) and the spreadsheet embed. It is the mode to use for a contact sheet or a shot inventory, or anything where one image per shot is the point and frame-level coverage would just be noise. The same poster set is what you are looking at when you [make a shot list from an existing video](https://storyfolder.com/blog/how-to-make-a-shot-list-from-an-existing-video) or [convert a video to a storyboard automatically](https://storyfolder.com/blog/video-to-storyboard-converter-free). Settings live with the project, so a board you come back to next week is still in the mode you left it in. Existing projects and fresh installs both start in **One frame per shot**. ## How do you export every frame as a numbered PNG sequence? Turn on **Images**, select **Every video frame**, look at the count, then check you have somewhere to put it. This writes every frame of every included shot as its own PNG, named by its source frame number. The numbering is zero-padded: `Frame-000842.png` is source frame 842. Because included shots cover non-overlapping frame ranges, two shots can never claim the same filename, and the sequence stays in source order in any file browser. The number is the frame's position in the video you imported, which is also why a rendered file cannot give you the [original camera file name](https://storyfolder.com/blog/export-shot-list-with-original-file-name) or a source timecode in the filename. In the project in the screenshot under the next heading, 96 shots produce 96 posters and 78,545 individual frames. Reach for this mode when the job genuinely needs every frame, such as feeding a frame-by-frame process downstream. ## Where does the counting restart when you sample every N frames? At every shot boundary. Select **Every N frames per shot**, type an integer, and sampling starts fresh inside each included shot: the shot's first frame, then every Nth frame after that, then the next shot begins the pattern again at its own first frame. N is a frame count; 13 means every thirteenth frame. The input holds at a minimum of 1, so there is no zero or negative interval to worry about. A smaller N gives you more files, a larger N fewer, and the label updates as you type so you can settle on a number by watching the count. ![](/blog-media/extract-frames-from-video/images-modes@w1600.png) *One real project. This board offers 96 posters, 78,545 frames at every video frame, and roughly 6,050 at an interval of 13.* ## Which shots end up in the export? The ones the **favourites** and **hidden** toggles include, so set those before you trust a count or start an export. Every Images mode, poster and frame sequence alike, works over the included set. There is no second shot-picker inside the export panel, and a search query or filter you have active on the board does not narrow it — that's a way of looking, not a way of exporting. So when a count looks far higher or far lower than you expected, that is the first place to look. Mark nine shots as favourites, set the export to favourites only, and the frame count drops to those nine shots' worth of frames, with the posters coming out as `Shot-1.png` to `Shot-9.png`. ## Which files does each output combination create? With **Images** as the only output you have switched on, a frame-sequence export writes `Frame-*.png` files and nothing else; switch on any additional output and the `Shot-*.png` poster set is written alongside them. Export Files written Every video frame, Images only `Frame-*.png` and nothing else Every video frame, Images plus PDF `Frame-*.png` and the `Shot-*.png` poster set The other outputs need those posters: a [shot list spreadsheet with durations](https://storyfolder.com/blog/export-shot-list-spreadsheet-with-durations) embeds one poster per row, and a PDF prints one poster per shot. Selecting a frame-sequence mode does not turn the PDF into a flipbook of every frame. ## Check the count, disk space, progress and cancellation before a large export Every mode's radio label carries its own frame count over the included shots, and interval mode shows an approximate one. The numbers move as you change the mode, the interval or the scope. My own routine before a large export: - Before you set the real scope, favourite two or three shots on their own, set the export to favourites only, and run it. - Open the output folder and look at the filenames. - Now set the favourites and hidden scope you want for the real job, and read the count on the radio label for the mode you picked. - Run it. StoryFolder also checks the destination. When a realistic estimate says a frame sequence will not fit on the drive you picked, it refuses to queue the job and tells you roughly how many frames and how many gigabytes it was going to write, so you can pick another drive or narrow the scope. Where the estimate is uncertain, the export runs, so treat it as a check that catches the obvious cases. Exports show progress and can be cancelled part way. Steps 1 and 2 cost thirty seconds, against a job that could otherwise write tens of thousands of files you did not want. Images and storyboard export are included on every plan, and the free plan gives you 6 boards of 50 shots to work in. [Download StoryFolder](https://storyfolder.com/) and try a mode on one board before you commit a big one. ## Frequently asked questions ### Can I extract one exact frame from a video? Yes. Hover the frame in the storyboard, right-click, and use **Save Frame…** to write it to disk or **Copy Frame Image** to put it on the clipboard. ### Can StoryFolder export every frame from a video? Yes, for the shots included in the export, through **Images → Every video frame**. The files are PNGs, the radio label shows the count before you start, and the export reports progress and can be cancelled. ### What does "Every N frames per shot" mean? The first frame of each included shot, then every Nth frame after it, restarting at each shot boundary. N is a whole number of at least 1 and counts frames, so 13 means every thirteenth frame. ### How are extracted frames named? Frame sequences use zero-padded source frame numbers such as `Frame-000842.png`; poster mode writes `Shot-1.png`, `Shot-2.png` and so on. The numbers refer to the file you imported, so they carry no camera-original filename or source timecode. ### Are the extracted images PNG or JPG? PNG. Posters and sequence frames are both genuine PNG files, and there is no format chooser to set. ### Why does my export count change? The count is calculated over the included shots, so the mode, the interval, and the favourites and hidden scope all move it. Interval mode's count is approximate. ### Does every-frame mode make the PDF contain every frame? No. The PDF and the spreadsheet keep using one poster per shot, whichever Images mode is selected. --- # Shot-by-shot film analysis worksheet: from sequence log to argument URL: https://storyfolder.com/blog/shot-by-shot-film-analysis-worksheet Author: StoryFolder Published: 2026-09-13 Tags: Education, Tutorial Reading time: 7 min A shot-by-shot film analysis worksheet for university courses: the log columns, how much of a sequence to log, how observations become an argument, and a grading rubric. *Last updated: 11 September 2026.* A shot-by-shot film analysis worksheet has three parts. A header says which sequence it covers and where it came from. A numbered log gives one row per shot, recording what is on screen and on the soundtrack. A short argument sheet turns a pattern in the log into a claim, with the evidence and a qualification. The log is the observation and the argument sheet is the interpretation, and keeping them on separate pages is what makes the worksheet teach analysis instead of transcription. This is the worksheet for a film sequence, as set in university film courses. Theatre and acting classes use "scene analysis" for a different job, breaking down a script for performance, and this page doesn't cover that. ## What belongs in the shot log? One row per shot, numbered in order, with these columns: Column Records Kind of answer **Shot #** Order in the sequence Number **Start / end / duration** Where the shot sits, and how long it lasts in seconds Numbers **Scale** ECU, CU, MCU, MS, MLS, LS, ELS Pick one from a list **Angle** High, eye level, low, canted Pick one from a list **Movement** Static, pan, tilt, track, handheld, crane, zoom Pick any that apply **Mise-en-scène** Setting, figure placement, lighting, costume, props Short description **Edit in** Cut, dissolve, fade, wipe, match cut, and anything notable about the join Pick one, add a note **Sound / dialogue** Speech, music, ambient sound, silence, sound bridges Pick any, quote key lines **Action** What happens, in one line Short description **Observation** The one thing in this shot worth noticing, stated as fact Sentence **Possible effect** What that might do for a viewer Sentence, marked as tentative **Used in argument?** Whether this shot is evidence in the final claim Yes / no The columns come from real assignments. The University of Washington's CL 270 breakdown covers "type of shot, mobile framing, lighting, transitions", plus "dialogue, sound, and figure movement" ([UW](https://courses.washington.edu/cl270/270exams.html)). San Jose State's RTVF 10 shot list asks for distance and angle, height, mobile framing, depth of field, duration in seconds, editing transition, sound, and mise-en-scène including lighting ([SJSU](https://www.sjsu.edu/people/drew.todd/courses/c2/s1/sequence_analysis.pdf)). Add depth of field if your course teaches it, and cut any column the assignment doesn't use. The kind-of-answer column matters more than it looks. Where the answer comes from a fixed list, give students the list. Twenty students then write `MCU` the same way, and you can compare their logs. Where the answer needs thought, leave a blank line. The last three columns are the ones that turn a log into analysis, and they're the ones students skip when they're short of time. In StoryFolder each column becomes a [custom field](https://storyfolder.com/help/notes/custom-fields) on the board. Dropdowns and tags cover the fixed lists and text fields cover the sentences ([Field types](https://storyfolder.com/help/notes/field-types)). The [printed PDF](https://storyfolder.com/help/exporting/pdf) then shows each shot's thumbnail beside the row. Setting up the board is covered in the scene-study preparation guide. ![](/blog-media/shot-by-shot-film-analysis-worksheet/worksheet-fields@w1600.png) *The worksheet's columns as fields, on shot 239 of* Run Rabbit*, a short film used with permission. The values are examples.* ## How much of the scene should a student log? A short sequence, chosen because something in it repeats or changes. Aim for one to three minutes and roughly ten to forty shots. Ohio State's classroom guide warns that this kind of analysis means "potentially hours of work for minutes of film" ([Ohio State](https://easc.osu.edu/resources/k-16/film-guides/taxi-driver/classroom-activities)). SJSU sets 12 shots in two minutes. Past 40 shots a first-year log becomes endurance work, and the argument sheet gets the leftover energy. The time goes on the looking. A tool that finds the cuts and grabs a frame of each shot saves the mechanical part: timing each shot and pasting screenshots. Every row still needs someone to look at the shot and decide what it shows. Pick the excerpt for a pattern students can find with fresh eyes: shot scale tightening during an argument, an eyeline match repeated across a conversation, music entering exactly as the cutting speeds up. A sequence with no pattern gives students a log with no argument in it. ## How does description become analysis? In four steps, and each step goes on its own line of the argument sheet: Step Question Written as **1. Observation** What happens in more than one shot? "Shots 4, 7, 9 and 11 are close-ups of the same character." **2. Pattern** How do those shots relate: order, timing, contrast? "Each close-up is tighter than the last, and each follows a line of dialogue from the other character." **3. Claim** What might the pattern do? "The sequence narrows onto her reactions, so the scene reads as happening to her." **4. Qualification** Where does the claim fail or need limiting? "Shot 12 cuts back to a wide two-shot at the scene's loudest line, which complicates that." ![](/blog-media/shot-by-shot-film-analysis-worksheet/observation-to-claim@w1600.png) The example is schematic. Swap in the sequence you've set, and it works across genres. Step 1 is the only one that should appear in the log. Steps 2 to 4 need two or more rows at once, which is why they need their own sheet. The **Used in argument?** column links the two: every shot cited in the claim is ticked in the log, so a reader can check the evidence. Step 4 is the one worth grading hardest. A claim with no counterexample usually means the student stopped looking once they had an idea, and the SJSU and UW assignments both ask the essay to explain how the formal elements work "together". Shot 12 is where that happens. ## What should the submission contain? Five items: - **The completed log**, every row filled. Leave the observation and effect blank only on shots you've marked as outside the question. - **A claim in one or two sentences**, taken from the argument sheet. - **The evidence**: the shot numbers and times the claim rests on, with a frame for each if your submission format allows images. - **A source note**: film title, year, the edition or stream watched, and the in and out points of the excerpt. - **One reflection**: a shot boundary or reading they weren't sure about, and how they decided. The reflection is short and does a lot. Whether a slow dissolve is one shot or two is a real question, and a student who notices it has been watching closely. ## How can an instructor grade it? Against eight criteria, weighted towards the argument: Criterion Strong Weak **Boundaries** Shot count matches the sequence, with doubtful cuts flagged Missed or invented cuts, unflagged **Vocabulary** Course terms used consistently Terms mixed, or described in everyday language **Specificity** Observations a classmate could check on screen "Dramatic lighting", "interesting angle" **Pattern** Links three or more shots Lists shots one at a time **Claim** States an effect and can be argued with Restates the plot, or is too broad to test **Evidence** Cites shot numbers and times, and every cited shot is ticked Refers to "the scene" generally **Qualification** Names a counterexample and adjusts the claim No limit stated **Source handling** Edition, excerpt times and citation present Missing or unclear Weight the first three at about a third of the grade and the last five at two thirds. The log is the part that's easiest to get right and the part least worth grading heavily. ## When should students use StoryFolder for this? When a visual board helps: seeing every shot's frame side by side makes scale and angle patterns obvious in a way a table of words doesn't. It's also useful when the instructor wants the same fields on every student's log, or when the handout should be a printed page with thumbnails. The worksheet works without it. A pencil, a paused player and a printed grid will do. StoryFolder saves the mechanical part: it finds the cuts, writes each shot's start time and duration, and gives each row a frame. The student corrects any wrong cuts and fills in the columns. On the free plan a board holds up to 50 shots, which covers a normal worksheet sequence, and custom fields and PDF export are included ([Compare plans](https://storyfolder.com/help/billing/plans)). Students who need longer boards or the [spreadsheet export](https://storyfolder.com/help/exporting/spreadsheet) can apply for the student rate on the [education page](https://storyfolder.com/education). ## FAQ **What is a shot-by-shot analysis?** A numbered breakdown recording each shot's framing, movement, editing, sound and action, followed by an essay on how those elements create meaning. The University of Washington's CL 270 sets two to three pages of breakdown and a four-to-five-page essay. **How many shots should a student analyse?** For a first exercise, roughly 10 to 40 shots from a one-to-three-minute sequence. San Jose State's RTVF 10 uses 12 shots across two minutes of *Psycho*. **What's the difference between a shot log and a shot list?** In production, a shot list plans shots before filming. In film analysis, the shot log records the shots of a finished sequence, and this worksheet is that kind. **Should the log include interpretation?** One tentative line per shot, at most, in its own column. The argument belongs on a separate sheet where several shots can be compared. **Which column do students most often skip?** The qualification: a shot that complicates their claim. Grade for it and they stop skipping it. **Can the worksheet be done in a spreadsheet?** Yes. Use one row per shot with dropdown lists for scale, angle and transition. StoryFolder's Pro plan can export a board as a spreadsheet with timings already filled in. **Is this worksheet suitable for theatre scene analysis?** No. It records camera and editing choices in a filmed sequence, whereas theatre scene analysis breaks down a script for performance. --- # How to prepare a university film class with scene-study materials URL: https://storyfolder.com/blog/prepare-university-film-class-scene-study Author: StoryFolder Published: 2026-09-13 Tags: Education, Tutorial Reading time: 12 min Choose a short clip students can access, verify its cuts, define the fields students will record, model one claim, and prepare a board, PDF handout, assignment and review plan. *Last updated: 11 September 2026.* Pick a sequence of about two minutes that students can watch legally. Break it into shots and check the cuts. Decide which formal features students will record for each shot, then work one observation through to a claim in front of them. Hand out a printed board, set the assignment, and tell them exactly what to submit. That is the whole preparation, and most of the work is in choosing the clip and designing the fields. The shot list itself is the quick part. To build the board, import the clip into StoryFolder, a desktop app for Mac and Windows. It detects the shots, puts a thumbnail next to each one, and gives you fields for the notes you want students to take. It doesn't supply the film, streaming rights or a place to hand in work. Your library and your LMS still do those jobs. Seton Hall's digital humanities blog describes the job this replaces. Branden Buehler's earlier version of a shot-analysis assignment for Introduction to Visual Theory & Technique had students "making a new slide for each shot in the clip", and short clips "can still contain upwards of 50 individual shots." The screenshot work was, in his words, "a burden that potentially distracts from the broader goals of the assignment" ([Seton Hall University](https://blogs.shu.edu/digitalhumanities/project/visual-analysis-video-annotation/)). ## What should students be able to do after this scene study? They should be able to identify what is on screen, describe it in the course's vocabulary, spot a pattern across shots, and argue for what that pattern does. Write that down as the learning outcome before you choose a clip, because it decides the fields. University assignments line up on this. The University of Washington's Comparative Literature 270 asks for "a numbered, shot-by-shot breakdown of the sequence", usually two to three pages, covering "type of shot, mobile framing, lighting, transitions". That's followed by a four-to-five-page essay on "how these various elements of film technique and style construct meaning in the sequence" ([UW CL 270](https://courses.washington.edu/cl270/270exams.html)). San Jose State's RTVF 10 sequence analysis has students fill in a shot list for a 12-shot, two-minute sequence from *Psycho* first. The essay only starts after the instructor has corrected the shot list ([SJSU](https://www.sjsu.edu/people/drew.todd/courses/c2/s1/sequence_analysis.pdf)). So the log and the argument are two separate stages, and the log exists to feed the argument. York's writing guide on reading film puts the same move to students plainly: "Choose a sequence of two or more shots and discuss how they are edited together" ([University of York](https://www.york.ac.uk/english/about/writing-at-york/writing-resources/ways-of-reading-film/)). ## Which clip will survive close viewing in class? Short. Julia Keblinska's classroom guide for Ohio State's East Asian Studies Center calls shot-by-shot sequence analysis "the bedrock of film analysis", and warns that it means "potentially hours of work for minutes of film" ([Ohio State](https://easc.osu.edu/resources/k-16/film-guides/taxi-driver/classroom-activities)). The SJSU choice of 12 shots in two minutes is a good first-exercise size. Check a candidate against this list: Check What you want Length 1–3 minutes, roughly 10–40 shots for a first exercise A visible pattern Something repeats or changes: shot scale tightening, a cutting rhythm, a sound bridge, an eyeline pattern Access Every student can watch it through your library's licence, a course reserve, or a copy you can legally show Context Students can place it: they've seen the film, or you give them a paragraph of setup Captions A captioned source, or a transcript you can hand out Your own file A local `.mp4` or `.mov` of the excerpt you're allowed to use Rights come first, before import. StoryFolder works on a file on your computer and doesn't grant you any right to that file. Where a clip can be used for teaching is a question for your library or your institution's copyright guidance. The University of Sussex's Video Essays module, for one, puts "how to approach issues of copyright law and fair use" inside the course itself ([Sussex, P3099](https://www.sussex.ac.uk/study/modules/undergraduate/2026/106384-video-essays-practice-research)). If the source has no captions, StoryFolder transcribes speech on your own computer and exports SRT and WebVTT subtitle files for free. Check the transcript before you hand it out, because transcription gets worse with overlapping speech and noisy audio. ## How do I turn the clip into a verified shot board? Import the excerpt, let StoryFolder find the cuts, fix the ones it gets wrong, and pick a good frame for each shot. For a two-minute clip that is minutes of work. - **Import the file.** Click **+ New**, then **Import from File…**, and choose your excerpt, or drop the file onto the window. StoryFolder accepts .mp4, .mov, .mkv, .avi, .webm and .mts, and it reads the file where it sits without changing it ([Import from a video file](https://storyfolder.com/help/importing/from-file)). - **Scroll the board.** Each detected shot appears as a thumbnail in order. Look for two kinds of mistake: one thumbnail that clearly holds two setups (a missed cut), and two thumbnails of the same framing side by side (a false cut). Dissolves and fades are the usual place for a missed cut. Camera shake and someone crossing the frame are the usual cause of a false one. - **Open Analyze and read the shortest shot.** The duration panel lists your shortest shot. A tenth of a second is usually a stray frame or two that got split off, so jump to it ([Shot duration metrics](https://storyfolder.com/help/analyze/metrics)). - **If the whole board is off, move the sensitivity slider** and let it re-detect. Too few shots, raise it. Too many, lower it. Do this before anyone writes notes. The slider rebuilds the shot list, and notes only survive intact on shots whose boundaries didn't change ([Detection sensitivity](https://storyfolder.com/help/editing/sensitivity)). - **Fix single mistakes with Split and Merge.** Press C and click the frame where the missing shot should start. Press J and click the first and last shot of a range to merge them. Splitting copies the notes to both halves ([Splitting & merging](https://storyfolder.com/help/editing/split-merge)). - **Choose the thumbnail.** By default each shot shows its first frame, which can be motion blur or the tail of a dissolve. Press F, click the shot, scrub to the frame that shows what the shot is, and set it. That frame is what prints on the handout ([Custom thumbnails](https://storyfolder.com/help/editing/thumbnails)). ![](/blog-media/prepare-university-film-class-scene-study/detected-cut@w1600.png) *Three detected shots from scene 13 of* Run Rabbit*, a short film used with permission. The ringed gap is the cut the detector found at 00:13:14.* Then decide, as the instructor, where the boundaries are. SJSU corrects student shot lists before the essay for good reason: boundary disagreements are real teaching material. A slow dissolve can reasonably be logged as one shot or two. Choose, and write down which. Scale matters for the plan. The free plan holds 6 boards of up to 50 shots each, which fits a normal teaching excerpt with room to spare. A whole feature runs to thousands of shots and needs Pro. ## Which fields belong in this lesson? Only the fields your learning outcome needs, usually six to eight. Students will fill in every one for every shot, so each field is labour you're assigning. A workable starting set, mapped to what each one teaches: Field Type What it trains `Shot scale` Dropdown: ECU / CU / MCU / MS / MLS / LS / ELS Consistent vocabulary `Angle` Dropdown: High / Eye level / Low / Canted Consistent vocabulary `Camera movement` Tag: Static, Pan, Tilt, Track, Handheld, Crane, Zoom A shot can move more than one way `Transition in` Dropdown: Cut / Dissolve / Fade / Wipe / Match cut Editing relations `Sound` Tag: Dialogue, Music, Ambient, Silence, Sound bridge Not forgetting the soundtrack `Mise-en-scène` Text Description in their own words `Observation` Text What they notice, stated as fact `Question` Text The one thing you want answered about this shot, kept apart from the observation Use a Dropdown or Tag wherever the answers come from a known list. Everyone then writes `MCU` the same way, and you can filter the board to every medium close-up in one step. Keep Text for description and argument, where a fixed list would do the thinking for them. The six field types and what each does are in [Field types](https://storyfolder.com/help/notes/field-types). ![](/blog-media/prepare-university-film-class-scene-study/lesson-fields@w1600.png) *The lesson's fields on shot 239. Every Autofill switch is off, which is how every field starts. The values are examples written for this page.* You create them in **Preferences → Notes & Data** with **+ Add Field** ([Custom fields](https://storyfolder.com/help/notes/custom-fields)). Fields belong to your account, so a set you build for one class is there when you import the next scene. If you'd rather start from a suggestion, type what the lesson is about into AI field discovery, "shot-by-shot analysis of a film sequence for an introductory class", and add the fields you want. It suggests a structure and fills in nothing ([AI field discovery](https://storyfolder.com/help/notes/ai-discovery)). Rename its suggestions to match the terms your course textbook uses. ## What should the instructor model before students begin? One complete worked chain on your own board, projected: a single shot described, a pattern across neighbouring shots, a careful claim, and a reading that pushes back. - **One shot, described.** Fill in every field for one shot, out loud. Show that Observation holds only what is on screen: "the camera stays at eye level on her while he's framed from slightly above." - **One pattern.** Filter the board by one field value and show what's left. Every CU in the sequence, say, and when they arrive. - **One claim.** Say what the pattern might do, and say it tentatively: "the closer framings come as she stops answering, which puts us with her silence." - **One counter-reading.** Name a shot that doesn't fit, and show how the claim has to change to cover it. Stop there. The rest of the sequence is theirs. StoryFolder's [AI Autofill](https://storyfolder.com/blog/ai-autofill) can fill in fields like `Shot scale` or `Angle` by looking at each shot, and it's included on every plan (the free plan covers an account's first 100 shots). It fills only the fields you switch on, and every field starts switched off. For your own master board that can save typing on the visible, list-type fields. For a student assignment, leave the analytical fields to the student, and treat anything the model wrote as something to check. Naming shot scale correctly is often the point of the exercise. ## Which artifact belongs at each teaching moment? Four versions of the same board, each for a different moment: Moment Artifact How to make it Before class **Instructor master**: every field filled, boundary decisions noted Your own board In class **Projected board** in Storyboard, Grid or List view, with the clip playing The app on the classroom computer After class **PDF handout**: thumbnail, shot number, start time, duration and your chosen fields per shot Export → Storyboard PDF, or print directly Reference **View-only web board** students can open on any device Publish a share link The PDF prints only the fields visible in the editor, so one board gives you two handouts ([PDF storyboard export](https://storyfolder.com/help/exporting/pdf)). Leave `Observation` and `Question` visible on the shots you're studying and you have a discussion handout. Hide everything but the list fields and students get a worksheet with the thumbnails already in place and room to write. It's formatted for letter-size paper, and PDF export is free. ![](/marketing-media/captures/EDU-04@2x@w1600.png) *A discussion handout exported as a PDF. The notes are examples written for the page.* The share link is a web page with Storyboard, Grid and List views, and viewers don't need an account. Two limits matter here. Viewers can read it but can't comment on it or edit it. And when the board came from a local file, which a teaching excerpt usually will, the page shows thumbnails and notes but no video player ([What viewers see](https://storyfolder.com/help/sharing/viewer-experience)). Publishing with notes included shows every shot-level field, so publish the master only when you want students to see the answers, and open the link yourself before sending it. ![](/marketing-media/captures/EDU-05@2x@w1600.png) *What someone sees at a share link: notes to read, nothing to edit, and no player for a board made from a local file.* ## How do students submit work and how is it reviewed? Through your existing LMS or email, as a file. StoryFolder has three things a student can hand in: - **A PDF** of their board, with thumbnails and their notes. Free on every plan. - **A spreadsheet**, one row per shot with start time, end time, duration and a column per field. That's Pro. - **A share link** you open in a browser. It's read-only, so your feedback goes back through the LMS, not onto the board. StoryFolder has no class roster, no shared editing, no comment threads and no assignment collection. If the assignment itself is a discussion on the timeline, where students reply to one another's notes, a hosted-video annotation tool fits that better. The comparison sibling covers when. For a student working on their own computer, the free plan's 50-shot boards cover a short sequence. Students are the ones doing the logging, so it's worth them having their own copy: StoryFolder runs on a student's Mac or Windows laptop, and boards are built in the desktop app. It won't run on a Chromebook or iPad. ## What changes for a 50-shot scene or a feature film? The same method, with more checking of boundaries and a narrower question. Past 50 shots you're on Pro, or on the education plan. Scroll the board for doubled and merged thumbnails and read the shortest shots in Analyze, the same as with a short clip. Nobody should watch a feature at full speed to check cuts. Two hours of film is two hours of watching, and the board and the shortest-shot list find the mistakes faster. Give students a narrower question than "log everything". Most useful questions about a feature are about one pattern: how the reaction shots change between the first and last scene, or where the long takes fall. Have them fill one or two fields across the whole board and leave the rest empty. Filtering then does the comparison. The Analyze view's shot-duration numbers (total, average, median, longest, shortest) are free and follow whatever filter is active. The duration-over-time chart and the per-field charts are Pro. ## Is there an education plan? Yes. Approved educators get a year of Pro free, and approved students get Pro at a reduced rate for a year. Each person applies individually on the [education page](https://storyfolder.com/education), and an educator's approval doesn't cover their class. Start on the free plan with one short scene first. The education plan only matters once you need more than 50 shots or the spreadsheet. ## FAQ **How long should a clip be for a first shot-by-shot exercise?** One to three minutes. San Jose State's RTVF 10 uses a 12-shot, two-minute sequence from *Psycho*. **Can students use StoryFolder for free?** Yes. The free plan holds 6 boards of up to 50 shots each, with custom fields and PDF export included. Spreadsheet export and the charts are Pro. **Does StoryFolder supply films or clip licences?** No. It works on a video file you already have, so access and permission come from your library or institution. **Can students comment on a shared StoryFolder board?** No. Share links are view-only in Storyboard, Grid and List layouts, so feedback goes through your LMS or email. **Will the shared board play the clip?** Only for boards imported from a public YouTube link. A board built from a local file shows thumbnails and notes without a player. **Does AI Autofill do the analysis for students?** No. It fills only the fields you switch on, by looking at each shot. It suits visible traits like shot scale, and its output still needs checking. **What should a student hand in?** A PDF of their board, or a spreadsheet on Pro, plus the essay. Collection and grading stay in your LMS. **Does StoryFolder run on Chromebooks or iPads?** No. Boards are built in the desktop app on Mac or Windows, and a published board opens in any browser. --- # Organizing a comparative film study in StoryFolder URL: https://storyfolder.com/blog/comparative-film-study-workflow Author: StoryFolder Published: 2026-09-13 Tags: Education, Tutorial Reading time: 8 min Define a corpus, pilot a codebook, code shots consistently, keep sources and interpretations separate, and move scene evidence into a paper or video essay. *Last updated: 11 September 2026.* Write the research question first, then decide on the unit you'll count (shot, scene, or a recurring motif) and the rule for which films and scenes go in. Build one board per film, all with the same fields, and pilot those fields on one short scene before coding the rest. Keep what you saw and what you think it means in separate fields. Keep the bibliography in a reference manager, and write down every boundary decision you make. StoryFolder holds the shot-level evidence, and the paper, the citations and the video essay are made elsewhere. That split follows the way university film research projects are staged. Lehigh's Reel American History project guidelines move students from "a scene-by-scene breakdown with time marks for easy reference to any part of the film", through reviews, historical and filmic context and comparison films, to works cited ([Lehigh University](https://history-on-trial.lib.lehigh.edu/trial/reels/students/format/)). The shot evidence is one component among fourteen. ## What is the research question and unit of analysis? A question that the evidence could answer either way, and a unit small enough to count consistently. "How does the director use close-ups?" is a topic. "Do reaction close-ups arrive earlier in the scene in the director's later films?" is a question, and it tells you the unit (the reaction close-up), the field you need (its position in the scene) and the comparison (early films against late). Unit Good for Watch for **Shot** Framing, movement, duration, cutting patterns Boundary decisions change your counts **Sequence** Structure, rhythm, where things happen Needs a written rule for where a sequence starts **Scene** Narrative comparison across films Scenes differ wildly in length, so compare proportions **Motif** A recurring image, object or composition Easy to over-find once you're looking for it StoryFolder's board works at shot level. Detection gives you shots, and **Merge** combines a run of shots into one section when your unit is larger ([Splitting & merging](https://storyfolder.com/help/editing/split-merge)). Decide the unit before you start. Merging halfway through a corpus makes the early and late films incomparable. ## Which films and scenes belong in the corpus? The ones your written inclusion rule lets in, and you need the rule before you choose. For example: every scene in which the two leads first speak alone, in each of the director's features from 1990 to 2010. Record three things for each film, because a reader will ask: - **Edition.** Theatrical cut, director's cut, restoration, or the streaming version. Name the one you watched, because a different cut is a different set of shots. - **Excerpt points.** The in and out times of every scene you coded. - **Access.** Where the copy came from and on what terms. In StoryFolder these go on the video, not the shot. Create video-level fields (`Film`, `Year`, `Edition`, `Source`, `Included because`) under **Notes & Metadata → Video Metadata**, and each film's board carries its own provenance ([Add metadata to a video](https://storyfolder.com/help/library/video-metadata)). Library search reads those fields, so typing an edition name finds the boards coded from it. ## How should the codebook be designed? Fixed categories for anything you'll compare, free text for anything you'll quote, and a written definition for every category. - **Draft the fields** from your question. Only the fields the question needs. Every field is a decision you'll make hundreds of times. - **Write a one-line definition** for each value. When does MCU become CU? Is a slow push-in a "track" or a "zoom"? Your definitions are where your method lives, and they go in your methods section. - **Pilot on one short scene.** Code it, then look at every place you hesitated. Rewrite the definitions and add a value if you kept wanting one. - **Freeze the codebook** before coding the corpus. If you change a definition later, re-code what came before. In StoryFolder, a fixed category is a Dropdown (one answer per shot) or a Tag (several). A count is a Number, and a note is Text ([Field types](https://storyfolder.com/help/notes/field-types)). Fields belong to your account, so every board in the corpus automatically has the same codebook, which is the property a comparison needs. The board mechanics are covered in the scene-study preparation guide. A codebook for the reaction close-up question might look like this: Field Type Values `Scale` Dropdown ECU / CU / MCU / MS / LS `Shot function` Dropdown Action / Reaction / Insert / Establishing / Other `Speaker on screen` Checkbox Yes / no `Observation` Text What is on screen, stated as fact `Interpretation` Text What it might mean, marked as tentative `Uncertain` Checkbox Coder hesitated on this shot `Source ref` Text Citation key for any secondary source discussing this shot ![](/blog-media/comparative-film-study-workflow/codebook-fields@w1600.png) *Part of the codebook in Preferences, with the option values visible under each dropdown.* [AI Autofill](https://storyfolder.com/blog/ai-autofill) can make a first pass on visible categories such as `Scale`, and it's included on every plan (the free plan covers an account's first 100 shots). Treat its values as a second coder whose work you check. A Dropdown can only receive one of its own options, but the model has no access to your written definitions. It also leaves any field you've switched off alone, so keep `Shot function` and `Interpretation` switched off. ## How are observations kept separate from interpretations? In different fields, and with a record of doubt. `Observation` holds what another researcher would see on the same frame. `Interpretation` holds what you think it does. When a later reader challenges a claim, you can show that the evidence stands even if they reject the reading. Two more habits protect the study: - **Tick Uncertain** whenever you hesitate over a code or a boundary. Report how many shots were uncertain. A filter on that field lists them for a second look. - **Keep the counterexamples.** A shot that doesn't fit gets coded like any other. Filtering it out makes your pattern look cleaner than the film is. ## Where do secondary sources and citations live? In your reference manager and library databases. StoryFolder holds a pointer. Put each source's citation key (the one Zotero, EndNote or your library tool gives it) into `Source ref` on the shots that source discusses. The bibliography, the PDFs and the citation formatting stay in the reference manager. StoryFolder doesn't format citations or store papers. ## How do I compare patterns without overclaiming? Report the sample, the boundary rules, the missing values and both the mean and the median, and describe the shots that go against the pattern. Within one film, filtering does most of the work. Filter to `Shot function` is `Reaction` and the board shows only those shots, in order, with their thumbnails. The Analyze view's duration numbers (total shots, average, median, longest, shortest) are free and follow the active filter ([Shot duration metrics](https://storyfolder.com/help/analyze/metrics)). The per-field distribution charts and the duration-over-time chart are Pro. Across films, each board is analysed on its own, so the comparison is assembled outside. On Pro, export each film's board as a spreadsheet: one row per shot with start, end, duration and a column per field. Stack them in one workbook with a `Film` column added, and pivot. That workbook is also your dataset appendix. ![](/blog-media/comparative-film-study-workflow/spreadsheet-rows@w1600.png) *One board's export, cropped to four rows. Timings are the detected shots'; the Scale and Shot function values are examples.* On the numbers themselves: - **Mean and median shot length diverge.** One long take pulls the average up a long way. Report both. - **Counts depend on boundaries.** If you merged dissolves into one shot, say so, because another researcher's count will differ. - **Proportions beat raw counts** across scenes of different length. - **Say what the sample can't show.** Six scenes from four films is evidence about those scenes. ## How does the evidence move into the final project? Into three kinds of output, each made outside StoryFolder: Project From StoryFolder Made in **Paper** Selected frames (image export) and shot times; a PDF of the coded board Your word processor, with citations from the reference manager **Video essay** A timeline of chosen shots, as EDL, Final Cut Pro 7 XML or FCPXML, for Premiere, Resolve or Final Cut; or a selects reel of those shots back to back Your editing software **Research archive** The PDF, the stacked spreadsheet and your codebook definitions Your repository or appendix ![](/blog-media/comparative-film-study-workflow/evidence-pipeline@w1600.png) Video essay courses put the composing in the editor. Illinois's MACS 485 has students do "weekly parameter-based videographic exercises" in "non-linear editing software (Adobe Premiere Pro)" ([Illinois](https://informatics.ischool.illinois.edu/courses/macs-485-making-video-essays/)). Middlebury's Videographic Film & Media Studies adds peer feedback, where students "provide more detailed feedback on each others' videos" ([Middlebury](https://sites.middlebury.edu/vfms22/assignments/)). Peer review and assessment happen in the course's own tools. StoryFolder's [editorial export](https://storyfolder.com/help/exporting/editorial) builds that timeline from whatever shots are currently filtered, so filter to the evidence shots and export. It's Pro. The timeline points at the one file you imported for that board, and the selects reel is free. Your field values don't travel as markers, so bring the PDF or spreadsheet alongside. Rights for the final essay are part of the course: Sussex's Video Essays module includes "how to approach issues of copyright law and fair use" ([Sussex, P3099](https://www.sussex.ac.uk/study/modules/undergraduate/2026/106384-video-essays-practice-research)). ## What goes in the limitations statement? Four sentences a methods section needs: the corpus rule and its size, the boundary decisions, who coded and whether anything was double-coded, and how many shots were marked uncertain. Write it as you go. Rebuilding it from memory at the end is how corpus rules quietly change. ## FAQ **What is a unit of analysis in film studies?** The thing you count or compare, such as a shot, sequence, scene or motif. It has to be fixed before coding, because merging shots partway through makes early and late films incomparable. **How many films should a comparative study include?** As many as your written inclusion rule admits. Report the number, because a claim about six scenes is evidence about those six scenes. **Should I report average or median shot length?** Both. One long take can pull the mean far above the median, and StoryFolder's Analyze view shows both for free. **Can StoryFolder compare several films at once?** Each board is analysed separately. On Pro, export each board's spreadsheet and combine them in one workbook to compare. **Can StoryFolder manage my citations?** No. Keep the bibliography in a reference manager, and store each source's citation key in a text field on the shots it discusses. **Can I send my coded shots to Premiere or Resolve for a video essay?** Yes, on Pro. Editorial export writes an EDL, Final Cut Pro 7 XML and FCPXML of the filtered shots against the file you imported. Your field values don't become markers. **Should AI Autofill code my corpus?** Only as a first pass on visible categories like shot scale, and every value it writes should be checked. It never sees your written definitions, and it leaves fields switched off untouched. --- # Cinemetrics vs StoryFolder: choose by research question URL: https://storyfolder.com/blog/cinemetrics-vs-storyfolder-film-analysis Author: StoryFolder Published: 2026-09-13 Tags: Education, Tutorial Reading time: 7 min Cinemetrics for hand-measured cut timing and a public database; StoryFolder for visual shot boards with course fields; VideoAnt for class discussion on a video's timeline; Advene for annotation corpora. *Last updated: 11 September 2026.* Use Cinemetrics, the University of Chicago's film measurement tool, when your question is about cutting rate and you want to compare against films other people have measured. Use StoryFolder when your question is about what is in the shots (framing, movement, sound, composition) and you want a board of thumbnails with your own fields and a printable handout. Use VideoAnt when the assignment is students discussing a hosted video on its timeline. Use Advene when the annotation model itself is what you're researching. This page covers the Cinemetrics at [cinemetrics.uchicago.edu](https://cinemetrics.uchicago.edu/how-to-use). Several unrelated analytics and visualisation projects share the name. What you need Start with Why Where it stops Measure cut timing and compare with a public database of measured films **Cinemetrics** Frame-accurate manual logging, custom shot labels, `.cmsx` files, a shared database with statistics and shot-change graphs A person marks every cut by hand; describing what's in each shot isn't its focus A visual shot board with course-specific fields, a PDF handout or a spreadsheet **StoryFolder** Detects shots automatically, a thumbnail per shot, six field types, PDF on every plan, spreadsheet and charts on Pro No public database of other people's films; share links are view-only Class discussion on a video's timeline **VideoAnt** Timeline annotations others can respond to, with view and annotate permissions Works on web-hosted video; isn't built around shot boundaries Typed annotations, relations, custom views and multi-film corpora **Advene** An extensible annotation model with shot detection, many views and many exchange formats More to design before you start ![](/blog-media/cinemetrics-vs-storyfolder-film-analysis/four-tools@w1600.png) ## Which tool fits your research question? Five questions sort the choice: - Is the thing you're measuring **when the cuts happen**? That points to Cinemetrics. - Do you need to compare with **films you haven't measured yourself**? That's the Cinemetrics database. - Is the thing you're recording **what each shot shows**? That points to StoryFolder. - Is the assignment **students replying to one another** on a video? That's VideoAnt. - Is the research about **how annotations relate** across a corpus, with views you design yourself? That's Advene. If both 1 and 3 are true, you may want two tools. The section on combining them explains how. ## When is Cinemetrics the right tool? When shot length is the evidence. Cinemetrics is a Chromium browser extension with two modes. FACT (the Frame Accurate Cinemetrics Tool) plays a video file on your computer, and you mark each cut and then nudge it one or five frames either way. Classic mode is for a user who "is viewing the film on another device or projector", tapping as the cuts go by ([Cinemetrics, How to Use](https://cinemetrics.uchicago.edu/how-to-use)). Both are manual. You press **Shot** (or the `~` key) at each cut. Yuri Tsivian's tips on the same site put it directly: "Taking shot lengths of a running movie is a manual operation performed in real time." That's the design: a person decides what counts as a cut, and FACT lets them refine the frame. What it gives you: - **Custom shot labels.** Rename the shot-type buttons in the SHOTS pane and log categories alongside timing. - **.cmsx files.** Download a measurement and import it again later. - **A public database.** Submit a measurement (only the title is required) and it joins a shared database whose pages show "its main statistics, statistics for each button (if advanced mode was used), and a graph of shot changes." That database is the part you can't build on your own: context from other people's measurements. It runs in Chrome and other Chromium browsers, and the how-to page says it "will not work on other browsers, such as Safari or Firefox." On 11 September 2026 the Chrome Web Store listed version 1.2.1, published by the Forum for Digital Culture at the University of Chicago ([Chrome Web Store](https://chromewebstore.google.com/detail/cinemetrics-measurement-t/bekhkeilpophjchjdbhnfhecjkhjlgme)). For a cutting-rate lab, it's the right tool. Measuring a scene yourself teaches what a cut is in a way reading a number doesn't. ## When is StoryFolder the right tool? When the evidence is what's in each shot and you want to see it. StoryFolder is a desktop app for Mac and Windows. Import a video file and it detects the shots and lays them out as a board with a thumbnail each. You fix any wrong cuts with Split and Merge, then fill in your own fields (Dropdown, Tag, Checkbox, Rating, Number, Text) for scale, angle, movement, sound or whatever the course needs. The scene-study preparation guide covers setting up the board. What that board gives a class or a researcher: - **Filters on your own fields.** Show only the reaction close-ups, in order, with their frames. - **Duration numbers on every plan.** Total shots, average, median, longest and shortest, following the active filter ([Shot duration metrics](https://storyfolder.com/help/analyze/metrics)). Cinemetrics users will know the average as ASL. Median is there because one long take distorts the average. - **Charts on Pro.** Duration over time and a distribution for each field. - **Handouts and data.** A [PDF of the board](https://storyfolder.com/help/exporting/pdf) with thumbnails and chosen fields is free. The [spreadsheet](https://storyfolder.com/help/exporting/spreadsheet), one row per shot with timings and fields, is Pro. - **A view-only web page** of the board, with no account needed to open it. ![](/blog-media/cinemetrics-vs-storyfolder-film-analysis/statistics@w1600.png) *The Analyze view over a 27-minute film. The average, 3.5 seconds, is the film's ASL, and the five duration figures read on every plan; the duration-over-time chart below them is a Pro feature.* The limits line up with Cinemetrics' strengths. There's no shared database of other people's films, so every comparison uses boards you built. Detection is automatic, so the first job is checking its cuts, where Cinemetrics has you make each one. Share links are read-only, with no comments. Free boards hold up to 50 shots, and longer ones need Pro. ## When is VideoAnt the better fit? When the assignment is a conversation. VideoAnt, from the University of Minnesota, lets you "add annotations, or comments, to web-hosted videos", marked on the timeline, and "You control who can view and who can annotate." Other users can have "permission to leave a response to another user's annotation", and annotations can be exported and embedded in an LMS ([VideoAnt](https://ant.umn.edu/), [documentation](https://ant.umn.edu/documentation)). It works on "any publicly accessible video file or YouTube video", so the video has to be online. If your task is students reading one another's notes on the same moment and replying, StoryFolder can't do that: its shared boards are view-only. ## When is Advene the better fit? When the annotation model is part of the research. Advene is a desktop application for Linux, Windows and macOS with typed temporal annotations and "some automatic extraction (shot detection, audio segmentation...)". It has "Multiple built-in views of annotations: timeline, finder, transcription", imports from formats including ELAN, PRAAT, SRT and shotdetect, and exports to SMIL, SVG, HTML, SRT and spreadsheet ([Advene features](https://advene.org/features.html)). The 3.15 release, marked unstable in the changelog of 8 January 2025, adds "Corpus management features (i.e. multi-package)" and "configurable Xlsx export of corpus data" ([CHANGES.txt](https://github.com/oaubert/advene/blob/master/CHANGES.txt)). That's a research instrument for someone designing their own annotation scheme and views across a corpus. For a class that needs a board, a handout and a set of fields by next week, it's more to set up than the task needs. ## Can these tools be combined? By hand, yes. They don't exchange files: StoryFolder doesn't read `.cmsx`, and nothing syncs between them. A sequence that works for a research project: - **Cinemetrics for context.** Look up films comparable to yours in the database, and measure your own scene in FACT if you want it to sit alongside theirs. - **StoryFolder for the close study.** Import the same scene, check the cuts, and code what's in each shot. Its duration numbers won't match a hand-measured Cinemetrics count exactly if your cut decisions differ, so report which you used. - **Elsewhere for the final piece.** Write in your word processor, or cut the video essay in your editor. ## Which tool should a beginner class use? Class Tool Reason **Cutting-rate lab**: what is a cut, how fast does this film cut, how does that compare Cinemetrics Marking cuts by hand is the lesson, and the database gives comparison **Formal scene analysis**: framing, movement, sound, towards an essay StoryFolder Board and thumbnails, set fields, and a printable handout on the free plan **Discussion annotation**: students respond to one another on a clip VideoAnt Timeline comments with replies and permissions **Advanced corpus research**: custom annotation types and views across many films Advene Built for designing the annotation model itself Start with a scene of a couple of minutes whichever tool you pick. A scene that size fits in one class session, and in one free StoryFolder board. ## FAQ **What is Cinemetrics?** A free Chromium browser extension and public database from the University of Chicago for measuring shot lengths in films. Cuts are marked by hand in FACT or Classic mode, and measurements can be submitted to the shared database. **Does Cinemetrics detect cuts automatically?** No. You press Shot or the `~` key at each cut, and FACT lets you adjust each one by one or five frames. **Does Cinemetrics work in Safari or Firefox?** No. Its how-to page says it works in Chrome and other Chromium browsers only. **Can StoryFolder import Cinemetrics .cmsx files?** No. Use the two tools side by side on the same scene, and report which tool's shot count you used. **Does StoryFolder calculate average shot length?** Yes. The Analyze view shows average, median, longest and shortest shot duration on every plan, and it follows the active filter. **Which tool lets students comment on a video together?** VideoAnt, which supports timeline annotations with responses and view or annotate permissions. StoryFolder's shared boards are view-only. **Does Advene run on Mac?** Yes. Advene publishes installers for macOS, Windows and Linux; its 3.15 release is marked unstable in the changelog. --- # StoryFolder 0.4: AI Autofill, local transcription, and an assistant that can see your library URL: https://storyfolder.com/blog/storyfolder-0-4 Author: StoryFolder Published: 2026-09-02 Tags: Release, Production Reading time: 10 min StoryFolder 0.4 is out for macOS and Windows: AI Autofill for shot metadata, on-device transcription, an MCP connector for Claude and Codex, collections, quick filters and version history. *Last updated: 2 September 2026.* StoryFolder 0.4 is out for macOS and Windows. 0.4 adds AI Autofill, which fills the shot metadata fields you switch it on for; text transcription, and MCP (Model Context Protocol), which lets Claude Desktop, Claude Code or ChatGPT Codex read and edit your library through AI chat. New library features include folders, collections, quick filters and video-level metadata fields. 0.4 also introduces version history records the edits you make by hand, the ones an assistant makes, and the ones a paste makes, and lets you preview and roll each one back. ## What changed in StoryFolder 0.4? ![](/blog-media/ai-autofill/hero@w1600.jpg) **AI Autofill** looks at a representative frame per shot and automatically proposes a value for each shot metadata field you switched it on for. Every field ships with that switch off, and the Autofill action does not appear at all until at least one field has it on. Dropdown, Rating, Checkbox and Number answers are held to the domain you defined for that field. Tag and Text are deliberately open, so those two can come back with something you never listed. A run opens a modal that names the fields, the shots and the write mode and counts them before you commit; **Only fill empty fields** is the default and never touches a value someone typed. It is included on every plan, with the free plan's first 100 shots counted on the server and Pro unlimited, and it is a cloud call. Alongside it, **AI Discover fields** takes a description of the work you do and proposes fields for it: it suggests the schema and never fills a value, and anything it creates arrives with its Autofill switch off like every other field. Read [how AI Autofill works and what it will not do](https://storyfolder.com/blog/ai-autofill). ![](/blog-media/transcription/hero@w1600.jpg) **Transcription** runs whisper.cpp as a process on your own computer, on audio pulled from the file already on your drive. It is on by default: when an import reaches Complete, StoryFolder queues the transcription itself. The default model is `small`, the multilingual one, and there are eight to pick from across four sizes in English-only and multilingual pairs. **Identify speakers** is a separate switch, off by default and slower when on, and the speakers it finds can be renamed, merged and reassigned down to individual words. The catalogue holds 100 languages plus auto-detect, and a translate-to-English task sits beside plain transcription. You read the result in whichever of five modes suits the pass: By shot, By speaker, Continuous, Captions or Plain text. By shot is the one that changes how the app works, because from then on the words are part of the same index as the pictures: library search returns a shot on a transcript hit and says so, the assistant's search tool reaches the same text, and Statistics reports lines, words and speaker share. Transcription and its transcript and subtitle exports are free. Read [what local transcription covers](https://storyfolder.com/blog/transcription). ![](/blog-media/connect-an-assistant/hero@w1600.jpg) **Connect an AI assistant** puts a local connector between StoryFolder and a desktop AI chat client. The protocol is MCP, the Model Context Protocol and includes sixteen tools that cover listing and reading projects, searching frames by metadata and transcript text, fetching frames as actual images, writing shot and video fields, creating fields, importing a video, queueing an export and following the job, and listing version history. Claude Desktop, Claude Code and ChatGPT Codex each have their own setup path in the app. A read-only mode hides every tool that writes. Read [what an assistant can and cannot do with your library](https://storyfolder.com/blog/connect-an-assistant). ![](/blog-media/library-folders-collections-quick-filters/hero@w1600.jpg) **The library** gains collections, quick filters and video-level metadata fields. Folders are not new and are not claimed as new here; they file videos, and opening one narrows what you see to that folder and everything under it. A collection holds hand-picked shots from across different videos, and an open collection carries its own search box and filter bar. A quick filter saves the query, the filter chips and the card layout together as a destination you can jump back to. Video-level fields are new too: one flat list of fields whose values sit on the video rather than on a shot, which is where a client name or a job number belongs and where filtering by it filters whole projects. Autofill does not touch them. Searching or filtering from **All items** covers the whole library, filed videos included. One box searches titles, the fields you type into on a shot or on the video, and transcript text at once; a multi-word query needs every word to match, in any order; and each result says which layer it matched on. `/` or ⌘F, Ctrl+F on Windows, puts the cursor in that box. Read [how folders, collections and quick filters fit together](https://storyfolder.com/blog/library-folders-collections-quick-filters). ![](/blog-media/version-history-and-copy-paste-metadata/hero@w1600.jpg) **Version history** records one restore point per edit gesture, not one per shot, so a change written across forty shots is one entry and one undo. It covers the shot fields you type, video-level metadata, transcript corrections, titles and descriptions, folder moves, and the re-cut controls (sensitivity, minimum shot length, merges and forced cuts). ⌘Z, Ctrl+Z on Windows, takes back the last one the moment you regret it. Points minted by an assistant carry a badge saying so. Previewing a point never writes anything, and reverting captures the current state first, so the revert is itself reversible. **Copy notes & metadata** and **Paste notes & metadata** move values from one shot to a scope of others through a plan you confirm: which fields, which shots, and whether existing values are left alone. Read [what version history actually captures](https://storyfolder.com/blog/version-history-and-copy-paste-metadata). **Statistics** counts your own fields. It buckets checkbox, dropdown, tag, rating and number values into a distribution per field, with an absence bucket for the shots that have nothing, and reports shot-duration mean, median, longest and shortest plus a transcript block. The tab opens on any plan; the charts are Pro. The rest of the surface moved with it. Export is rebuilt around five outputs with a queue you can walk away from, and an export or a publish carries whatever search and filters you have active rather than the whole board. Import accepts a drop anywhere in the window, an "open with" from the operating system, and a URL. The account pane has an in-app plan picker, a one-time sign-in link instead of a key in a URL, self-serve account deletion and an analytics opt-out. There is an in-app What's New and a set of product tours. ## Which AI work stays on your machine, and which does not? Transcription and speaker identification run on your machine. AI Autofill does not: it encodes a frame from each shot and posts it to StoryFolder's server, which calls a hosted vision model. The video file itself is never uploaded for either. Feature What leaves your machine Needs internet Plan Transcription and Identify speakers Nothing from the audio Once, to fetch the engine and a model Free AI Autofill One frame per shot, plus the video's title, description and video-level fields, plus your field names and instructions Every run Any (Free covers your first 100 shots; Pro unlimited) Connect an AI assistant Whatever the assistant asks for and then sends to its own provider The connector itself runs on loopback Free The model download is the part people get wrong in both directions. Transcription needs the network once, to fetch the whisper.cpp engine build for your platform and a model file. After that a transcription runs with the network off. That is a fact about where the audio went, not a certification, and StoryFolder makes no compliance claim. Connect an AI assistant has two boundaries, and only one of them is local. The connector talks to the running app over loopback, so nothing about that hop leaves the machine. What the assistant then does with a shot note or a frame it asked for is between you and whoever makes your assistant, exactly as if you had pasted it into a chat box yourself. Read-only mode stops writing, not reading. Two more things talk to StoryFolder's servers and always did: activating a licence, which is where your live plan comes back from, and usage telemetry, which carries counts and identifiers and never a title, a filename or a path. Telemetry has an opt-out in the account pane. Publishing a storyboard is a third, and an obvious one, since publishing is the act of putting it somewhere other people can open. The [privacy help page](https://storyfolder.com/help/security/privacy) is the current authority on all of this. ## What is free, what is Pro, and what needs an internet connection? Transcription is free, and so are custom metadata fields. AI Autofill is included on every plan: the free plan covers your first 100 shots and Pro is unlimited, which makes Pro the practical floor once that workflow runs across a whole library. Free Pro Transcription and Identify speakers Unlimited AI Autofill (Free covers your first 100 shots) Custom shot and video metadata fields, AI Discover fields Unlimited boards and shots (Free: 6 boards of 50 shots) Connect an AI assistant, including writes Spreadsheet / Shot List export Collections, quick filters, version history, copy and paste metadata Statistics charts Storyboard PDF, Images, Clips, Transcript and Subtitles export Password-protected share links The export gate is narrower than people assume. Of the five outputs, only **Spreadsheet / Shot List** is gated. Storyboard, Images, Clips, and Transcript & Subtitles (SRT, VTT, TXT, CSV, Fountain) render on any plan. The free tier caps a board at 50 shots and a library at 6 boards. Tiers and what each includes are on the [pricing page](https://storyfolder.com/pricing). ## What should you try first? Pick the one that matches what is already on your machine. - **You have a library already.** Open **All items**, type something you know is in a filed project, and confirm it comes back. Then build a filter you would rerun and choose **Save as quick filter** from the chip bar. [The library page](https://storyfolder.com/blog/library-folders-collections-quick-filters) covers the rest. - **You have footage with people talking in it.** Import one video and leave it alone. Transcription is on by default and queues itself once the import completes. Read it in **By shot** mode, then turn on **Identify speakers** in Settings → Transcription and re-transcribe if you need names. [The transcription page](https://storyfolder.com/blog/transcription) covers models and correction. - **You log the same fields on every job.** Create one or two shot fields in Settings → Shot Metadata, turn on the Autofill switch for those and nothing else, leave **Autofill on import** off, and run it on a handful of shots before anything larger. [The Autofill page](https://storyfolder.com/blog/ai-autofill) covers review and the failure modes. - **You already use a desktop assistant.** Set it up from Settings → MCP Server or the **Connect an AI assistant** button, start read-only, ask it what is in your library, then turn writing on and make one small change. [The assistant page](https://storyfolder.com/blog/connect-an-assistant) covers the tools and attribution. - **You want a safety net first.** Copy the metadata off one shot, paste it to a small selection, and open version history to see the entry it made. [The version history page](https://storyfolder.com/blog/version-history-and-copy-paste-metadata) covers what is captured and what is not. Installers for macOS and Windows are on the [install page](https://storyfolder.com/help/getting-started/install). An existing installation updates itself. ## FAQ **Which platforms does StoryFolder 0.4 run on?** macOS on Apple silicon, macOS on Intel, and Windows x64. There is no Linux build. **Is StoryFolder 0.4 a beta?** The builds carry a beta label. Everything described here ships in them. **Is local transcription free?** Yes. Transcription, Identify speakers, and the SRT, VTT, TXT, CSV and Fountain exports are all free. The engine and model download once from StoryFolder's servers. **Does AI Autofill upload my footage?** No. It sends one frame per shot, plus the video's title, description and video-level fields and your own field instructions, to StoryFolder's server and on to a hosted vision model. The video file is not uploaded. **Can I undo an AI Autofill run?** No. Autofill writes no restore point. Version history covers edits you make by hand, an assistant's writes and a paste, and the only guard on an Autofill run is **Only fill empty fields**, which is on by default. **Can ChatGPT connect to StoryFolder?** Through Codex, OpenAI's assistant tool, in the Codex app, the CLI or the editor sidebar. The ChatGPT desktop chat window is not supported yet. **Does searching from All items cover every project?** Yes. Searching or filtering from All items covers the whole library, including videos filed in folders; opening a folder narrows it to that folder and its subfolders. ![](/blog-media/how-we-rebuilt-storyfolder/hero@w1600.jpg) **Is 0.4 faster than what came before?** Yes, and noticeably so: the interface composites on the GPU, the shot board draws only the cards on screen, and on Apple silicon the app, the worker and the speech engines are all native builds ([what makes 0.4 faster](https://storyfolder.com/blog/how-we-rebuilt-storyfolder)). --- # AI Autofill: tag every shot with your own fields, automatically URL: https://storyfolder.com/blog/ai-autofill Author: StoryFolder Published: 2026-09-02 Tags: Release, Production Reading time: 8 min AI Autofill looks at one frame per shot and fills the metadata fields you switched it on for, held to the options you defined. What it fills, what it sends, and what can still go wrong. *Last updated: 2 September 2026.* AI Autofill looks at one frame from each shot and writes a value into the shot metadata fields you switched it on for. New in [StoryFolder 0.4](https://storyfolder.com/blog/storyfolder-0-4). Every field ships with the switch off, so nothing is filled until you turn something on, field by field. Dropdown, Rating, Checkbox and Number answers are held to the domain you defined. Tag and Text are open on purpose and can come back with something you never listed. It is included on every plan (the free plan covers your first 100 shots; Pro is unlimited), it sends frames off your machine to a hosted vision model, and it writes into the cell with no restore point behind it, so reviewing what it wrote is your job and not the app's. ## What can AI Autofill fill? Shot fields you already created and explicitly enabled, of six types: Text, Tag, Dropdown, Checkbox, Rating and Number. It never creates a field, it never touches a video-level field, and it never fills a field whose Autofill switch you have not turned on. Dropdown, Rating, Checkbox and Number answers must fit the domain you defined; Tag and Text accept anything. Field type What comes back Held to your domain? Dropdown One of the options you defined, spelling and casing corrected to yours Yes Rating A whole number from 0 to 5, where 0 means unrated Yes Checkbox True or false Yes Number Any finite number, decimals and negatives included Yes Tag A list of short tags, which can include ones you never listed No, open on purpose Text Anything No, a pass-through That split is the fact to carry away. A Dropdown cannot come back with an option you did not write: the answer is checked against your option list before it is accepted, and a near-miss is corrected to your spelling rather than added as a new option. A Number takes any finite number and refuses anything that is not one, so a tick or a list of tags cannot quietly become a quantity. A Tag field can grow, because a tag vocabulary that could only reuse what already exists would never let the model add the one you have not thought of yet. And a Text field has no vocabulary to fail against at all, which is why a `Job#` in a Text field with Autofill enabled is where a plausible wrong answer has nothing to stop it. Video-level fields are a separate schema and are out of scope by design. There is no Autofill column in Settings → Video Metadata, because a client name and a job number are not in the picture. [Video metadata and the rest of the library controls](https://storyfolder.com/blog/library-folders-collections-quick-filters) are their own thing. Filling values and inventing fields are also different features. [AI Discover fields](https://storyfolder.com/help/notes/ai-discovery) takes a description of the work you do and proposes field names, types and options. It writes no values, and anything you accept from it arrives with its Autofill switch off. ## How do your field rules shape the result? The field's name, its type, its option list and the description you typed into it are what the model is asked for, and the domain table is what StoryFolder will accept back. Take a four-field schema: `Shot Size` as a Dropdown with your own options, `Location` as a Tag, `Description` as Text, `Usable` as a Checkbox. For each shot, the run sends that shot's frame plus the video's title, description and any video-level fields you filled in, plus whatever you typed into the run's own instructions box. Each field goes along with its type and its options, and the request tells the model to leave a field out rather than guess when the frame does not support an answer. What comes back is checked against that field's domain before it becomes a value, and a one-line field description is the cheapest steering available: `Shot Size` with the description "framing of the main subject" produces different answers from `Shot Size` with nothing. Passing that check is not the same as being right. A Dropdown answer that is one of your options is accepted whether or not it is the correct one of your options, and this is the failure mode you will actually meet. [What "good" means for AI video tagging](https://storyfolder.com/blog/is-ai-video-tagging-any-good) works through a real case of an accepted, valid, visually wrong value and what to do about it. [How AI uses categories you already defined](https://storyfolder.com/blog/can-ai-tag-video-with-my-own-categories) covers designing the option list so there are fewer of them. ## How do you set it up without overwriting metadata you already have? Enable one or two fields, leave **Only fill empty fields** on, run it on a small selection, and look at what came out before you widen the scope. - Open Settings → **Shot Metadata**. Custom fields are included on every plan. - Create or pick a field, turn on its **Autofill** switch in the Autofill column, and write it a one-line description. - Leave **Autofill on import** off. It is off by default, and turning it on before you trust the schema means a forty-file drop becomes hundreds of model calls with nobody watching. - In the board or the library inspector, select a handful of shots and choose **Autofill with AI**. The action stays hidden until at least one field has its switch on, so if you cannot find it, step 2 has not happened yet. - In the modal, check the field list, pick the scope (this shot, the shots you selected, or all of them), leave the mode on **Only fill empty fields**, and read the count line before you commit. It names fields and shots, and the button repeats the shot count. - Look at the results, fix what is wrong by hand, and only then widen. The run itself is a queued job owned by the worker, so it keeps going if you navigate away, and it survives a restart. Progress shows per field on the card and in the inspector rather than as one bar for the whole board. ## What can go wrong even when a value passes validation? Four different things, and they do not look alike from the outside. A value can be correct. It can be inside your domain and visually wrong. It can be rejected for falling outside the domain, in which case nothing is written and nothing tells you so. Or the call can fail, which is retried for a network or server error and not retried when the model returns a refusal. The middle two are the ones to plan around. A rejected value and a model that declined to answer both look like an empty cell, so an empty cell is not evidence about which happened. And an accepted-but-wrong value is indistinguishable in the cell from one you typed: there is no marker in the UI saying a value came from Autofill. Reviewing a large board is a filtering job. On a 461-shot board, use each closed field's own options as a review queue: filter to `Shot Size = Wide`, look at that set, move to the next option. Open Text and Tag fields have no queue to filter into, so take a fixed sample across the beginning, middle and end plus the shots most likely to defeat a single frame, which are the dark ones, the transitions and the graphics. Correct what you find in place. There is no restore point to fall back on. Autofill writes into the video directly and never mints one, so [version history](https://storyfolder.com/blog/version-history-and-copy-paste-metadata) does not cover a run, and the only real guard is that **Only fill empty fields** never touches a cell that already has something in it. ## Where does the frame go? Out. StoryFolder encodes one frame per shot and posts it to StoryFolder's own server, which passes it to a hosted vision model along with your field names, your field descriptions, the run's instructions and the video's title, description and video-level fields. The video file itself is never uploaded. So an Autofill run needs an internet connection every time, and the local story belongs to the feature next door. [Transcription runs on your machine](https://storyfolder.com/blog/transcription) with no upload at all; Autofill is the opposite in every respect that matters here. The [privacy help page](https://storyfolder.com/help/security/privacy) is the current authority. Autofill is on every plan, and the server enforces the allowance rather than the client asking nicely: the free plan covers your first 100 shots, and after that a free account meets an upgrade prompt in the run modal instead of a failed job. [Pro](https://storyfolder.com/pricing) is unlimited. ## When should you leave Autofill switched off? For anything the frame does not contain, anything with contractual weight, and any field whose options you have not yet argued with yourself about. A model can look at a shot and tell you it is B-roll. It cannot look at a shot and tell you who signed a release, which job number this is, or which of two clients booked the day. Those facts live in your head or in an email, and the honest route for them is a video-level field typed once, or [copy and paste across shots](https://storyfolder.com/blog/version-history-and-copy-paste-metadata) where a run of shots shares a value. Autofill is also not search. It writes values that make search work later; it does not go and find things. And on a schema you have not tested, running it wide is how you get 461 shots of confidently wrong metadata with no undo. Enable little, run small, widen when it has earned it. The [end-to-end logging workflow](https://storyfolder.com/blog/how-to-log-footage-without-tagging-every-clip-by-hand) is the longer version of that argument. ## FAQ **Does AI Autofill work with my own metadata fields?** Yes, that is the whole feature. It fills the shot fields you created and enabled, of six types: Text, Tag, Dropdown, Checkbox, Rating and Number. Custom fields are included on every plan. **Will Autofill overwrite metadata I already entered?** Not in the default mode. **Only fill empty fields** is on by default and never touches a cell with something in it; choosing the overwrite mode shows a counted warning first. **Can I undo an Autofill run?** No. Autofill creates no restore point, which is why the advice is to run it on a small selection and review before widening. **Does Autofill upload my video?** No. It sends one frame per shot, plus your field names and instructions and the video's title, description and video-level fields, to StoryFolder's server and on to a hosted vision model. **Can Autofill fill Client or Job at video level?** No. It works on shot fields only, and Settings → Video Metadata carries no Autofill control at all. **Why can I not see the Autofill action?** It stays hidden until at least one shot field has its Autofill switch on. Turn one on in Settings → Shot Metadata. **How do I review a 461-shot board?** Filter each closed field by each of its options in turn and inspect those queues, then take a fixed sample of the open Text and Tag results plus the dark, graphic and transition shots. Do not scroll the whole board. **Is AI Autofill free?** For your first 100 shots. The free plan includes 100 autofilled shots per account, counted on the server and never reset monthly; after that it is Pro, which is unlimited. Transcription, by contrast, is free with no cap. --- # Let an assistant search, tag and export your footage URL: https://storyfolder.com/blog/connect-an-assistant Author: StoryFolder Published: 2026-09-02 Tags: Release, Production Reading time: 9 min Connect Claude Desktop, Claude Code or Codex to StoryFolder over MCP: search every project, look at frames, write fields across shots, and undo it all from version history. *Last updated: 2 September 2026.* Connect an AI assistant lets a desktop AI client read and change your StoryFolder library by talking to the app while it is running. New in [StoryFolder 0.4](https://storyfolder.com/blog/storyfolder-0-4). Ask it what is in the library, have it search across every project for a phrase somebody said on camera, have it look at the actual frames, have it write a field across a run of shots, and then open version history and see its edits badged as its own and roll them back. Three clients are set up from inside the app: Claude Desktop, Claude Code and ChatGPT Codex. StoryFolder has to be open, the connection between the assistant and the app runs on your own machine, and whatever the assistant asks for it then sends to its own AI provider, exactly as if you had pasted it into the chat box yourself. ## Which assistants can connect? Three, each with its own setup path in Settings → **MCP Server** or behind the **Connect an AI assistant** button in the header: Claude Desktop, Claude Code and ChatGPT Codex. Client How it connects Setup Claude Desktop A one-click extension you download and double-click; StoryFolder writes the config [Set up Claude](https://storyfolder.com/help/ai/claude-desktop) Claude Code A command the panel runs for you, or copies for you to paste Same panel, Claude Code tab ChatGPT Codex A downloaded folder plus a `codex mcp add` command; needs Node 18 or newer on the machine, which Codex does not bring its own copy of [Set up ChatGPT](https://storyfolder.com/help/ai/codex) Codex is where the ChatGPT answer gets specific. You reach StoryFolder from the Codex app, the Codex command line, or the Codex sidebar in an editor like VS Code, signed in with the ChatGPT account you already have. It does not appear in the ChatGPT desktop app's own chat window. Claude Desktop is the route that has been run end to end; the Codex route is confirmed as far as reading the setup and starting StoryFolder. Web and mobile clients cannot connect at all, and that is structural rather than a gap in the list: the connector talks to a server on your own machine, and a browser tab on someone else's cannot reach it. ## What can the connector actually do? Sixteen tools, in five jobs: look around the library, find and see shots, write metadata, import and export, and read the version history. Seven of the sixteen write and nine only read. The protocol underneath is MCP, the Model Context Protocol, which is the standard way an assistant discovers what a program will let it do and then calls it; you never see it. **Look around.** `list_projects` and `get_project` give the library and one project's shot list. `list_folders` and `list_metadata_fields` give the structure and your schema, which is how an assistant learns that `Shot Size` exists and what its options are before it tries to write one. **Find and see.** `search_frames` is the one that does the work. Give it a project or leave the project out and it searches every project that is not in the Trash, in one call rather than one call per project. A plain query goes at both the metadata a human typed and the transcript of what was said, so "which shots mention the spring sale" is a single question and the assistant does not have to know which layer the answer is in. Every match says which of the two it came from. You can also match a named field with `contains`, `equals`, `one_of`, `is_set` or `not_set`, or stack several conditions that must all hold. `get_frames` then returns actual images, up to twelve per call, so the assistant can look at a shot rather than reason about its label. **Write.** `set_frame_metadata` annotates shots. `set_video_metadata` and `set_video_metadata_batch` do the video-level fields, one project or many. `create_metadata_field` adds a field to your schema. `update_project` renames a project or moves it to another folder. **Bring in and send out.** `import_video` imports. `create_export` starts an export and returns a job id instead of blocking, and `get_export_job` and `list_export_jobs` follow it, so a PDF storyboard renders while you carry on working. **Audit.** `list_versions` reads the project's version history, which is how you ask an assistant what it changed and get an answer from the record rather than from its memory of the conversation. ## How does the local connection work? The app publishes a handshake file when it starts, and the connector reads it before every call. There is no port to pick, no key to paste and no account to make. When StoryFolder's worker comes up it writes a small file into your user folder holding the port it took and a token for that launch, readable only by you. The connector reads that file on every request rather than caching it once, because a worker that is restarted issues a new token and a cached one would stop working for the rest of the session. Every request goes to `127.0.0.1`, the loopback interface, which does not leave the machine. Two consequences follow. If StoryFolder is not running, every tool says so in a sentence rather than failing obscurely, and the fix is to open the app. And the transport being local is not the same as the conversation being local: the assistant is a program made by somebody else, and what it retrieves it may send to its own provider. Treat a confidential shot note the way you would treat anything you paste into a chat window. Read-only mode does not change that; it stops writing, not reading. ## What happens when an assistant changes something? It goes through the same route your own edits do, so it lands in version history badged as an assistant's work. Writes from the connector go through the same per-video routes your own edits do, so they pass the same capture step that records a restore point for a manual edit. A request that would change nothing captures nothing, which is why an assistant re-sending a value it already wrote does not litter the history. The header identifying the connector becomes the `actor` on that point, and version history draws a badge on any point whose actor is not you. So the history is not just "something changed at 14:32"; it is "the assistant changed this, here is what it touched, here is the state before". One request is one restore point, not one per shot. An assistant tagging twenty shots sends that as one call, so it is one entry and one undo, the same as a multi-select edit made by hand. Previewing a point writes nothing at all, and reverting captures the current state first, so a revert you regret is itself revertible. [What version history covers and what it does not](https://storyfolder.com/blog/version-history-and-copy-paste-metadata) is the fuller account, and the exclusion worth knowing here is that [AI Autofill](https://storyfolder.com/blog/ai-autofill) creates no restore point at all. An assistant's writes are recoverable; an Autofill run is not. Edits also show up live in the open window. You do not have to reload anything to watch a board fill in. ## What changes in read-only mode? Seven tools disappear. Read-only is an environment switch, exposed as a checkbox during setup, and it removes the writing tools from the list the assistant is offered rather than refusing them when they are called. What goes: `update_project`, `create_metadata_field`, `set_frame_metadata`, `set_video_metadata`, `set_video_metadata_batch`, `import_video` and `create_export`. What stays: listing projects and folders, reading a project, reading your metadata fields, searching, fetching frames, checking and listing exports that already exist, and reading version history. The assistant is not asked to behave and then trusted to. The tools are not in its list, so there is nothing to be talked into. You can change your mind later; it is a checkbox, not a commitment. ## How do you point an assistant at a 461-shot project safely? Narrow on the server side, then act on explicit ids. The failure mode is a model asked to consider everything at once, and the fix is to make every step name what it is operating on. - Ask for list_projects and pick the project you mean by its id. - Have it run search_frames scoped to that project with a real condition, and read the count it comes back with. A search that returns everything is not a search. - Have it fetch the frames for a dozen of those shots and actually look at them before it writes anything. - Have it write to the shots it just named, not to "the rest". - Ask it what it changed, then open version history and check the badge and the entry against what you expected. - If an export is the point, let create_export queue it and follow the job rather than waiting on it. Twelve frames per call is the hard edge here, so a large board is several passes by construction. That is a feature of the pacing: an assistant that has to ask for shots in batches is one whose work you can still follow. ## Where does this stop? At the edge of your own library, and at the edge of a conversation you started. The connector reads the running app, not your drives, and nothing happens in the background when you are not talking to it. There is no shared permission model, no user accounts, no watch folder, no ingest, no proxy storage and no record of where your media lives on which disk. That is a different category of product and StoryFolder is not it; [what a small team actually needs before reaching for one](https://storyfolder.com/blog/cataloging-b-roll-across-clients-without-a-mam) is a separate question. Plan limits still apply to what an assistant does: it cannot export a spreadsheet your plan does not include, and it cannot create custom fields on a plan without them. And the assistant can be wrong. Version history makes its work auditable; it does not make it correct. ## FAQ **Does StoryFolder work with ChatGPT?** Through Codex, OpenAI's assistant tool, in the Codex app, the CLI or an editor sidebar, signed in with your ChatGPT account. The ChatGPT desktop chat window is not supported yet. **Does the assistant get my whole library?** No. It gets what it asks for during the session: search results, the fields you have, and up to twelve frames per call. Whatever it receives, it may send on to its own AI provider. **Can I stop it changing anything?** Yes. Read-only mode removes all seven writing tools from the list it is offered, leaving nine that read. **Can an assistant import and export?** Yes, with `import_video` and `create_export`, and it follows an export as a background job rather than waiting on it. Plan limits on outputs still apply. **Can I undo an assistant's edits?** Yes. A write that changes something mints a restore point badged as the assistant's, and one request is one entry, so twenty shots tagged at once is one undo. **Does StoryFolder have to be open?** Yes. The connector reads a handshake file the running app publishes, and if the app is closed every tool says so. **Does it cost anything?** Connecting an assistant is free on every tier. What you pay for is your assistant, and the plan limits that already apply to exports and custom fields. **Can I connect from Claude or ChatGPT on the web or my phone?** No. The connector runs on your computer and answers on loopback, which a browser tab or a phone cannot reach. --- # Why StoryFolder 0.4 is faster: native builds, GPU acceleration and a rebuilt interface URL: https://storyfolder.com/blog/how-we-rebuilt-storyfolder Author: StoryFolder Published: 2026-09-02 Tags: Release, Production Reading time: 8 min Native Apple silicon and Intel builds, GPU-accelerated speech, a virtualized board and work off the UI thread: why StoryFolder 0.4 feels significantly more responsive. *Last updated: 2 September 2026.* StoryFolder 0.4 is faster, and the interface is significantly more responsive. The app draws through your graphics hardware instead of compositing in software, the shot board draws only the cards your screen can show, the heavy work runs in a separate process so the window never waits on it, and on Apple silicon the app, that process and the speech engines are all native builds. The features riding on top of this are in the [StoryFolder 0.4 release notes](https://storyfolder.com/blog/storyfolder-0-4). This page is about what changed underneath them. ## What makes the interface more responsive? Hardware acceleration is on, so blur, transforms and animation are composited by the GPU instead of being redrawn by the processor every frame. Anything that moves in front of a modal or a scrim is now the graphics card's job. The shot board is the other half of it. The board measures its own grid, works out which cells your viewport can show, and draws those. Scrolling a board of several hundred shots costs about what scrolling a board of twelve costs, and a card's thumbnail and fields are resolved as that card is drawn. Following the playhead, jumping to a search result and dragging a marquee are all computed against the scroll position, so they reach shots that are not currently drawn. The library list got the same treatment from the other direction. A video row carries a word count for its transcript rather than the transcript itself, so scrolling a large library no longer reads every segment of every transcript to show you a number. That is what makes search across [folders, collections and quick filters](https://storyfolder.com/blog/library-folders-collections-quick-filters) something you can type into at full speed. ## Is there a native Apple silicon build? Yes. On an Apple silicon Mac, the app, the background worker and the speech engines are all arm64 builds, with nothing running under translation. Intel Macs and Windows x64 each get their own build. They have to be separate builds, because the parts that are not JavaScript cannot be cross-built. The speech recogniser, the speaker engine and the database binding are per-architecture artifacts, and each one is produced on a machine of that architecture and refuses to build if the wrong one is present. That is why the [install page](https://storyfolder.com/help/getting-started/install) hands you a specific download for your machine, and why the site works out which Mac you are on before it offers you a link. One thing worth knowing if you have been running StoryFolder on an M-series Mac for a while: an installation that was set up as the Intel build keeps updating as the Intel build. The updater is deliberate about this, because handing an Intel installation arm64 code under the same filename would be silent, unrecoverable breakage. Moving to the native build is one download. ## Does the GPU do any of the transcription work? On Apple silicon, yes. The whisper.cpp build we ship for that architecture has Metal compiled into it, so the graphics hardware does the work of transcribing. The Intel and Windows builds are compiled to a conservative instruction-set baseline instead, with no AVX or AVX2. That costs real transcription speed and buys something worth more than the speed: the same binary runs on an older processor, and on an Apple silicon Mac still running the Intel app through translation, without failing on an instruction the machine cannot execute. Correctness over speed is the right trade for a feature you cannot debug from where you are sitting. ## What is in the speech stack, and where does the audio go? All of it runs on your machine, on audio pulled from the file already on your drive. Nothing is uploaded to be transcribed. Transcription is whisper.cpp 1.9.2, spawned as its own process, with eight models across four sizes and a multilingual `small` as the default. Speaker identification is sherpa-onnx running pyannote's segmentation 3.0 model alongside a speaker embedder, natively in C++, with no Python, no PyTorch and no GPU required. In front of both sits Silero voice activity detection, which keeps the recogniser from running inference over stretches with no speech in them. That is the mechanism that stops a music passage coming back as invented dialogue. We chose these three for the balance they strike between accuracy, speed on a laptop, and audio that never leaves the machine. The engines and models download once, and every file is checked against its published length and SHA-256 digest before anything uses it. A file that does not match never reaches its final path, so a corrupted download cannot become a permanently wrong transcript. [Transcription](https://storyfolder.com/blog/transcription) covers the models, the languages and how to correct what comes back. The one AI feature that is not local is [AI Autofill](https://storyfolder.com/blog/ai-autofill), which sends a frame per shot to a hosted vision model and says so on its own page. The [privacy page](https://storyfolder.com/help/security/privacy) is the authority on which is which. ## What happens to a long job if you quit the app? It is written down, so the worker picks it up again when you come back. Import, transcription, export and AI Autofill are each a row in the worker's own database with a status on it, rather than a promise held by whichever window started the job. When the worker starts, it resumes what was interrupted. A job that stops making progress is noticed and requeued, so nothing sits there forever, and the error you get says whether it stalled or was interrupted, because those need different things from you. An Autofill run records how far it got, shot by shot and field by field, so resuming does not pay again for work already done. Transcription sits deliberately outside the import's critical path. It is queued once the import reports Complete, and queueing it cannot throw, so a transcription that fails or finds no engine installed cannot fail an import or leave a video stuck part-way. ## What stops one failure from taking the whole app down? The heavy work runs in a separate process from the window, and that process is supervised. Video decoding, thumbnailing, transcription and export happen over there, which is why the interface stays interactive while a long job runs. That process has crash handlers whose one rule is that they never throw, guarded call by call, because an exception inside a crash handler is what turns a recoverable fault into a dead worker. If it dies anyway, the app restarts it and issues a fresh access token for the new one; the window reads the current token per request, so a restart is usually something you do not notice. That local connection is bound to loopback and requires the token, published for each launch before anything is listening, so nothing else on your machine can read your library by guessing a port. Above that, every edit gesture takes a restore point before it writes, one per gesture rather than one per shot, so a change written across forty shots is one entry and one undo. [Version history](https://storyfolder.com/blog/version-history-and-copy-paste-metadata) covers what it captures. Mac builds are signed, notarized and run under the hardened runtime, and crash and error reporting is opt-in with an opt-out in the account pane. ## How is a release tested before it reaches you? With 234 test files covering the interface, the state layer, the worker's API and the [assistant connector](https://storyfolder.com/blog/connect-an-assistant), run on the same machine that builds each artifact. A release build compiles the app and the worker, runs the suite, and only publishes if it passes, on all three release machines. Two more layers sit above that, and both treat the app as a black box. One launches the installed, signed and notarized build itself and drives the real interface through import, export, library search, metadata edits, transcript correction, plan gating and the assistant's tools. The other provisions a disposable machine, installs the real package on it, and walks cold launch, sign-in, import, export and auto-update, which are the parts no test running inside the app can reach: installers, the operating system's own security prompts, the hand-back from browser sign-in, and an update that quits and relaunches the process being tested. ## FAQ **Is StoryFolder 0.4 faster?** Yes. The interface composites on the GPU, the shot board draws only the cards on screen, and on Apple silicon the app, the worker and the speech engines are all native builds. **Does StoryFolder run natively on Apple silicon?** Yes. The app, the background worker and the speech engines all ship as arm64 builds, and none of them runs under translation. **Will an existing install switch itself to the native Apple silicon build?** No. An installation set up as the Intel build keeps updating as the Intel build, on purpose. Download once from the install page to move to the native one. **Does transcription use the GPU?** On Apple silicon, yes: that build of whisper.cpp has Metal compiled in. The Intel and Windows builds run on the processor at a conservative instruction-set baseline so they work on older machines. **Is any audio uploaded for transcription or speaker identification?** No. whisper.cpp, sherpa-onnx and the Silero voice-activity model all run on your machine. AI Autofill is the feature that makes a cloud call, and it sends frames rather than audio. **What happens to an export if I quit the app halfway through?** It is a row in the worker's database with a status, so the worker resumes it at startup. A job that stops making progress is requeued rather than left running. **Which machines does StoryFolder 0.4 run on?** macOS on Apple silicon, macOS on Intel, and Windows x64. Each gets its own build of the app, the worker and the speech engines. **Can something else on my computer reach StoryFolder's local API?** No. It binds to loopback and requires an access token that is issued fresh for each launch of the worker, including after a restart. --- # Folders, collections and quick filters: a library that keeps up with your footage URL: https://storyfolder.com/blog/library-folders-collections-quick-filters Author: StoryFolder Published: 2026-09-02 Tags: Release, Production Reading time: 8 min Folders file videos, collections hold shots from across your library, quick filters save a search with its chips. How the three fit together and what one search actually covers. *Last updated: 2 September 2026.* Folders file videos, collections hold hand-picked shots from across different videos, and a quick filter saves a search as a destination you can jump straight back to: what you typed, the filter chips you built and the card layout, together. Collections, quick filters and video-level metadata fields are new in [StoryFolder 0.4](https://storyfolder.com/blog/storyfolder-0-4); folders are not, and are here as context rather than as news. None of it manages where your media lives: StoryFolder indexes the videos you gave it, and which drive a file is on belongs to a different tool. ## What is the difference between a folder, a collection and a quick filter? What they hold, and whether their membership changes on its own. Holds Membership Changes when metadata changes Folder Videos You put them there; folders nest No Collection Shots, from any number of videos You add them by hand, with a count on the rail No Quick filter Nothing; it is a saved search Whatever matches right now Yes All items The whole library Everything Not applicable A folder is the filing cabinet: a video lives in one, folders live inside folders, and opening one shows and searches that folder plus everything underneath it, not just its direct children. A collection is the pile on the desk: you select shots in the editor or the library, choose **Add to collection**, and they stay in that collection whether or not anything about them changes later. An open collection has its own search box and filter bar, so a big selects pile is still something you can type into. That is the point of a collection, and the reason it is not a quick filter under another name. A quick filter is the saved question, and the whole question gets saved. **Save as quick filter** appears as soon as there is anything to save, a typed query on its own included; name it and it becomes a row in the rail with its own address. Arriving there puts the query back in the box and applies the chips and the card layout; leaving puts your own view back, so a quick filter is a place you visit rather than a state that follows you around. Change any of the three and the row offers to save the change. Results are recomputed on arrival, so a shot that has since earned the rating you filtered on is simply there. ## How do you organise a real client archive? Put the stable things in folders, the facts about the whole job in video metadata, the picks in collections, and the questions you keep re-asking in quick filters. - In the library, create a folder and drag a project into it. Nest by account and year if that is how your work divides; folders do not follow disk paths and moving a project between them does not move a file. - Open Settings → **Video Metadata** and add the fields that describe a whole job rather than a shot. Custom fields are included on every [plan](https://storyfolder.com/pricing). - Fill those in once per project instead of once per shot. That is the point of them, and it is [the fix for a schema where the client name was being typed on every row](https://storyfolder.com/blog/logging-footage-with-custom-fields-client-job-number-location). - Select shots across two or three videos and add them to a collection: the delivery set, the ones the client already saw, the ones you keep coming back to. - Build the filter you rerun most, save it as a quick filter, and give it a name that says what it answers rather than what it contains. Everything in the rail renames in place on a double-click and carries a right-click menu, and every folder, collection and quick filter has its own address you can keep as a link. Deleting a collection or a quick filter asks first; neither ever deletes a video. ## What does one search actually cover? The whole library, from **All items**, across four things at once: the titles and descriptions of your videos, the fields you type into on a shot, the fields you type into on the video itself, and transcript text. Every result names which of those it matched on, so a video that came back because somebody said a word on camera is visibly different from one that came back because you tagged it. `/` puts the cursor in the box from anywhere in the library, and ⌘F, Ctrl+F on Windows, does it even from inside another field. Searching or filtering from All items covers the whole library, filed videos and all, while opening a folder narrows the same search to that folder and its subfolders. Finding it anywhere and finding it in this account differ by where you are standing and nothing else. Matching is literal. Typing `wide` finds the shots with `wide` in a value, and leaves alone the shots that are wide but were never described. Type two words and both have to match, in any order and in the same value, so `dock warehouse` finds a `Location` reading `Warehouse dock` and `dock forklift` finds nothing. Nothing here inspects the picture. The index is only as good as what you or [AI Autofill](https://storyfolder.com/blog/ai-autofill) recorded, and the transcript half only exists for videos where somebody was talking, which is why [searching by what is in a shot and what is said in it](https://storyfolder.com/blog/search-footage-by-whats-in-it-and-whats-said) is one problem with two layers. Text, dropdown, tag and number values are the ones the box reads, on a shot or on a video alike, so typing a client name finds the project it is filed against and typing `24` finds the shots whose `Focal length` says so. Rating and checkbox fields have no text to match and are reached with a filter chip instead. Number is new: it filters with *is more than*, *is less than* and *is between*, and it exports to a spreadsheet as a real number you can total. [What each field type is for](https://storyfolder.com/help/notes/field-types) covers the rest of them. The chips and the box work together: filter to a client, then type the phrase. Results are ordered by why they matched, with the conditions you built ranked above a field hit and a field hit above a transcript hit. ## Why keep video metadata as well as shot metadata? Because some facts are true of the whole job and typing them on every shot is how a schema rots. `Client`, `Job#` and `Status` describe a project; `Shot Size` and `Usable` describe a moment. Video fields are a flat list, with no categories to arrange, because their values sit on the video itself. You add them in Settings → **Video Metadata**, fill them in on the project, and then filter whole projects by them or find them by typing their value into the same box everything else goes into. The boundary worth knowing is that [AI Autofill](https://storyfolder.com/blog/ai-autofill) does not touch video fields. There is no Autofill switch in that pane at all, because a client name is not in the frame. Those facts are typed once by the person who knows them. ## How do quick filters cut a 461-shot review down? By turning the criteria into the destination, so the queue is already small when you arrive rather than something you assemble again each time. Filter to the client, then to the shot type you are auditing, then save it. The next time that question comes up it is one click on the rail, and if the underlying values have moved the answer moves with them. Two things make that trustworthy in practice: the result count, which tells you immediately whether the filter is doing what you think, and the reason line on each result, which tells you why a particular shot is in front of you. The queue carries through to what you hand over. An export or a publish takes the shots your current query and filters leave standing, so "filter to four stars, then publish the selects" gives you the selects. Where a quick filter is the wrong tool is when the set has to stop moving. A delivery list that keeps changing because somebody edited a field is not a delivery list. That is a collection, chosen by hand and staying chosen. ## When do you need something bigger than this? When the problem is the files rather than the footage. Shared permissions, ingest from a watch folder, proxy storage other people can pull from, and a catalogue of which drive holds what are all outside what a local visual index does. Sending a selection to an NLE is not: the Editorial output writes an EDL, FCP7 XML or FCPXML selects timeline — one imported video per board, no AAF, and nothing read back in. StoryFolder indexes the videos you import, not your storage, and it does not know or track where the originals live. [What a three-person team actually needs before reaching for an asset manager](https://storyfolder.com/blog/cataloging-b-roll-across-clients-without-a-mam) is a longer answer, and it is often "less than you think". ## FAQ **Are folders new in StoryFolder 0.4?** No. Folders predate 0.4. Collections, quick filters and video-level metadata fields are the new library pieces. **Can a collection hold shots from more than one video?** Yes, that is what it is for. Select shots anywhere, choose **Add to collection**, and the rail shows the collection with its shot count. An open collection has its own search box and filter bar. **Does searching from All items cover every project?** Yes. A search or a filter run from All items covers the whole library including videos filed in folders; opening a folder narrows it to that folder and its subfolders. **What does a quick filter actually save?** The whole search: the query, the filter chips and the card layout, and a query with no chips can be saved on its own. Its results re-answer on arrival, where a collection stores the shots themselves and does not. **Is library search fuzzy?** No, it is substring matching against your text, with every word of a multi-word query having to match in any order. The transcript editor's own search box is the fuzzy one. **Can I search by a Client or Job number kept on the video?** Yes. Text, dropdown, tag and number fields are searchable by typing whether they sit on a shot or on the video; rating and checkbox are filter-chip only. **Do I need Pro for any of this?** No. Collections and quick filters are free, and so are custom fields, shot or video. **Does StoryFolder track which drive my footage is on?** No. It indexes the videos you import, not your storage. --- # Transcription that stays on your machine URL: https://storyfolder.com/blog/transcription Author: StoryFolder Published: 2026-09-02 Tags: Release, Production Reading time: 8 min StoryFolder transcribes with Whisper on your own machine, on by default after import, with optional speaker identification. What leaves the computer (nothing) and what to check. *Last updated: 2 September 2026.* StoryFolder transcribes with whisper.cpp running as a process on your own computer, on audio taken from the file already sitting on your drive, and it joins every line to the shot it was said in. New in [StoryFolder 0.4](https://storyfolder.com/blog/storyfolder-0-4). It is on by default: when an import finishes, StoryFolder queues the transcription itself, using the `small` multilingual model. **Identify speakers** is a separate switch, off by default and slower when it is on. The engine and a model download once and need the network to do it, the recogniser gets things wrong and marks the words it was least sure about with an underline rather than a score, and a video with no speech in it comes back saying so. Transcription, speaker identification and the transcript and subtitle exports are all free. ## What runs on your machine, and what still needs the network? The audio never leaves. Whisper runs locally, speaker detection runs locally, and no third-party transcription account is involved in the job. The network is needed once, at the start, to fetch the engine build for your platform and a model file, and after that a transcription runs with the network off. That is a statement about where the bytes went, not a certification, and StoryFolder makes no compliance claim on the strength of it. [The longer argument about local transcription](https://storyfolder.com/blog/transcribe-footage-locally-without-uploading), including what to say when a client asks, is its own page. Two things nearby do talk to the internet, and they are worth naming in the same breath so nobody reads "local" as an app-wide promise. [AI Autofill](https://storyfolder.com/blog/ai-autofill) sends one frame per shot to StoryFolder's server and on to a hosted vision model; it is the picture half of the index and it is the opposite of this feature in every respect, including the plan it sits on. Licence activation talks to StoryFolder's server too. The [privacy help page](https://storyfolder.com/help/security/privacy) is the current authority on both. ## What happens when you import a video? It transcribes itself. Automatic transcription is on out of the box, and the moment an import reaches Complete the video is queued for transcription as a separate job. That separation is deliberate rather than incidental. Transcription is not part of the import's critical path, so a transcription that fails, is cancelled, or finds no engine installed cannot fail the import or leave you with a video stuck at 90%. You get the shots either way. The controls are all in Settings → **Transcription**: - **Automatic transcription.** The master switch. Off stops new transcriptions and leaves the ones you have readable. - **Download the model at startup.** On by default, so the first video you import already has something to run against. Off leaves the download until the first time you actually transcribe, which is what you want on a metered connection. - **Language.** Auto-detect, or one of 100. Worth setting by hand when the audio is quiet or switches languages mid-file. - **Translate to English.** Transcribes non-English audio straight into English instead of its own language. It needs a multilingual model; the English-only ones refuse the task. - **Identify speakers.** Off by default. - **Voice activity detection.** On by default. It keeps the recogniser off the stretches with no speech in them, which is what stops timings drifting across a long music passage. A per-run confirmation lets you override language, task, model, speaker detection and voice activity detection for one video without touching the global preference, which is how a single German interview gets handled inside an otherwise English project. ## Which model does StoryFolder download? `small`, the multilingual one. There are eight in the catalogue, four sizes in English-only and multilingual pairs, and the app labels them Tiny (English), Tiny (multilingual), Base (English), Base (multilingual), and so on up through Small and Medium. Size What the app shows Tiny 77 MB Base 147 MB Small 487 MB Medium 1.5 GB The English-only and multilingual builds of a size are the same download, which is why `small` multilingual is the default rather than `small.en`: defaulting to English-only would buy nothing and would cost anyone working in another language a second full-size download. `small` rather than something smaller because the multilingual builds are noticeably weaker than their English-only twins at the small end, and this is the size where multilingual becomes usable across languages. If everything you cut is in English, the English-only twin of the same size is the better pick. Each model carries its own controls: download with a live percentage, verify, which re-hashes the file on disk on demand, and offload, which deletes it. A model counts as installed only once the whole file has arrived intact. Settings → Storage shows what the models, the recognition engine, the speaker-detection assets and the voice-activity model are costing you in disk, and offers to free it. ## How does speaker identification work? It runs a separate local engine over the audio, marks out who is talking when, and labels each line with the speaker it came from. It is off by default and the app's own switch tells you it is slower with it on. The engine is `sherpa-onnx-offline-speaker-diarization`, running pyannote's segmentation model plus a speaker embedder natively in C++. No Python, no PyTorch, no GPU requirement, and, like the recogniser, a separate process rather than a library linked into the app. It is not bit-identical to pyannote's reference pipeline, and no accuracy figure is published for it here. What it gives you is speakers, not identities. They arrive as anonymous labels, and the useful work is the correcting: - **Rename** a speaker and the name propagates through the transcript, the exports and the printed storyboard. - **Merge** two speakers when one person was split across two labels. - **Assign by selection** when the split is inside a line: drag across the words, pick the speaker, and StoryFolder splits the segment at word boundaries rather than reassigning the whole line. The failure to plan for is the opposite one. Two people talking in the same scene can land under a single automatic speaker, and no amount of renaming fixes that until you have reassigned the words. Where nobody is working from a script, [correcting speakers by hand is most of the job](https://storyfolder.com/blog/logging-footage-where-nobody-is-scripted), and this is the tooling for it. If the engine is unavailable on a machine, the transcript keeps its single speaker rather than failing. ## Where do the words end up? In the same index as the pictures. Each transcript segment carries its own start and end, so it maps onto the shots it overlaps, and from there the text is searchable next to your metadata rather than as a separate document. Reading modes are the visible half of that: **By shot**, By speaker, Continuous, Captions and Plain text. By shot is the one that matters, because it is the transcript laid against the shot grid rather than beside it. Search is the other half. Type in the library box and a video comes back on a transcript hit with a reason line saying that is what it matched, in the same result list as a metadata match. The transcript editor has its own search box, which is a different and cleverer thing: it tolerates a word the recogniser split or misheard, and [recovering a misheard word](https://storyfolder.com/blog/transcript-search-misheard-words) is its own page. An assistant reaches the same text through the connector's search tool. Exports are SRT, WebVTT, plain text, CSV and Fountain, under **Transcript & Subtitles** in the export panel, and none of them is behind a plan. The CSV is the one worth knowing about, because it carries the shot number alongside the start, end, speaker and text, so the file already knows which picture each line belongs to. Speaker names print in SRT and VTT once there is more than one speaker. Statistics adds a transcript block: total lines, total words and each speaker's share. ## What should you check before you trust a transcript? Names, numbers, and the places where the audio was hard. Whisper degrades on heavy accents, on people talking over each other, on noisy location sound, and on whatever specialist vocabulary your client's industry runs on; product names and surnames are where you will notice it first. StoryFolder's answer is a dotted underline under the words the model was least sure about, and no number anywhere, because Whisper's own confidence is not calibrated well enough to print as a percentage. The underline is a Display toggle and it is off until you turn it on. On a long project, check the ends rather than the middle: the first and last minutes, the longest shot, one shot with music and no dialogue, and one where two people overlap. A file with music and no speech comes back as "No speech found in this video", which is a result about the audio and not a failed run. Then check the one export you are actually going to hand over, because a subtitle file that reads well in the app and badly in someone else's player is a problem you want to find now. ## FAQ **Does StoryFolder upload my video to transcribe it?** No. whisper.cpp runs as a process on your own machine against audio pulled from the local file. The engine and a model download once from StoryFolder's servers. **Does transcription start automatically after import?** Yes. Automatic transcription is on by default, and a video is queued for transcription once its import reaches Complete. **Which model is the default?** `small`, the multilingual one, which the app shows as 487 MB. There are eight models across four sizes in English-only and multilingual pairs. **Is speaker identification free?** Yes, and so is transcription. **Identify speakers** is off by default, and the speakers it finds still need naming by hand. **Which transcript and subtitle formats can I export?** SRT, WebVTT, plain text, CSV and Fountain, none of them gated. The gated export is the Spreadsheet / Shot List. **Does speaker detection need Python or a GPU?** No. The engine runs natively as its own process, with no Python, no PyTorch and no GPU requirement. **Can transcription find b-roll with no dialogue?** No. It indexes speech, so a silent shot needs shot metadata instead, which is [a different problem with a different answer](https://storyfolder.com/blog/how-to-find-footage-with-no-dialogue). **Is there a Linux build?** No. Engine builds are published for macOS on Apple silicon, macOS on Intel, and Windows x64. --- # Version history and selective paste: the small things in 0.4 URL: https://storyfolder.com/blog/version-history-and-copy-paste-metadata Author: StoryFolder Published: 2026-09-02 Tags: Release, Production Reading time: 7 min StoryFolder records a restore point before every edit gesture and lets you preview any of them before restoring. Plus copy and paste of selected fields across a run of shots. *Last updated: 2 September 2026.* StoryFolder records a restore point before each edit gesture, including the shot metadata you type by hand, lets you look at any of them without changing anything, and puts the state back if you ask. ⌘Z, Ctrl+Z on Windows, takes the last one back straight after you make it. New in [StoryFolder 0.4](https://storyfolder.com/blog/storyfolder-0-4), alongside **Copy notes & metadata** and **Paste notes & metadata**, which move values from one shot to a set of others through a plan you approve first. Both are free on every tier. What version history covers is edit gestures, not everything that happens to a video: an import is not in it, and an AI Autofill run is not in it either, which is the one exclusion worth reading twice. ## Which edits does version history record? The ones that come through the app as a deliberate change to a video: the shot fields you type into on a card or in the inspector, the transcript you correct, the title, the notes, the folder it sits in, and the four controls that re-cut the board. One restore point per gesture, holding the state before the change, labelled with what changed and who changed it. The list, in the words the history uses: - **metadata edit**, the shot fields you type by hand - **video metadata edit**, the project-level ones - **transcript edit**, including a speaker correction - **rename project** and **edit notes** - **move to folder** - **change shot detection**, **change minimum shot length**, **merge shots** and **split shot**, the four controls that re-cut a board That last group is the one people are surprised by. Changing detection sensitivity on a finished board rewrites every shot boundary in it, and it is captured, so it can be put back. One gesture is one point, not one point per shot. A change written across forty shots arrives as a single request and becomes a single entry with a single undo, exactly as it felt when you made it. ⌘Z reverts the most recent one without the history being open, and pressing it again walks back another step, so mistyping a field and immediately regretting it costs one keystroke rather than a trip through a modal. Entries carry a timestamp, a label, a bar showing how much they changed, marks on the shots that moved, and a badge when the actor was not you. That badge is how [an assistant's writes](https://storyfolder.com/blog/connect-an-assistant) are told apart from your own: the connector identifies itself on every request, and the history keeps that on the record. ## What happens when you preview and then restore? Previewing shows you a version without touching anything, and restoring records the current state first, so the restore is itself undoable. Open Version history from the editor toolbar and it comes up in two panes: the entries on one side, and the selected one on the other with its own poster frame and the shots it changed marked. Nothing in that view writes. The previewed shot list is worked out in memory and thrown away, which is a property of how it is built rather than a promise about how carefully it is used. Restore writes the snapshot back and re-derives the board once. Before it does, it captures a point holding what you had, so redo needs no separate machinery: the point it just made is the way back. A failed load and an empty history say different things, because being told your edits were never recorded when a request merely timed out is its own kind of damage. What is stored is the annotation and the cut, not the media. Version history does not version your video file, and it is not a record of rough-cut revisions. If the question is which cut a client note belongs to, [that is a different problem](https://storyfolder.com/blog/how-to-give-an-editor-shot-by-shot-feedback-on-a-rough-cut). ## How does selective paste work? Copy takes the metadata off one shot into a buffer inside the app; paste opens a plan where you pick which of those fields to write, which shots to write them to, and whether anything already there is left alone. - Select a shot and choose **Copy notes & metadata** from the inspector, in the editor or in the library. - Select the shots you want it on and choose **Paste notes & metadata**. - Tick the fields. The buffer remembers everything the source shot had; the plan is where you narrow it to the two that actually transfer. - Pick the scope: this shot, the shots you selected, or all of them. - Leave the mode on **Only fill empty fields**, which means exactly that and leaves a filled field alone whatever it holds, or choose to overwrite and read the counted warning. - Check the count line, which names fields and shots, and commit. The counts and the writes come from one pass over the same fields and shots, so the number on the warning, the number on the button and what the button then does cannot drift apart. The whole paste is one gesture, so it is one entry in version history and one undo. This is an in-app buffer and not your system clipboard, which is deliberate: shot metadata is a keyed record with no text form anybody would want pasted into a text field, and sharing the system clipboard would put every copy you make in a notes box in competition with it. The tradeoff is that this buffer is StoryFolder's own. It does not travel to other applications. ## How do you use these on a 500-shot board? Narrow first with a filter, then paste once into what is left, then check the count rather than the thumbnails. Filter the board down to the shots that should share a value, copy from the one shot you have already got right, and paste to the selection with **Only fill empty fields** on. Then read the number the modal gave you and compare it against the number of results the filter showed. If those two disagree, stop, because something in your selection is not what you thought it was. Spot-check a few targets from the start, middle and end plus one shot that already had a value, to confirm the mode did what it said. Then open the history and confirm there is one entry and not several. That is the check that the whole thing was one gesture, and it is also your route back if the answer was wrong. ## What do these controls not cover? Imports, AI Autofill runs, your media files, and any value that was already wrong before you started. An [AI Autofill](https://storyfolder.com/blog/ai-autofill) run writes directly and mints no restore point, so version history has nothing to offer it. The guard on Autofill is the same **Only fill empty fields** rule, which stops it touching what you typed, plus reviewing a small run before widening it. Nothing about version history retroactively makes an Autofill run reversible, and treating it as a safety net for one is the single most expensive misreading available here. Importing a video is not captured either, and neither is anything that happens to the file on disk. Version history is a record of what you told StoryFolder about a video, which is worth having and is not the same as a backup. ## FAQ **Can I undo an AI Autofill run?** No. Autofill creates no restore point. Version history covers edits you make by hand, an assistant's writes and a paste. **Does ⌘Z work right after I change something?** Yes. ⌘Z, Ctrl+Z on Windows, reverts the most recent restore point straight after the change that made it, and pressing it again walks back another step. **Can I undo an assistant's edits?** Yes. An assistant's writes are captured like your own and carry a badge saying they were not yours, so you can find exactly those and put them back. **Does pasting to fifty shots create fifty history entries?** No, one. A restore point is minted per gesture, not per shot. **Can I paste only into empty fields?** Yes. **Only fill empty fields** is a write mode in the paste plan and it leaves a filled field alone whatever it holds. **Does Copy metadata use my system clipboard?** No, it is a buffer inside StoryFolder. It does not travel to other applications. **Does previewing a version change anything?** No, the preview is derived in memory and nothing about it is written back. Restoring does write, but it captures the current state first, so it is itself reversible. **Does version history store my video file?** No. It stores the metadata, the transcript, the titles and notes, the folder, and the shot-detection settings that determine the cut. --- # Best footage logging software for post-production (2026) URL: https://storyfolder.com/blog/best-footage-logging-software-for-post-production Author: StoryFolder Published: 2026-09-02 Tags: Production Reading time: 12 min Footage logging is five different jobs, and no tool does all of them. Post-production logging software compared: local shot index, offline-drive catalogue, NLE-oriented desktop tool, MAM and a spreadsheet. *Last updated: 2 September 2026. Every price and capability below carries the date it was last recorded. The figures marked 2 September 2026 were read from the vendor's own page that day; the rest were recorded on 1 September 2026 and have not been re-checked since. Confirm current price and capability with the vendor before you buy anything.* You can search a transcript, find the sentence where someone says "and that's when the whole thing changed," and still not be able to find the silent establishing shot of the building, the client-specific b-roll clip, or which of six drives it's actually sitting on. Footage logging is not one problem, and no tool here solves all of it. We publish this comparison and StoryFolder is one of the entries, so weigh the recommendations accordingly. Every price and capability below carries the date it was last recorded, and we concede plainly where StoryFolder doesn't fit. **No single tool logs footage well for every job. StoryFolder is the shot-level visual index for one owner on a local machine; Fast Video Cataloger locates clips on offline Windows drives; Kyno inspects media for an NLE handoff; iconik and axle.ai run shared, governed storage; Airtable is a manual log for a disciplined team.** Say the limit early: StoryFolder is not a media asset manager. It doesn't track which drive your footage lives on, doesn't index a folder you haven't imported, doesn't sync across a team's shared storage, and doesn't rebuild the original edit that made your footage. If any of those is the actual job, a catalogue or a MAM in the table below wins it outright, and one real account shows what StoryFolder is for instead. Filling in metadata by hand is normal work: in our own analysis of 295 paying accounts, recorded 1 September 2026, one account had the same three fields (`Client`, `Job#` and `Title`) filled in 3,852 times each, 11,556 entries in total, across dozens of boards. That's someone typing the same three things over and over because there was no better place to put them, which is exactly the gap a local shot-level index is for. ## What kind of footage logging problem do you have? Before picking a tool, work out which of six jobs you actually have, because "footage logging" covers all of them and no product covers all six: - **You need a schema:** consistent fields like client, job number, location, typed per clip or per shot. - **You need to find something by what's in the picture:** a visual index, searchable by description or tag. - **You need to find something by what was said:** transcript or speech search. - **You need to know which drive it's on:** an offline-volume locator. - **You need a team to share one library:** shared storage with permissions and governance. - **You need the result inside an NLE:** media inspection that hands off to an edit. This page is about logging footage after it's shot. On-set camera and continuity logging is its own category with its own tools. If your job is (1) or (2) on a machine you own, keep reading past the next section. If it's (4) or (5), skip to the software built for those jobs specifically; a shot-level index is the wrong tool for either. ## Which software is best for a local footage archive? For one person or a small team working off their own machine, the split is: StoryFolder for shot-level visual metadata and search, Fast Video Cataloger for knowing which offline Windows drive a clip lives on, and Kyno for inspecting media and moving selections toward an NLE. StoryFolder's [library search](https://storyfolder.com/help/editing/search) covers Text, Dropdown, Tag and Number fields, on a shot or on the video, plus the transcript, in one query, and it's a case-insensitive substring match where every word of a multi-word query has to match. Rating and Checkbox fields are reached through filter chips rather than the search box. It does not do fuzzy matching, and it does not search filenames or file paths. What it does do is useful: type a client name and get back both the shots someone tagged with it and the moment someone said it on camera. It's also not what "AI visual search" implies to some people, so don't go in expecting semantic search across footage nobody described. If a file gets moved to a new location, relink reconnects the source without losing any metadata already on the shots. Since 0.4 the same box reaches the transcript because transcription runs locally on import, and the library has collections for hand-picked shots and quick filters for the queries you rerun. [Local transcription](https://storyfolder.com/blog/transcription) · [the library controls](https://storyfolder.com/blog/library-folders-collections-quick-filters). Fast Video Cataloger works the other way round: its own order page promises you can "Search and browse even when video files are disconnected", across catalogues of 10,000-plus videos, so the drive can be sitting unplugged on a shelf when you search for what's on it. What that search actually matches on isn't stated there. Kyno, per its vendor pages, browses local and NAS media in place, reads and writes metadata, cuts subclips and hands selections and their metadata toward an NLE, which is the job StoryFolder does not do at all. We have not run any of the three against shared footage, so the table's "unverified" labels stand. ## Which software is best for a shared team library? If simultaneous users, shared proxies, role-based permissions or real media governance are requirements, look at iconik or axle.ai, not StoryFolder. iconik's Starter plan runs from a free Collaborator tier through Browse, Standard and Power seats, priced per active user per month, with pay-per-use AI credits on top, and its Professional and Enterprise plans are quoted by sales (iconik.io/pricing, read 2 September 2026). That's the cost structure of a real MAM. axle.ai publishes a cloud offer at $20 per terabyte per month, an on-premise MAM from $2,995 and its Tags product from $200 a month (axle.ai, read 2 September 2026), a storage-first way to think about the same job. StoryFolder's flat monthly or annual price reflects the opposite choice: it doesn't store or manage your original media centrally, so there's no usage dimension to price. Airtable sits in an odd spot here: genuinely collaborative, with views and automations, but it's a database sitting beside your footage rather than a video-aware tool. There's no shot detection, no media-aware playback, and no timecode; you're building the log structure yourself and pasting in links. ## Do transcripts solve footage logging by themselves? No, not for anything silent. The open-source [arkiv project](https://github.com/vulture-s/arkiv) says it indexed a "1,506-clip real production library (1,161 of them dialogue-free B-roll)", which is 77%. Those figures were read off the project's repository on 2 September 2026; the README doesn't say when that library was indexed, and the most recent test results it posts are dated 22 May 2026. That's one real library rather than a claimed industry average, but a useful gut check on how much of most footage a transcript alone will never reach. Transcription finds what's said. It does nothing for the establishing shot of the parking lot, the b-roll of hands on a keyboard, or anything else nobody talks over. StoryFolder's transcription runs on-device via Whisper, free, and your footage is never uploaded to be transcribed. AI Vision Autofill is a separate feature: a cloud-based call that sends a representative frame from each shot to a third-party vision model to fill in metadata fields you've turned on, included on every plan, with the free plan covering your first 100 shots. Keep those two apart, and [the help page on what goes where](https://storyfolder.com/help/security/privacy) spells out the split. Neither one is a semantic search over the footage itself. What you're searching, in both cases, is text that transcription or a person or Autofill actually wrote down. ## Can AI log footage using your own categories? Yes, with real limits worth knowing before you rely on it. StoryFolder's AI Vision Autofill can fill in the [metadata fields](https://storyfolder.com/help/notes/custom-fields) you've enabled, using your own field names rather than a generic tag vocabulary, but every field starts with Autofill switched off, so nothing gets touched until you turn it on per field. Dropdown, Checkbox, Rating and Number fields are constrained to their own valid values; it cannot invent a new dropdown option. Tag and Text fields are open-ended by design, since a text field's whole point is that it can hold anything a person could type, which also means that's exactly where a model can write something plausible and wrong, like a job number nobody typed. A value outside a field's valid options is silently dropped rather than flagged, and there's no undo for an Autofill run specifically. There is no published accuracy figure for it, so judge it on your own footage before you rely on it. Two global switches shape how far it reaches, and [the full Autofill contract](https://storyfolder.com/blog/ai-autofill) sets out the rest: *Only fill empty fields*, which never overwrites something a person already typed, and *Autofill on import*, which is off by default, because running a vision model automatically over every shot in a long import would be hundreds of calls nobody asked for. Two other tools in the table sell AI on this axis, and they sell a different shape of it. iconik's pricing page lists transcription, object and scene detection, facial recognition and translation, bought as AI credits on top of the per-seat price. axle.ai's own site lists trainable faces, scene understanding, logo and text recognition, spoken-word search and vector search across its cloud, on-prem and Tags products. Neither page says whether those results can land in field names you defined yourself, which is the axis this section is about. **Unverified: check the vendors' own documentation before comparing either vendor's AI tagging with ours.** Both capability lists above were read from those vendors' own pages on 2 September 2026. Airtable, Fast Video Cataloger and Kyno are not marketed on automatic visual description on the pages cited here. ## What should a useful footage log export? Whatever tool you use, the export needs to carry: a stable identifier per clip or shot, a thumbnail or preview, start/end/duration, the descriptions or categories someone entered, transcript context where it exists, source or location information, and a route into whatever comes next, whether that's an edit, a client deliverable or an archive record. StoryFolder's [spreadsheet export](https://storyfolder.com/help/exporting/spreadsheet) gives you a thumbnailed XLSX and CSV together, plus a PDF, per-shot images and per-shot clips, and the timecode in that spreadsheet is elapsed from the file's start rather than source timecode. Selections do land back in an edit: switch Editorial on and the shots you kept are written as a selects timeline — `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` — alongside a rendered H.264 selects reel. EDL and FCP7 XML open in Premiere, Resolve and Avid; FCPXML opens in Final Cut Pro and Resolve. Editorial is Pro; the reel is on every plan. **Read the scope before you plan around it:** the timeline is cut against the one file you imported, at that file's frame rate, with a synthetic reel name and the real filename on a comment line. It is a selects assembly against that file, not a rebuild of the original edit and not an assembly across a library of clips — and there is no AAF, nothing reads back in, and a rendered video still carries no camera-original filenames, reels or handles. Metadata is the other half of the boundary: the timeline carries shot boundaries and clip names, not your fields, which still travel as the spreadsheet or the PDF. Airtable's export is only as good as what your team typed in, since it has no media-aware fields at all. Kyno and other NLE-oriented tools are still stronger where many source clips have to be handled together and their original metadata carried through. A MAM's export is stronger again where shared originals and proxies are involved, which is a different job from the one a one-owner shot index is built for. ## Which footage logging tool should you choose? - **Tiny archive, disciplined operator, no video-native needs:** Airtable or a spreadsheet. - **One owner, shot-level visual index on your own machine:** StoryFolder. - **Windows, need to know which offline drive holds a clip:** Fast Video Cataloger. - **Local or NAS media inspection with an NLE handoff:** Kyno. - **A team needs shared, governed storage:** iconik, or axle.ai's published per-TB tier. Whatever you pick, run it on one real project first: time how long it takes to bring footage in, describe it, find one silent b-roll shot again by search, reconnect a source that's moved, and hand a select to an edit. That tells you more than any table does. ## How do these tools compare at a glance? Tool What it actually logs and finds Price (as recorded 1 Sep 2026 unless the cell says otherwise) Strongest job Where it falls short **StoryFolder** Detects shots in a local finished video; six [field types](https://storyfolder.com/help/notes/field-types) (Text, Tag, Dropdown, Checkbox, Rating, Number); one search across metadata fields and transcript, substring rather than fuzzy Free: 6 boards, 50 visible shots/board, custom fields and your first 100 autofilled shots. Spreadsheet export and unlimited AI Autofill are Pro ([storyfolder.com/pricing](https://storyfolder.com/pricing)) One owner, shot-level visual index plus transcript, on a local machine Desktop Mac/Windows only; spreadsheet export, Editorial and unlimited AI Autofill are Pro; no drive catalogue, no sync, no MAM governance; the selects timeline it writes is cut against the one file you imported, with no AAF and no timeline import **Fast Video Cataloger** Windows desktop catalogue for video on local or offline drives: thumbnails, scene tags, search across 10,000+ item catalogues ([videocataloger.com](https://videocataloger.com/order/)) $9.90/month, $97/year, or $197 perpetual, one Windows PC per licence (same page, confirmed 2 Sep 2026) Knowing which offline volume holds a clip Windows only; **Unverified: the order page doesn't say what its search covers (read 2 Sep 2026), and we have run no hands-on test on shared footage** **Kyno** macOS/Windows media-management desktop app; local/NAS browsing, metadata, subclips, NLE-oriented handoff ([lesspain.software](https://lesspain.software/kyno/buy/)) Standard $159, Premium $349, 5-seat $1,570; renewals $79/$169 per year (same page, confirmed 2 Sep 2026, with live Buy Now links) Inspecting media and moving selections toward an NLE Desktop/local, not a browser-based shared MAM; now owned by Signiant; **Unverified: the buy page states no NLE-version compatibility, and we have not run the product. Verify it against the versions you edit in before relying on the handoff** **iconik** Hybrid/cloud MAM: storage integrations, proxies, metadata and search, review, asset and collection sharing, with transcription, object and scene detection, facial recognition and translation sold as AI credits ([iconik.io](https://www.iconik.io/pricing)) Starter plan: Collaborator $0, Browse $9, Standard $65, Power $120 per active user/month, plus pay-per-use AI credits; Professional and Enterprise are quoted by sales (same page, confirmed 2 Sep 2026) Shared, searchable media operations with governance Real MAM complexity and per-user/usage pricing, a much larger deployment than a one-owner index **axle.ai** Searchable cloud, on-prem or hybrid media storage and review; its own site lists trainable faces, scene understanding, logo and text recognition, spoken-word search and vector search ([axle.ai](https://www.axle.ai/)) axle.ai Cloud $20/TB/month; axle.ai MAM from $2,995 on-premise; axle.ai Tags from $200/month (same page, confirmed 2 Sep 2026) Shared cloud media layer priced by storage Starting figures only, with no per-configuration pricing published; **Unverified: whether its AI can write into field names you defined yourself is not stated on its own site** **Airtable** General relational database with attachments, views, automations, collaborators, not video-native ([airtable.com](https://airtable.com/pricing)) Free; Team $20/user/month annual; Business $45/user/month annual (same page) A disciplined manual log when the team already keeps good records No automatic shot detection, no media-aware playback or timecode, no visual search, no NLE handoff We have not run a shared benchmark file across these tools, so treat any claim about which logs footage fastest or most accurately as unverified until someone does. ## FAQ **What's the cheapest Windows offline-video catalogue here?** Fast Video Cataloger, at $9.90/month, $97/year, or $197 perpetual, one Windows PC per licence. **Can StoryFolder search dialogue and shot tags in the same query?** Yes. One library search covers Text, Dropdown, Tag and Number fields plus the transcript together, using substring matching rather than fuzzy matching. **Can StoryFolder send selects back to an NLE?** Yes. The Editorial export writes `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` from the shots you kept, in board order, plus a rendered `Selects.mp4` reel. The events reference the single video you imported into that board, so it is a selects assembly against that file rather than a reconstruction of the edit behind it. No AAF, and no timeline format is read back in. Editorial is Pro; the reel is free. **Does StoryFolder search disconnected hard drives?** No. Relink reconnects a source that's moved, but locating a clip on an offline volume is Fast Video Cataloger's category, not StoryFolder's. **Is StoryFolder's AI logging on-device?** No, not the part that logs metadata. Transcription is on-device and free; AI Vision Autofill is a separate cloud call that sends representative frames to a third-party vision model, with the free plan covering your first 100 shots and Pro unlimited. **How many field types can StoryFolder log with?** Six: Text, Tag, Dropdown, Checkbox, Rating and Number. Every field's Autofill switch starts off. **Is iconik a lightweight desktop app?** No. It's a shared MAM whose Starter plan runs $9 to $120 per active user per month plus pay-per-use AI credits, with a $0 Collaborator tier for view-only access. **Does a transcript alone log all of a video's footage?** No. The `arkiv` project's repository, read on 2 September 2026, reports a 1,506-clip production library with 1,161 clips of dialogue-free b-roll, 77%, and none of that gets found by transcript search. --- # Best tools for turning a finished video into a shot list (2026) URL: https://storyfolder.com/blog/best-tools-for-turning-a-finished-video-into-a-shot-list Author: StoryFolder Published: 2026-09-02 Tags: Production Reading time: 9 min You have a finished video and need every shot in it with a start, end and picture. The tools that work from footage you already have, compared by what they accept, what they output and what no detector can recover. *Last updated: 2 September 2026. Every price and capability below carries the date it was last recorded. The figures marked 2 September 2026 were read from the vendor's own page that day; the rest were recorded on 1 September 2026 and have not been re-checked since. Confirm current price and capability with the vendor before you buy anything.* You have a finished video, not a script and not a shoot day still to come, and you need an ordered record of every shot in it: where it starts, where it ends, and a picture of each one. Most "shot list" search results are pre-production planning apps that build a list for a shoot that hasn't happened yet. This compares the tools that work from footage you already have. We publish this comparison and StoryFolder is one of the tools in it, so take the recommendations with that in mind. Every price and capability below carries the date it was last recorded, and we say plainly where StoryFolder loses. **If you have a rendered video file and need a shot list you can hand to someone, StoryFolder writes a thumbnailed XLSX and CSV, and will also write the shots you kept as an EDL, Final Cut Pro 7 XML or FCPXML selects timeline against that same file. PySceneDetect is the free, scriptable detector. Premiere and Resolve keep the detected cuts inside the edit. Production Clip Reporter reports on an editorial timeline that already exists.** StoryFolder does not do script planning and has no crew or call-sheet features. On interchange, separate two questions that are easy to run together. **Editorial output:** it writes one — `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml`, the shots you kept cut in board order, plus a rendered H.264 selects reel; there is no AAF, and no timeline format is read back in. **Provenance:** it cannot recover source reel numbers, camera-original filenames, source timecode or handles, because it works from a rendered video file rather than your project, and those were never in the file. So the timeline it writes points at the video you imported, not at the originals behind it. If provenance is what your job turns on, an NLE-native tool or one of the timeline-report utilities below wins that outright. ## Which tools accept a finished video directly? StoryFolder, PySceneDetect, Premiere's Scene Edit Detection, Resolve's Scene Cut Detection and MoviePrint all start from a video file. EditingTools' EDL Tool & Converter and Production Clip Reporter start from the other end: an EDL, XML or OTIO export from a timeline that already exists. If all you have is a rendered `.mov`, those two aren't in play until something else has produced a cut list for them to read. Accepting video is one thing; producing a shot list is another. PySceneDetect's CLI will detect and list scenes, but what comes out is a CSV and a folder of images, so you still build the spreadsheet yourself. Premiere's Scene Edit Detection turns detected cuts into edit points, a subclip bin, or markers inside the project, with no native thumbnail spreadsheet on the other end. Resolve's Colorist Guide shows the same pattern: a reviewed Cut List you can save or add to the Media Pool. MoviePrint gets you a finished artefact with the least setup, a visual contact sheet, which is a picture of the video rather than rows you can add columns to. In StoryFolder the equivalent step is [importing the video file](https://storyfolder.com/help/importing/from-file) and letting it detect the shots. ## Which tool produces a spreadsheet you can hand to someone? StoryFolder writes an XLSX and a CSV from [one spreadsheet export](https://storyfolder.com/help/exporting/spreadsheet), and when you turn on Images in that same export, the XLSX embeds a thumbnail in every row. The columns are `Frame`, `Filename`, then any [shot-level custom fields](https://storyfolder.com/help/notes/custom-fields) you've switched on, then `Start Timecode`, `End Timecode`, `Duration Timecode`, `First Frame` and `Last Frame`. There's no shot-number column, and the CSV never carries pixels; only the XLSX does. Production Clip Reporter writes a richer Excel report, but it's working from real editorial metadata: an OTIO or XML export from Avid, Premiere or Resolve, complete with markers, transitions and effects that were already in your timeline. A rendered video file simply doesn't carry that information, so no tool that reads pictures instead of timelines can produce it. EditingTools converts an existing EDL, XML or CSV into other list formats (CSV, PDF, Excel), which is useful when your problem is format conversion rather than shot detection. PySceneDetect needs a formatting step of your own between its CSV and anything you'd hand to a client. ## Which tool gives you cuts back in an editor? If you need the detected cuts to live inside your NLE as edit points, three of these tools will do it and they differ in shape. PySceneDetect 0.7.1, released 21 July 2026, documents an EDL export and OTIO/FCP-oriented outputs alongside its CSV, so a detected cut list can travel into an interchange format rather than staying command-line only. Premiere's and Resolve's detectors already put the cuts where you're editing, because that's where they ran. StoryFolder's Editorial output sits between the two: you review and cull the shots on a board first, then export what survives as `Selects.edl`, `Selects.xml` or `Selects.fcpxml` — EDL and FCP7 XML for Premiere, Resolve and Avid, FCPXML for Final Cut Pro and Resolve. That suits you when the selection is the work; the NLE-native detectors suit you when every cut should land in the project and be trimmed there. Editorial is a paid feature; the rendered selects reel that can accompany it is not. StoryFolder is one-way, but it is no longer document-only: nothing reads back *in* — no EDL, XML, FCPXML, AAF or OTIO is imported — while the Editorial output sends a selects timeline *out*, cut against the file you imported. Production Clip Reporter documents cuts that already exist rather than creating them from a video. ## How much correction control matters after detection? Hard cuts are the easy case for any detector. Dissolves, fades and matched cuts inside similar-looking rooms get missed more often, and a camera flash or a fast whip inside one continuous shot can get reported as a cut that isn't there. That gap is why the correction path matters more than "AI-powered" marketing copy: every one of these tools will produce a board that needs a human pass before it's a deliverable, and the table below answers each tool on that axis. The paths differ in kind, not just in quality. StoryFolder gives you a [sensitivity control](https://storyfolder.com/help/editing/sensitivity) that moves the whole board's cut count, a second detector pass that surfaces suggested cuts you accept with one click, and [split and join](https://storyfolder.com/help/editing/split-merge) for everything else. PySceneDetect's controls are command-line options you re-run. Premiere and Resolve hand corrections back to the timeline tools you already use. We haven't run a shared benchmark file against the other tools here, so treat any claim about relative detection accuracy between StoryFolder and a competitor as **unverified without a controlled, published test**, and don't take marketing copy from any vendor, including us, as a substitute for trying your own footage. ## What information can no finished-video detector recover? A rendered video file does not carry the camera's original filenames, the source reel, source timecode, handles, or the structure of the timeline it was cut from. No tool working from the picture alone can get that back, because it was never in the file to begin with. StoryFolder's own timecode is elapsed from the start of the file you imported (`HH:MM:SS,mmm`), not SMPTE and not the master's source timecode; the exact numbers to trust are the integer `First Frame` and `Last Frame` columns rather than the timecode string's milliseconds. If provenance matters (a VFX pull list keyed to original filenames, a conform that needs source timecode and handles), that information has to come from an NLE or an EDL/XML/OTIO export, upstream of any video-in tool. None of the tools in this comparison invent it after the fact. That includes the timeline files StoryFolder itself writes: they carry real SMPTE at the source's frame rate, but the source they name is the rendered video you imported, so they answer “which moments did we pick” and not “which camera file was that”. ## Which tool should you choose for each job? - **Finished video, want a reviewed visual spreadsheet:** StoryFolder. Concession: desktop only (Mac or Windows, no Linux build), and the spreadsheet export is a [paid feature](https://storyfolder.com/help/billing/plans). - **Finished video, and you want the shots you kept back in the edit:** StoryFolder's Editorial output, which writes an EDL, FCP7 XML or FCPXML selects timeline plus a rendered selects reel. Concession: the timeline references the file you imported, so it carries no camera-original names, reels or handles; there is no AAF; and Editorial is a paid feature. - **Want free, scriptable detection or an interchange output:** PySceneDetect. Concession: command-line and Python, not a client-ready document with your own columns out of the box. - **Want the detection to stay inside the edit:** Premiere or Resolve. Concession: neither produces a standalone thumbnailed shot-list document by itself. - **A real editorial timeline already exists and the deliverable is a production report:** Production Clip Reporter. Concession: Apple Silicon only, and it documents a timeline rather than detecting cuts from raw video. - **You want a visual contact sheet and nothing more:** MoviePrint. Concession: its own repository says it's no longer under active development, and the latest listed release dates to 2020. ## How do these tools compare at a glance? Tool Input What you actually get Correction path Price (as recorded 1 Sep 2026 unless the cell says otherwise) Best fit Where it falls short **StoryFolder** Finished local video (`.mov`/`.mp4`) One export writes `Shot List.xlsx` and `Shot List.csv` together; XLSX embeds a thumbnail per row when Images is on. Editorial adds `Selects.edl`, `Selects.xml` and `Selects.fcpxml`, and Selects reel renders one H.264 `Selects.mp4` Sensitivity control over the whole board, a suggested-cuts pass you accept per cut, plus manual split and join Free: 6 boards, 50 visible shots/board, custom fields included. Spreadsheet export is Pro ([storyfolder.com/pricing](https://storyfolder.com/pricing)) Reviewed, thumbnailed spreadsheet from footage you already have, with your own columns, optionally filled from the frames by AI Autofill (the free plan covers your first 100 shots) Desktop Mac/Windows only; spreadsheet export, Editorial and unlimited AI Autofill are Pro; elapsed timecode in the sheet, and the selects timeline it writes points at the imported file rather than the camera originals; no AAF, no timeline import **PySceneDetect 0.7.1** (released 21 July 2026) Finished video, command line CSV scene list, saved images, and current EDL/OTIO/FCP-oriented outputs ([scenedetect.com docs](https://www.scenedetect.com/docs/latest/cli.html)) Detector choice and threshold values are command-line options; you re-run to change the result ([scenedetect.com docs](https://www.scenedetect.com/docs/latest/cli.html)) Free / open source, BSD 3-Clause ([scenedetect.com](https://www.scenedetect.com/download/), confirmed 2 Sep 2026) Scriptable, repeatable detection you can wire into a pipeline Command-line workflow; no polished spreadsheet or custom business fields out of the box **Adobe Premiere (Scene Edit Detection)** Clip or sequence, inside Premiere Cuts, a subclip bin, or markers in the project ([Adobe help](https://helpx.adobe.com/uk/premiere/desktop/edit-projects/change-clip-sequence/detect-edit-points-using-scene-edit-detection.html)) Detected cuts arrive as edit points, subclips or markers, corrected with Premiere's own timeline tools ([Adobe help](https://helpx.adobe.com/uk/premiere/desktop/edit-projects/change-clip-sequence/detect-edit-points-using-scene-edit-detection.html)) $22.99/month on an annual plan billed monthly, individual single app ([adobe.com](https://www.adobe.com/products/premiere/plans.html)) Editors who want detections to stay editable on the timeline No native thumbnailed shot-list spreadsheet **DaVinci Resolve** Finished media or timeline A reviewed Cut List you can save or add to the Media Pool ([Blackmagic Resolve 20 Colorist Guide](https://documents.blackmagicdesign.com/UserManuals/DaVinci-Resolve-20-Colorist-Guide.pdf)) The Cut List is reviewed before you save it or add the cuts to the Media Pool (same guide) Resolve free; Studio $295 ([blackmagicdesign.com](https://www.blackmagicdesign.com/products/davinciresolve/), confirmed 2 Sep 2026) Resolve users who want cut recovery inside grading/editing Blackmagic's Studio page lists scene cut detection among Studio's Neural Engine features (confirmed 2 Sep 2026), so plan on Studio for it **EditingTools EDL Tool & Converter** An existing EDL, XML or CSV list, not a video file Converts a list you already have into CSV, PDF, Excel or another list format ([editingtools.io](https://en.editingtools.io/software/edl-tool-and-converter/)) No detection to correct; you fix the list you already have **Unverified: the product page offers perpetual Single User, Team and Enterprise licences but shows no price (page read 2 Sep 2026); the figure only appears at checkout** Turning existing editorial metadata into a document Cannot discover shots from a video itself **Production Clip Reporter** OTIO or classic XML from Avid, Premiere or Resolve Excel production reports with markers, transitions, effects, and optional thumbnails ([intelligentassistance.com](https://www.intelligentassistance.com/production-clip-reporter/)) Corrections happen upstream in the NLE, then you re-export the timeline and re-run the report $19.99/month, $129.99/year, or $199.99 unlimited; first 20 clips free ([intelligentassistance.com](https://www.intelligentassistance.com/production-clip-reporter/), confirmed 2 Sep 2026) Editorial turnovers where a real timeline already exists Apple Silicon only; not a direct video-to-cut detector (Sequence Clip Reporter, its predecessor, is discontinued) **MoviePrint** Finished video A visual contact sheet built from detected shots ([GitHub](https://github.com/fakob/MoviePrint_v004)) **Unverified: correction controls not verified on a current build** Free / MIT A visual overview rather than an operational document Official repository states it is no longer under development (confirmed 2 Sep 2026); latest listed release is from 2020, as recorded 1 Sep 2026 We haven't scored these tools against a common test file, so treat any claim about which detects shots most accurately as unverified until someone runs one. ## FAQ **Can PySceneDetect export a scene list?** Yes. Release 0.7.1, dated 21 July 2026, documents a `list-scenes` CSV plus saved images and EDL/OTIO/FCP-oriented outputs, though it doesn't build a custom-field spreadsheet for you. **Does Premiere make a shot-list spreadsheet?** No first-party source shows one. Scene Edit Detection produces cuts, a subclip bin, or markers inside the project instead. **What does a StoryFolder export actually contain?** One export writes both an XLSX and a CSV; the XLSX embeds a thumbnail per row only when Images is turned on in that same export. **What is StoryFolder's shot-detection sensitivity range?** 1 to 9, with a default of 5, and a default minimum automatic shot length of 10 frames. **Is MoviePrint still maintained?** Its own GitHub repository says no; the most recent listed release is from 2020. **Can any of these tools recover the source camera's original timecode?** No. StoryFolder's timecode is elapsed from the start of the imported file, and source reel and source timecode only exist upstream, in an NLE or an editorial export. --- # How to make a shot list from a video that already exists URL: https://storyfolder.com/blog/how-to-make-a-shot-list-from-an-existing-video Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 11 min Every shot-list guide assumes you haven't shot it yet. This one starts from a finished video: detect the shots, correct them, add your fields, and export thumbnails, timecodes and durations to a spreadsheet or PDF. *Last updated: 1 September 2026.* The cut is locked and somebody downstream wants a document: every shot in the video, a picture of each one, where it starts and stops, and spreadsheet columns for the things the person receiving it has to act on. To make one, import the video into the StoryFolder app. StoryFolder automatically detects shots and lets you add metadata to any shot, then export a spreadsheet with a thumbnail in every row and a storyboard PDF alongside it. StoryFolder does this from a local `.mov` or `.mp4` on your own machine. A rendered video file carries no original camera footage filenames, source timecode or handles, so no document made from it can stand in for a conform list. StoryFolder does write timeline files — the Editorial output produces `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` — but they reference the video you imported and inherit exactly that limit; there is no AAF, and no timeline format is read in. And since the shot detection is based on an algorithm (though, a smart algorithm), the detection should be reviewed if flawless shot coverage is required. Especially around dissolves or fast-moving and motion-blurred content. The spreadsheet is Pro; the custom fields that become its columns are included on every plan. ## How is documenting a finished video different from planning a shoot? Search for how to make a shot list and you get pre-production. Blank templates with columns for lens, setup and location. Guides written for the director in prep. Free spreadsheets laid out for a shoot day that has not happened. A dozen new AI tools that turn a script into shots. Planning invents shots that do not exist yet. Documenting inventories shots that already do, by looking at the picture and finding the cuts. Planning a shoot Documenting a finished video What you start with a script or a treatment one exported video file What the tool produces rows for footage nobody has shot rows for footage that exists, found by detecting the cuts Typical columns shot size, lens, camera setup, location, shoot day thumbnail, start, end, duration, frame range, plus whatever you are tracking Who reads it the crew, on the day clearance, VFX, localization, the client signing off, the archive Tools StudioBinder, Boords, Shot Lister, Celtx, Milanote, every free template PySceneDetect, ffmpeg's `select='gt(scene,N)'`, Resolve Scene Cut Detection, Premiere Scene Edit Detection, Mux Shots, StoryFolder The documenting side has been asking for this in public for a very long time. A [Creative COW thread Cliff Stephenson opened on 10 September 2011](https://creativecow.net/forums/thread/any-way-to-export-a-shot-log-from-the-timelineae/) asks how to get a shot log out of Premiere with names, lengths and in and out timecodes: "As often as I have to do this, it seems weird that there isn't something widely available to generate a shot log from an edit." Jamal Al-asmi turned up on the same thread on 27 April 2013 with a delivery the next day and "hundreds of shots to log." Christine Cossu asked on 25 July 2014 whether anyone had found a solution. Nobody ever answered. Two years earlier, on [another Creative COW thread from June 2009](https://creativecow.net/forums/thread/how-to-create-a-txt-file-of-shots-used-descriptio/), someone who had just finished a documentary explained why they needed the same file: "I need to compile an Archive Usage report for the Producers so that they can pay for what they've used." Most of these requests read like that. The document goes to a licensor, to an artist, to a translator, or onto the shelf beside the master. Part of why the answers are so hard to find is that the artefact has no settled name. **Shot list** means the plan. **Shot log** means what somebody wrote down on set. **EDL** means conform data. **Reverse storyboard** is what the reference-analysis crowd calls it. There is no agreed word for a document of every shot in a video that has already been finished, which is why the question keeps getting asked and never accumulates an answer. I call it a shot document here for want of anything better. ## What should a shot document contain? One row per shot, in order, each with a thumbnail, the elapsed start and end, the duration, the first and last frame number, and then one column for each thing the person receiving it needs to act on. That last part is the whole point: a clearance list and a VFX work order are the same rows with different columns. Which columns depends entirely on who is downstream. An [r/Filmmakers thread from 21 April 2025](https://www.reddit.com/r/Filmmakers/comments/1k4pz9k/) asks the craft version of this question: watching a finished scene, how do you actually write it down, including the case where the camera moves mid-take? It gets no useful reply. The best answers in practice come from the people already doing it. One StoryFolder customer documents finished pieces with a `Scene` field holding `INT. LIVING ROOM – NIGHT`, a `Scene / Shot #` holding `05 / 04`, a `Shot Type` holding `CLOSE UP SH.`, a `Camera Movement` holding `STATIC`, `Transitions` holding `Cross Dissolve`, and a `Sound` field reading `Water, Dishes, Sink, Night Ambient`. That is slugline discipline pointed backwards at footage. ## How do you detect and correct the shots? Import the file and let detection run, then correct what it got wrong: the sensitivity slider for a board that is wrong throughout, the suggested-cut ticks for boundaries the detector already suspects, and the split and join tools for everything else. Annotate whenever you like. Notes are keyed to frame numbers and survive a re-cut. - Import the finished file. A local .mov, .mp4, .mkv or .avi is the normal path. See [importing a local video file](https://storyfolder.com/help/importing/from-file). - Let **Detecting Shots** run. Every frame gets decoded and compared, and the board fills with one card per detected shot, each carrying its own thumbnail. - Move the [sensitivity slider](https://storyfolder.com/help/editing/sensitivity) if the whole video is wrong in one direction, with too many cards or too few. It re-cuts the entire board. - Take the **suggested cuts**. With the Split tool active, cards show ticks where a second detector pass found a likely boundary inside that shot. One click takes it at the detector's own frame. - [Split and join](https://storyfolder.com/help/editing/split-merge) the rest by hand. Click a thumbnail at the missed cut to split; hover a card's edge and click to fuse it with its neighbour. - Annotate, once the boundaries are right. The detector converts each frame into a fingerprint and compares each consecutive frame to the next. If the difference is over a certain threshold, a new boundary is placed and a new shot is detected. Boundaries must be at least 10 frames apart, which is about 0.42 seconds at 24 fps. A cross-dissolve spread over twenty frames never trips that comparison, because no single frame in the dissolve differs much from the one before it. Fades behave the same way. A cut between two visually similar shots, like a shot/reverse in one room, falls under the threshold and is missed. A camera flash or a whip inside one continuous take does the opposite and gets reported as a cut that is not there. A three-frame flash cut cannot be detected at all and has to be added by hand. Audio is irrelevant to all of this; detection runs before any transcript exists. PySceneDetect's own benchmarking issue has been open [since April 2016](https://github.com/Breakthrough/PySceneDetect/issues/13). Mux's engineers were blunt about the ceiling when they [wrote up their own shot detection](https://www.mux.com/blog/how-mux-detects-shot-boundaries): distinguishing a smooth transition from a true shot change "would require at least a basic understanding of the content of each shot." On the [Blackmagic forum on 22 April 2019](https://forum.blackmagicdesign.com/viewtopic.php?p=477167), isticism reported that a 15-minute ProRes HQ clip came back from Resolve's Scene Cut Detection 30 to 40 frames short and called the feature "professionally unusable for me as a feature." Your notes attach to frame numbers rather than to shots, which makes the correction pass much cheaper than it sounds. Change the sensitivity and re-cut the board, and the values stay on the frames they were typed against. Merge two annotated shots and the merged card inherits both halves. So you can annotate before you are certain the boundaries are final, which is the order most people work in anyway. ## How do you get the thumbnails, timecodes and notes out? One export writes both `Shot List.xlsx` and `Shot List.csv`, so there is nothing to convert afterwards. Turn on **Images** in the same export as the spreadsheet: the thumbnails in the XLSX are read off the PNGs the Images task writes, so without it the `Frame` and `Filename` columns are not written at all. The columns come out in this order: `Frame`, `Filename`, then one column for each shot-level field you switched on, then `Start Timecode`, `End Timecode`, `Duration Timecode`, `First Frame`, `Last Frame` and `End Time`. There is no shot-number column. The sequence number reaches the sheet only inside the `Filename` value, as `Shot-12.png`. The sibling article on [exporting a shot list to a spreadsheet with durations](https://storyfolder.com/blog/export-shot-list-spreadsheet-with-durations) goes through every column and the duration arithmetic. One formatting detail is worth knowing here: a Tag field arrives in the cell as a JSON array literal, `["Drone","Daylight"]`, brackets and quotes included, in both the CSV and the XLSX. The time values are elapsed from the first frame of the file you imported, so a master that starts at `01:00:00:00` needs that hour added by hand. The format is `HH:MM:SS,mmm`, and hours, minutes and seconds are the part of it worth quoting. `First Frame` and `Last Frame` come through as integers alongside it. If the deliverable is paper rather than a sheet, the [storyboard PDF](https://storyfolder.com/help/exporting/pdf) is the better artefact. Its per-shot strip prints a timecode to the frame, the duration to one decimal and the inclusive frame range under each thumbnail, with the shot's notes printed in full underneath. The export itself is one-way. ## Which fields do you add for which delivery? The rows are the same every time. The columns are what you build per job, as [custom shot fields](https://storyfolder.com/help/notes/custom-fields) in one of six types: Text, Number, Tag, Dropdown, Checkbox and Rating. Delivery Fields worth creating General shot document `Scene`, `Scene / Shot #`, `Shot Type`, `Camera Movement`, `Description` [VFX work order for an artist](https://storyfolder.com/blog/export-shot-list-with-original-file-name) `VFX` (checkbox), `Shot ID` (text), `Status` (dropdown), `Complexity` (rating) [Clearance and archive usage report](https://storyfolder.com/blog/how-to-create-a-text-file-of-shots-used) `Source`, `Rights holder`, `Licence`, `Archive ref`, `Cleared` (checkbox) Localization `Super` for on-screen text, plus the subtitle and transcript exports For a localization handoff the useful export is the transcript CSV rather than a field: its `start,end,shot,speaker,text` columns key on the same shot number the shot-list images use, so a translator can join each line of dialogue to the thumbnail it was said over. SRT and WebVTT come out alongside it, transcription runs on your own machine, and the translate task moves the transcript to English only. Each cut is its own project, so a US and a German version are two shot lists compared by hand; there is no version diff. None of these are features. There is no rights model, no VFX pipeline and no clearance engine underneath them. They are fields you name, holding values you type, printed into a document. That is less than a real system and more than what most people have, which is a spreadsheet somebody is maintaining by hand while watching a timeline. One paying customer uses exactly this pattern to track release-form status per shot. Two flags narrow what gets exported: favourite and hidden. Mark the nine shots going to the artist as favourites, set the export to favourites only, and the XLSX, the CSV and the per-shot images all contain only those nine, renumbered from one. An active search or filter does not narrow an export, so use the flags. ## What still needs another tool? Original camera filenames, reel and source timecode all live in the timeline, and an exported file does not carry them. This is the distinction to hold on to: StoryFolder *can* hand you a timeline — an EDL, FCP7 XML or FCPXML of the shots you kept — but it is a timeline against the file you imported, so it inherits that file's blankness on provenance. The [Adobe Community thread](https://community.adobe.com/questions-729/export-shot-list-with-original-file-name-1370326) asking for "a pull list of shots for our VFX artist with original file names" is asking for something StoryFolder cannot supply. For that half, export an EDL or XML from your NLE and run it through EditingTools.io or Sequence Clip Reporter, both of which read a sequence rather than a picture. No handles are added to the detected in and out points either. Comparing two cuts of the same programme is a manual job as well: import both and diff the two shot lists in the sheet. And StoryFolder itself needs a Mac or a Windows machine; there is no Linux build. ## Can you do this without paying? Not the spreadsheet. Shot-list and spreadsheet export is a Pro feature; creating the custom fields that become its columns is not. The free plan exports the storyboard PDF and per-shot images with a watermark, and caps you at 50 shots per board across 6 boards. Plans move, so check the pricing page rather than this paragraph. ## FAQ **Can StoryFolder read a Premiere or Resolve timeline?** No. It reads one finished video file and imports no EDL, XML, AAF or FCPXML. Interchange is write-only here: it will export an EDL, FCP7 XML or FCPXML of your selects against that imported file, but nothing goes in. **Why does shot detection miss dissolves?** It compares each frame with the one before it, and no single frame inside a gradual dissolve or fade differs enough to cross the threshold. Add those cuts with the Split tool. **What is the shortest shot that can be detected automatically?** 10 frames, roughly 0.42 seconds at 24 fps. Anything shorter has to be split in by hand. **Does changing sensitivity delete my notes?** No. Metadata is keyed to frame numbers rather than to shots, so re-cutting keeps your values and a merged shot inherits both halves. **Is the timecode in the spreadsheet source timecode?** No. It is `HH:MM:SS,mmm` elapsed from the first frame of the imported file, with no reel and no SMPTE frames field. **Does one export produce both XLSX and CSV?** Yes. `Shot List.xlsx` and `Shot List.csv` are written together, and the XLSX embeds a thumbnail per row when Images is enabled in the same export. **How does a Tag field appear in the spreadsheet?** As a JSON array literal, for example `["Drone","Daylight"]`, in both the XLSX and the CSV. --- # How to create a text file of shots used URL: https://storyfolder.com/blog/how-to-create-a-text-file-of-shots-used Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 8 min An archive-usage report from a finished film: one row per shot with a thumbnail, timecode and the source, rights and clearance fields a producer needs to pay for what was used. *Last updated: 1 September 2026.* The documentary is finished and the producers need to know which shots came from somewhere else, so they can pay for them. Import the delivered video into StoryFolder and it detects the shots, one thumbnailed row each, carrying an elapsed in and out and a duration. You create the columns the record needs: `Source`, `Rights holder`, `Archive ref`, `Licence`, `Restrictions`, `Release form`, `Cleared`. Mark the shots that are not yours and export those rows as an XLSX, a CSV and a PDF. StoryFolder finds the shots by looking at the rendered video, which is why it works on a delivered file with no project and no relinking, and it is also why provenance is something a person types: there is no licence lookup, expiry tracking or clearance sign-off behind the fields. Detection is an algorithm, and a good one, but a dissolve changes too gradually to register as a cut, so the boundaries are worth a look before you export. ## What should a clearance shot log record? Enough for a licensor to find the clip in their own catalogue, and enough for a producer to see what was used without opening the video. In practice that is a source, a reference the licensor recognises, the terms, and the current status. Field Type Holds `Source` Dropdown the archives and libraries you actually license from, plus `Own footage` `Rights holder` Text or Dropdown who you pay `Archive ref` Text or Dropdown the licensor's own clip ID, so their list and yours join `Licence` Text or Dropdown the agreement or invoice number this use sits under `Restrictions` Tag territory, term, media `Release form` Dropdown `Signed`, `Requested`, `Not required` `Cleared` Checkbox settled, or not yet `Release form` is not a hypothetical. Across 813 boards from 295 paying customers, one customer tracks release-form status per shot, which is this pattern already running on real work. Pick Dropdown over Text wherever a value repeats. Twelve rows reading `Harrowfield Archive` and one reading `harrowfield archive ` with a trailing space is a filter that quietly drops a shot you owe money on, and the dropdown cannot be typo'd. The type also decides what you get in Excel: a Checkbox arrives as a real boolean and a Rating as an integer, so both sort and filter cleanly, while a Tag field arrives as a JSON array literal in the cell, brackets and quotes included, like `["UK","Broadcast"]`. None of these fields ship by default. A new board opens with a treatment-shaped notes category, and you [create your own fields](https://storyfolder.com/help/notes/custom-fields) in whichever of the six types fits: Text, Number, Tag, Dropdown, Checkbox and Rating. The spreadsheet export is Pro; custom fields are included on every plan. You do not need a duration field. The sheet already carries the start, the end and the length of every row it writes. ## How do you mark the shots that came from somewhere else? Import the delivered file, let shot detection run, create the metadata fields and correct the boundaries. [The pillar article walks through that pass](https://storyfolder.com/blog/how-to-make-a-shot-list-from-an-existing-video), and it is the same whether the sheet ends up with rights columns or VFX ones. A clearance pass differs in one way that changes how you work: a feature-length cut runs to hundreds of shots and the record concerns only the ones that are not yours, so most of the board is something you scroll past. Select the archive shots. Cmd-click or Ctrl-click [adds shots](https://storyfolder.com/help/editing/selecting) that are not next to each other, Shift-click takes a run. Set `Source` across the whole batch in one keystroke run, then type the `Archive ref` per shot, since that is the one value that differs every time. Then favourite the selection and set the export to favourites only. A search or a filter on the board narrows the export as well; favourites are what you reach for when the set has to stay put after you clear the search. **The boundaries on a marked row are what a licensor bills against.** Elsewhere a boundary a few frames out is cosmetic; here it is the length of a clip on an invoice. [Split or merge](https://storyfolder.com/help/editing/split-merge) until each marked row covers the clip you are declaring and nothing either side of it. Notes are keyed to frame numbers rather than to shots, so correcting a boundary afterwards keeps the values you already typed: mark first, tidy the edges after. **The limit of a marking pass is the cut you never look at**: an archive clip in the back half of a row you left unfavourited as your own footage. A missed boundary inside a shot you marked shows up as a wrong duration, which someone will query; inside a shot you did not mark it shows up as nothing at all, which is the one that reaches a producer. Favouriting scopes the boundary work to the shots you already know about and cannot surface the ones you do not. Where the exposure justifies a second look, raise the sensitivity slider a step before you mark anything, as a one-time discovery pass. The slider re-cuts the whole board, so it is not something to reach for once the marking and the edges are done. The favourites-only output is renumbered from one, so `Shot-1.png` is your first archive shot rather than the first shot of the film. If a row has to be cited by number in a letter, put that number in a field of your own rather than relying on the export order. ## How do thumbnails reduce clearance work? A picture in the row means whoever is checking the list can identify a clip without going back to the video and finding the timecode. That was the request in a [2020 r/editors thread](https://www.reddit.com/r/editors/comments/jbdz14/) from someone at a post house: "Now we've started working with some new folks on our clearance team, and they're demanding our shot sheets have thumbnails for each clip. This has the potential to turn what is normally several seconds of work into several hours of work for an editor or AE. No bueno." The tool they remembered doing it well, Final Print, had gone unmaintained for years and only ever worked with FCP7. "Doesn't have to be free, we will gladly spend however much is necessary to save our team hours of manual labor." In StoryFolder the thumbnail is a 200 px-wide PNG anchored into the `Frame` column of the XLSX, one per row, provided [the Images export](https://storyfolder.com/help/exporting/images) is switched on in the same job. What matters for a clearance list is which frame it is: a thumbnail chosen from the middle of an archive clip identifies it, one grabbed off a fade does not, and the frame is yours to choose. Send the XLSX to the person checking the footage and the CSV to whoever is filing it: same rows, no pixels in the second, openable anywhere. ## What does the exported archive usage report contain? One folder, written by a single export job: Part What it is `Shot List/Shot List.xlsx` one row per marked shot, thumbnail embedded `Shot List/Shot List.csv` the same rows as plain text, written every time `Images/Shot-N.png` one still per shot at the source video's full width `Storyboard.pdf` the paper version, notes printed in full Your fields become columns, sitting between the thumbnail and the timings. The timings are elapsed from the first frame of the file you imported, not source timecode; [the sibling article on exporting a shot list with durations](https://storyfolder.com/blog/export-shot-list-spreadsheet-with-durations) covers every column and the arithmetic. Two absences shape the schema. Video-level fields stay on the project by design, so anything describing the whole programme, the title, the delivery, the licence period covering all of it, belongs in the filename or the covering email rather than in a field. And there is no shot-number column: the number reaches the sheet through `Filename`, as `Shot-1.png`, which needs Images on. The [storyboard PDF](https://storyfolder.com/help/exporting/pdf) is the version to send to someone who will read it rather than sort it. Each card carries the thumbnail, the fields with their values printed in full, and a timecode to the frame under the picture. ## What still has to be done by a person? Recognising the clip, finding who owns it, reading the terms and deciding that a use is settled. StoryFolder holds the record and carries it into a document; the judgement in each column is yours, and so is every fact in it. The join to the licensor is the part that reliably costs time. On [Creative COW in June 2009](https://creativecow.net/forums/thread/how-to-create-a-txt-file-of-shots-used-descriptio/), someone who had just finished a documentary put it plainly: "I need to compile an Archive Usage report for the Producers so that they can pay for what they've used." The output they had was "very difficult to decipher and 'marry' to the BATCH list." That is why `Archive ref` earns its column. Type the licensor's own ID into the row while you still have the clip on screen and the two lists line up on a key both sides recognise, instead of on a description someone has to interpret. This records what you used. Whether you may use it is a question for the people holding the contracts. ## Where does the rights record itself live? In your licences, your invoices and your signed release forms, wherever you keep those. The shot log is the index into them: `Licence` and `Archive ref` are pointers, and `Cleared` is a status you maintain by hand as the paperwork comes back. StoryFolder does no storage management and tracks no drives, so the documents themselves stay in whatever system already holds them. ## FAQ **Does StoryFolder identify stock or archive footage automatically?** No. It detects where the shots are; a person records the source and the archive reference. **Is there a built-in licence field?** No. `Licence` is a field you create yourself, as Text or as a Dropdown of the agreements in play. **Can I mark a shot as cleared?** Yes. Make `Cleared` a Checkbox, and it exports as a real boolean you can filter on in Excel. **Can the spreadsheet show a picture of each shot?** Yes, in the XLSX. Each row carries a 200 px-wide PNG in the `Frame` column, provided the Images export is switched on in the same job. **Do my notes appear in the PDF?** Yes. The storyboard PDF prints the selected per-shot fields in full, with a timecode to the frame under each thumbnail. **Can StoryFolder work out what the footage will cost?** No. There are no rates, and nothing connects a field to money. The sheet tells you what was used and for how long, and the pricing happens where you already price work. **Does it track when a licence expires?** No. There are no expiry rules or reminders. `Cleared` and `Release form` are statuses you update yourself. **Can I export only the shots I marked as archive?** Yes. Favourite them and set the export to favourites only; the XLSX, the CSV and the stills then contain only those rows, renumbered from one. --- # Export Shot List With Original File Name URL: https://storyfolder.com/blog/export-shot-list-with-original-file-name Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 7 min Building a VFX shot-by-shot work order from a finished cut: what you can pull from the picture, how to mark only the VFX shots, and why a video-derived list is not a conform pull list. *Last updated: 1 September 2026.* The cut is locked and an artist is awaiting a list of shots that need work. StoryFolder builds that list from the rendered video. Each shot is thumbnailed and carries an elapsed in and out, a frame range, and whatever columns you decide the job needs, such as `VFX`, `Shot ID`, `Status` and `Complexity`. The one thing it cannot give you is the original camera filename, because a rendered file does not carry one. Mark the shots that need work, and export only those as a spreadsheet, a folder of stills and one MP4 per shot. ## What can a rendered video give a VFX artist? Everything except the thing the title asks for. Every shot in order, thumbnailed, with an elapsed in and out, first and last frame numbers as integers and one column per field you added. For briefing an artist that trade is usually acceptable; the filenames matter to whoever pulls the media. The request in this page's title was posted by Gutbucket62 to [an undated thread on Adobe's own community forum](https://community.adobe.com/questions-729/export-shot-list-with-original-file-name-1370326): "I need to create a pull list of shots for our VFX artist with original file names." The workaround was to duplicate the sequence, strip out every clip without VFX, export an EDL and copy the filenames across by hand. RobShultz, carrying Adobe's Community Expert badge, replied that "Adobe's solution seems correct." Gutbucket62's summary: "Adobe offered no solution at all." ## How do you mark only the VFX shots? Import the rendered cut, and a local `.mov` or `.mp4` works great, then let detection run, then create the [custom metadata fields](https://storyfolder.com/help/notes/custom-fields) your workflow needs. The spreadsheet export is Pro; custom fields are included on every plan. [The pillar article covers that pass in full](https://storyfolder.com/blog/how-to-make-a-shot-list-from-an-existing-video). A working set for a turnover is `Shot ID` as text, `Status` as a dropdown holding your own states, `Complexity` as a rating, and `Elements` as a number for how many passes a shot needs. What is particular to a turnover is everything after that: you are marking a minority of the board and shipping only those rows. Scroll the board and select the shots that need work. The artist's list usually comes from the edit, so you are locating shots you already know about rather than discovering them. Cmd-click or Ctrl-click adds shots that are not next to each other, and Shift-click appends a run of them. With several selected, type into a field once and the value lands on every one, so `Status` goes to `Awaiting brief` in one pass and the per-shot detail gets written only where it differs. Favourite the selection, then set the export itself to favourites only. A search or a filter you have on the board narrows the export too, so either route works; favourites are the one that survives you clearing the search. A favourites-only export is renumbered from one, so `Shot-1.png` is your first VFX shot rather than the first shot of the cut — which is exactly why a `Shot ID` column exists. Type one only where a code has to be quoted back to you, on the handful of shots going into a pipeline that already has names for them. There is no auto-numbering field, so filling that column is one keystroke run per shot and batch-fill cannot help you: the whole point of an ID is that no two are the same. Everywhere else, let `Filename` carry the position and leave the column empty. The useful consequence of marking a minority is that you do not need the whole board to be correct. Fix boundaries only on the shots you are sending. A soft transition into a VFX shot needs a [split](https://storyfolder.com/help/editing/split-merge) so the in point is where the artist expects it; the establishing wide forty seconds later can stay however the detector left it. Notes are keyed to frame numbers, so correcting a boundary afterwards does not cost you the values you already typed. ## Can you send each shot as a clip? Yes. Turn on Clips and you get one `Shot-N.mp4` per favourited shot, cut from the original at source resolution. If the source file has gone offline the export falls back to the preview copy and the finished job says that it did, so a reduced-resolution clip never reaches an artist unannounced. The in and out of each clip are the shot boundaries themselves. There is no handle setting, and nothing pads the cut by a specified number of frames, so a clip starts on the first frame of the shot and ends on the last. If the artist wants lead-in and lead-out, merge the shot with its neighbours before exporting: a merged section exports as one row, one still and one clip covering the whole range. That gives context, not handles: the extra frames belong to the neighbouring shots, and frames that sit outside the rendered cut are not in the file at all. ## What should the handoff package contain? One export writes all of it into a single folder: Part What it is Notes `Shot List/Shot List.xlsx` one row per marked shot, thumbnail embedded needs **Images** on in the same export `Shot List/Shot List.csv` the same rows without pixels written every time, nothing to convert `Images/Shot-N.png` one still per shot at the source video's full width the thumbnails in the XLSX are read from these `Clips/Shot-N.mp4` one clip per shot, cut at source resolution optional `Storyboard.pdf` the paper version, notes printed in full a timecode to the frame under each thumbnail Lead with the XLSX, because the thumbnail sits in the row next to the fields. Its timecodes are elapsed from the first frame of the file you imported, not source timecode, so give the artist the `Shot ID` you typed as the identifier to quote back at you, with the `First Frame` and `Last Frame` integers alongside it; [the sibling article on exporting a shot list with durations](https://storyfolder.com/blog/export-shot-list-spreadsheet-with-durations) goes through every column and the arithmetic. If a timecode to the frame has to be printed on the page, [the storyboard PDF](https://storyfolder.com/help/exporting/pdf) prints one under every shot. Call the result a work order rather than a pull list when you send it. ## When do you need an EDL instead? When the list has to survive a conform. The two documents answer different questions, and a turnover of any size usually wants both. Shot-by-shot work order Conform pull list What you start with one rendered video file a sequence in your NLE A shot is identified by thumbnail, elapsed in/out, frame range, your own `Shot ID` original camera filename, reel, source timecode In and out points the shot boundaries plus whatever handles you specify Media you can hand over stills and one MP4 per shot pointers into the camera originals File formats XLSX and CSV, plus an EDL, FCP7 XML or FCPXML selects timeline against the imported file EDL, XML, AAF, FCPXML carrying camera-original references What it is for briefing the artist on what needs doing pulling and conforming the actual media For the right-hand column, export an EDL or XML from your NLE and run it through something that reads a sequence. Sequence Clip Reporter is the one Ant Falcon recommended on that Adobe thread, saying "we use it for shotlists with stills, timecode, clip names and filepaths all the time during the finish process for movie trailers etc." EditingTools.io's Edit Shot List does the EDL and XML conversion in a browser. Check current pricing at the source. Keep two things apart here, because the formats have the same names on both sides of the table. **StoryFolder does write an EDL, a Final Cut Pro 7 XML and an FCPXML** — the Editorial output, `Selects.edl`, `Selects.xml` and `Selects.fcpxml`, the shots you kept cut in board order — and it writes no AAF and imports nothing. **But every event in those files points at the single video you imported.** That makes it the picture-side document in timeline form: it says which moments you chose in that render, at real `HH:MM:SS:FF` for that render's frame rate. It carries no camera-original filenames, no camera reel, no source timecode and no handles, because a rendered file never had them. So it is not the right-hand column, and it does not replace the conform data — it stands next to it, exactly as the spreadsheet does. ## FAQ **Can I put a VFX checkbox on every shot?** Yes. Checkbox is one of six custom field types, alongside Text, Number, Tag, Dropdown and Rating. **Do the exported shots keep their original shot numbers?** No. A favourites-only export is renumbered from one, so `Shot-1.png` is the first marked shot. Type a `Shot ID` field if the numbering has to match something. **Is the timecode in the spreadsheet source timecode?** No. It is elapsed time from the first frame of the imported file, `HH:MM:SS,mmm`, with no reel and no SMPTE frames field. **Can StoryFolder export an EDL, XML, AAF or FCPXML?** EDL, Final Cut Pro 7 XML and FCPXML, yes; AAF, no; and nothing at all in the other direction. The Editorial output writes `Selects.edl`, `Selects.xml` and `Selects.fcpxml` from the shots you kept, plus a rendered `Selects.mp4` reel if you switch that on. What it cannot do is the thing this page is about: those events reference the video you imported, so they carry no original camera filenames, reel or source timecode. For that, the EDL or XML has to come out of the sequence in your NLE. **Can I add handles to the exported clips?** No. Each `Shot-N.mp4` runs from the shot's first frame to its last. Merge a shot with its neighbours before exporting if the artist needs lead-in and lead-out. **Does the artist need StoryFolder to open any of this?** No. The handoff is an XLSX, a CSV, PNG stills, MP4 clips and a PDF. --- # Exporting a shot list to a spreadsheet with durations URL: https://storyfolder.com/blog/export-shot-list-spreadsheet-with-durations Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 7 min Which tools export a finished video's shots to a spreadsheet, exactly which XLSX and CSV columns you get, and how to calculate per-shot durations in Excel or Sheets. *Last updated: 1 September 2026.* "I'm up against the wall with a delivery tomorrow and there are hundreds of shots to log." Jamal Al-asmi posted that to [Creative COW on 27 April 2013](https://creativecow.net/forums/thread/any-way-to-export-a-shot-log-from-the-timelineae/), on a thread Cliff Stephenson opened in 2011 because he was delivering a project to a studio and needed a shot log with names, lengths and timecodes. Christine Cossu turned up on 25 July 2014 asking the same thing. Nobody ever answered. If you have a **finished video file**, use StoryFolder, a tool that writes an XLSX and a CSV of every detected shot with start, end and duration, along with other customizable metadata. If you have a **timeline**, export an EDL or XML and push it through EditingTools.io or Sequence Clip Reporter, which can carry original clip names that a video file simply does not contain. For durations, take the frame integers over the timecode string and do the arithmetic in the sheet. Detecting the shots and correcting the boundaries first is [the pillar article's job](https://storyfolder.com/blog/how-to-make-a-shot-list-from-an-existing-video), and that pass is the same whatever the sheet is for. ## What can't a video-derived shot list give you? StoryFolder detects the edits in a rendered video file. That file carries none of what a conform needs: original camera filenames, reel, source timecode or handles. One source file goes in, so one filename comes out, and the timecodes are elapsed from the first frame of the file you imported. If your deliverable is a pull list an online editor will key off, you want the EDL route. That is what Gutbucket62 asked for on [an undated Adobe Community thread](https://community.adobe.com/questions-729/export-shot-list-with-original-file-name-1370326): "a pull list of shots for our VFX artist with original file names." The sibling article on [exporting a shot list with original file names](https://storyfolder.com/blog/export-shot-list-with-original-file-name) is about that boundary in full. ## Which tools can export a finished video's shots to a spreadsheet? Everything below documents a video that exists. Tool Input Spreadsheet output Thumbnails Original footage names **StoryFolder** video file `Shot List.xlsx` **and** `Shot List.csv`, both written every export Yes, embedded per row in the XLSX when Images is on No **PySceneDetect** video file CSV scene list, command line (`detect-adaptive list-scenes save-images`) Separate image files, not embedded No **Premiere Scene Edit Detection** sequence None; you get cuts, subclips or markers No Stays in the project **DaVinci Resolve Scene Cut Detection** video file Timeline splits; the escape is Edit Index → CSV No No **Mux Shots** video file, via API JSON plus a WebP per shot Per-shot images, developer-facing No **EditingTools.io Edit Shot List** EDL or XML CSV, JSON, PDF, TXT No Yes **Sequence Clip Reporter** FCP/Premiere sequence Shot sheets with stills, timecode, clip names and filepaths Yes Yes Resolve's Scene Cut Detection needs a Studio licence, and its accuracy drew complaints in 2019: isticism reported on the [Blackmagic forum](https://forum.blackmagicdesign.com/viewtopic.php?p=477167) on 22 April 2019 that a 15-minute ProRes HQ clip came back 30 to 40 frames short, calling the feature "professionally unusable for me as a feature." Mux is usage-priced and aimed at developers. Check current pricing at the source. A video file yields shot boundaries, durations and thumbnails but never original clip names; a timeline yields clip names and source timecode but needs an EDL or XML export first. Choose the tool that matches the input you actually have, then verify durations against frame numbers rather than a timecode string. ## What columns should the spreadsheet contain? Column Value Present when `Frame` the embedded thumbnail sits over this cell only with Images enabled `Filename` `Shot-1.png`, `Shot-2.png`, … only with Images enabled *your field titles* one column per shot-level field you switched on always, for chosen fields `Start Timecode` `HH:MM:SS,mmm`, elapsed always `End Timecode` `HH:MM:SS,mmm`, elapsed always `Duration Timecode` `HH:MM:SS,mmm` of the shot's length always `First Frame` integer always `Last Frame` integer always `End Time` seconds as a float always Every shot-level field you create becomes one of those middle columns, in whichever of the six types fits: Text, Number, Tag, Dropdown, Checkbox and Rating. Which fields a job wants depends on who is downstream, and the pillar article on [making a shot list from a video that already exists](https://storyfolder.com/blog/how-to-make-a-shot-list-from-an-existing-video) maps deliveries to schemas in full. AI Vision Autofill fills the fields you switch it on for, one field at a time, and every field starts with that switch off. A Dropdown is held to its own options, a Rating to a whole number and a Checkbox to true or false, so none of the three can come back with something that was never valid. Tag and Text are open, which is why an `Archive ref` or a `Job#` is exactly where a model writes something plausible and wrong. Read those two column types before you trust them. Spreadsheet export is Pro; the custom fields that become its columns are included on every plan, and so is Autofill, with the free plan covering your first 100 shots. Both files land in the same folder from one export. You do not open the XLSX and re-save it as CSV; the `.csv` is already sitting next to it. The export itself is one-way. Two formatting details will bite you in Excel. Checkbox fields arrive as real booleans, and ratings as integers 1 to 5, so both sort and pivot cleanly. Tag fields arrive as a **JSON array literal** in the cell: `["Drone","Daylight"]`, brackets and quotes included. Split on `","` or strip the brackets with a formula before you try to filter on a single tag. ## How do you calculate exact shot durations in Excel or Sheets? Use the frame columns: ``` duration in seconds = (Last Frame − First Frame + 1) ÷ frame rate ``` Put your project's frame rate in a cell and reference it, so a 23.976 project and a 25 project use the same sheet. `First Frame` and `Last Frame` are integers, and the `+ 1` is there because both bounds are inclusive: a shot that runs from frame 100 to frame 100 is one frame long, not zero. The same frame count divides to a different length at 23.976 than it does at 24, which is why the frame rate belongs in a cell rather than in the formula. Keep the seconds column unrounded and format the display instead, so a total across two hundred rows does not drift by a second against the video. Why not just parse `Duration Timecode`? Because hours, minutes and seconds are the part of that string worth trusting. It is `HH:MM:SS,mmm` with a comma before the milliseconds, and those milliseconds are not a precision promise. The frame columns are what the formula above reads. Two more things about that string. It is not SMPTE, so there is no `:FF` frames field to read. It is elapsed time from the start of the file you imported, so if your master starts at `01:00:00:00`, every number in the sheet is offset by an hour and you will need to add that offset yourself. ## How do thumbnails get into Excel? Turn on **Images** in the same export. The XLSX then embeds a 200 px-wide PNG in every row and sets the row height to match; without Images, the `Frame` and `Filename` columns are not written at all. The CSV never carries pixels, whatever you do — its `Frame` cell is empty by design. Read [how the image export works](https://storyfolder.com/help/exporting/images) if you want the frame each thumbnail is taken from to be one you chose. ## FAQ **Does one export create both an XLSX and a CSV?** Yes. `Shot List.xlsx` and `Shot List.csv` are written together from the same export, so there is nothing to convert. **Which column stores the duration?** `Duration Timecode`, formatted `HH:MM:SS,mmm`. There is no duration-in-seconds column. **What happens to numbering if I export only my favourites?** The filtered shots are renumbered 1..n in the export, so `Shot-1.png` is the first favourite rather than the first shot in the video. **Does the CSV include thumbnails?** No. Only the XLSX embeds a 200 px-wide PNG per row, and only when Images is enabled in the same export; the CSV's `Frame` cell is empty. **Does the shot list include shot numbers?** There is no shot-number column. The sequence number appears only inside the `Filename` value, such as `Shot-12.png`, and only when Images is on. **How are tag fields written into a cell?** As a JSON array literal, for example `["Drone","Daylight"]`, in both the XLSX and the CSV. **Does any StoryFolder export print a timecode to the frame?** The storyboard PDF does. Its per-shot attributes strip prints `Shot`, `Start` in `m:ss:ff`, `Duration` to one decimal and an inclusive `Frames` range. **Is a video-derived shot list ready for a conform?** No. It carries elapsed timecode and frame ranges, not reel or source timecode, handles, or original camera filenames. --- # Cheap alternatives to a MAM for a 3-person video team URL: https://storyfolder.com/blog/cheap-alternatives-to-a-mam-for-a-3-person-video-team Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 8 min Ten priced options for a three-person video team that needs to find old b-roll, from Finder tags and a spreadsheet to a drive cataloguer, a shot-level index and a full MAM. Prices read from vendor pages on 2 September 2026. *Last updated: 2 September 2026.* Three people, a shelf of drives, and a producer who keeps asking where last spring's factory b-roll went. The cheapest fix is whichever tool covers the one job you are short of: Finder tags and a spreadsheet, a drive cataloguer, a shot-level visual index, or a full media asset manager (MAM). Ten options are priced below, every figure read from the vendor's own page on 2 September 2026. StoryFolder is ours, and it sits in the visual-index row. It indexes the videos you give it and points at your files where they already are, so it does not manage shared storage, track which drive is which, ingest in batches, or make proxies your NLE can cut with. On those jobs it loses to a drive cataloguer and to a real MAM, and the table says so. **New in 0.4.** StoryFolder's library gained collections, quick filters and video-level fields, and local transcription is free. [The library controls](https://storyfolder.com/blog/library-folders-collections-quick-filters). ## What does "cheap MAM alternative" need to replace? A MAM bundles seven jobs, and the cheap options each cover two or three of them. Work out which ones you are actually short of before you compare anything: The job What it means on a Tuesday Locate storage Which drive, NAS share or bucket holds the original Preview Watch or scrub the clip without mounting the source Describe Attach client, job, location, release status to material Search across jobs One query that crosses project and client boundaries Share Give a producer or client something they can open Move media Copy, transcode, make proxies, hand off to an NLE Control users Accounts, permissions, who can delete what The last two are where the money is, and they set how the bill is charged: per user, per month, and often per terabyte as well. Both of those meters are visible in the table below. A three-person shop that shares one NAS and trusts each other is paying for governance it does not need. Deciding whether you have crossed into needing the full set is its own argument, and this page does not make it. This one ranks prices. ## Which low-cost tools are credible for a three-person team? Ten, in four bands: included with the operating system you already run; roughly $10 to $25 a month for a single-seat cataloguer or index; $20 to $45 per user per month for a shared database; and $65 or more per user per month for a full MAM. Prices read from each vendor's own page on **2 September 2026**, USD as listed. Tool Price, checked 2 Sep 2026 Platform What it does not replace [Finder tags + Spotlight](https://support.apple.com/guide/mac-help/narrow-search-results-on-mac-mh15155/mac) Included with macOS macOS Apple's own search guide describes names, tags and metadata attributes, not what is inside a video. Tags are extended attributes and can be lost when a file crosses to another filesystem. [Google Workspace](https://workspace.google.com/pricing) (Sheets) List price Starter **$7**, Standard **$14**, Plus **$22** per user/month, billed monthly; introductory discounts run on top Any Thumbnails, playback, any link to the media. Rows go stale silently. [Airtable](https://www.airtable.com/pricing) Free **$0**; Team **$20**; Business **$45** per user/month billed annually Web A database with a gallery view. Attachments are capped per base at **1GB**, **20GB** and **100GB** by tier, so confirm the current cap before you plan to keep video in it. [Fast Video Cataloger](https://www.videocataloger.com/order/) **$9.90**/month, **$97**/year, or **$197** once (one year of updates, one PC) **Windows only** Nothing on macOS, and no team layer. **StoryFolder** Free tier is 6 boards at 50 shots each; Pro is per-machine, [see pricing](https://storyfolder.com/pricing) macOS, Windows Shared storage, drive inventory, batch ingest, NLE proxies. The library is one local database on one machine. It does write an EDL, FCP7 XML or FCPXML selects timeline, but per imported video, and never an AAF. [Kyno](https://lesspain.software/kyno/buy/) Standard **$159**, Premium **$349**; renewals **$79** / **$169**; five-seat Premium **$1,570**; education **$59** / **$99** macOS, Windows Licences are annual, not perpetual: a year of updates, after which your copy keeps working and stops improving. [Strada](https://www.strada.tech/pricing) Free **$0**; Basic **$8**; Pro **$24** per user/month Desktop, web It is positioned today as remote access to media your team already has, not as a logging tool. [iconik](https://www.iconik.io/pricing) Starter is usage-based: Collaborator **$0**, Browse **$9**, Standard **$65**, Power **$120** per user/month. Professional and Enterprise are quote-only Cloud Nothing much, which is the point. This is the real thing, and the bill grows with storage and seats. [axle.ai Cloud](https://www.axle.ai/axle-ai-cloud) **$20** per TB per month Browser Priced by how much you keep, so an archive you never delete is a bill that never stops rising. Managed and on-premise tiers are quoted rather than listed; ask them for those. [CatDV](https://www.quantum.com/en/products/asset-management/catdv/) No public price. Quantum's page offers Contact Us and Schedule a Demo Client/server Unknowable until you have been quoted, which tells you which end of the market it is built for. Two of those rows are routinely quoted wrong elsewhere. Kyno reads as annual on the vendor page today rather than perpetual: a year of updates, after which your copy keeps working and stops improving. Before buying into it, read [Scott Simmons' account at ProVideo Coalition](https://www.provideocoalition.com/an-update-on-kyno-and-what-might-be-in-store-for-the-future-of-this-fantastic-piece-of-post-production-software/) of what happened to the product after the 2021 acquisition. Strada now describes itself around remote media access. ## What is the genuinely free setup? Disciplined folder names plus Finder tags and Spotlight, or one spreadsheet, and it holds up for as long as the archive is small and one person still remembers the naming rules. Airtable's free plan gets you thumbnails and a gallery view on top of that for nothing. It is what people already do, and at scale: the drive-and-spreadsheet habit is quoted in full in the companion piece on cataloging b-roll across clients without a MAM. What you give up is the picture. A spreadsheet row says a clip exists; it does not show you the shot, and it will not tell you the drone pass is unusable because the horizon tilts. Keep the free setup at one row per clip or per drive. A row per shot means typing hundreds of rows for a single reel, by hand, from memory, and that is the version of this system that gets abandoned in week three. The other cost is silence. Rename a folder, retire a drive, or move a file across to an exFAT scratch disk, and nothing tells you the sheet is now wrong or the tags have been stripped. ## Which option fits each failure mode? Match the tool to the sentence you keep saying out loud. - **"I know we shot it, I just cannot find the drive."** Finder tags and a spreadsheet if you have a handful of drives, Fast Video Cataloger at $9.90/month if you have a shelf of them and run Windows. StoryFolder cannot help here: it records the file path of what you imported and knows nothing about volumes, so a drive that has never been plugged in is invisible to it. - **"I can find the drive, but not the shot."** This is the visual-index tier: Fast Video Cataloger, or StoryFolder if you want your own fields on each shot and search across every project in one library. Neither moves your media, and StoryFolder's library lives on one machine with no sync behind it. Which fields to build and how the search reaches across projects is the cluster pillar's subject, not this page's. - **"I need to browse in place, transcode and hand off whole folders of rushes to the NLE."** Kyno, at $159 Standard or $349 Premium for a year. It browses media where it sits, transcodes, and passes many source clips through with their metadata — none of which StoryFolder does. **The handoff itself is no longer Kyno's alone:** StoryFolder's Editorial output writes Selects.edl, Selects.xml (Final Cut Pro 7 XML) and Selects.fcpxml for the shots you kept, plus a rendered selects reel. The difference is scope — one imported video per board, so it hands over a selection from that file rather than a browse-and-ingest path across your rushes, and there is no AAF and no timeline import. - **"Three people need the same library, and I need to control who deletes things."** iconik or axle.ai, and budget properly, because Standard seats are $65 per user per month and axle.ai Cloud is $20 per TB per month. Those are the only two rows in the table built to hold the media as well as the description, and StoryFolder holds neither the media nor the accounts. What a shared setup has to provide before you pay for one is the subject of the sibling guide on sharing a library across a small team. Most three-person teams are in cases 1 and 2 at once, which is why the honest answer is often two cheap tools rather than one expensive one: something that knows where drives are, and something that knows what is on them. ## Where is StoryFolder's free/paid line? The free tier is 6 boards at 50 shots each. On it you can create your own [custom fields](https://storyfolder.com/help/notes/custom-fields), such as `Client` and `Job#`, fill and search them, copy metadata between shots, run AI Autofill on your first 100 shots, export a storyboard PDF and images, and publish a share link. Pro is what a client archive needs: unlimited boards and shots; [spreadsheet export](https://storyfolder.com/help/exporting/spreadsheet); password-protected links; charts; and unlimited AI Autofill, which uploads the frame to our servers and fills only the fields you switch on, inside each field's own domain, with every field shipping switched off. Free covers more of the export panel than the plan card implies: storyboard PDF, images, clips and the transcript and subtitle formats all export without Pro. The spreadsheet is the one that does not. Pro is licensed per machine and the plan is issued by our server, so read the [pricing page](https://storyfolder.com/pricing) for the current number rather than a figure quoted in an article. ## Which prices should you check with the vendor? CatDV, Adobe Bridge, Avid perpetual and Teams licences, Blackmagic Cloud, and Vimeo. Every figure circulating for those comes from somewhere other than a first-party page, and second-hand prices for post software are where comparison articles go wrong. Ask the vendor and get it in writing. ## FAQ **What is the cheapest offline video catalogue in this comparison?** Fast Video Cataloger, at $9.90 per month, $97 per year or $197 once, checked on its order page on 2 September 2026. It is Windows only. **Does StoryFolder charge per terabyte?** No. Pro is licensed per machine, and it never stores your originals, so the size of your archive does not change the bill. Current figures are on [storyfolder.com/pricing](https://storyfolder.com/pricing). **Is iconik free?** Its Collaborator seat is listed at $0 per month, with Browse at $9, Standard at $65 and Power at $120 per user per month on the Starter plan as of 2 September 2026. Professional and Enterprise are quote-only. **Is Airtable a video MAM?** No. Its free plan gives you a database with thumbnails and a gallery view, and attachments are capped per base at 1GB, 20GB and 100GB by tier, so confirm the current cap before you store footage there. **How much does CatDV cost?** Quantum publishes no price for it. The product page offers Contact Us and Schedule a Demo, so treat any number you see quoted elsewhere as unverified. **What does Adobe Bridge cost?** Check Adobe's own page and your Creative Cloud entitlement. No first-party confirmation of its licensing was available for this comparison, so do not plan around a figure quoted in an article. --- # Cataloging b-roll across clients without a MAM URL: https://storyfolder.com/blog/cataloging-b-roll-across-clients-without-a-mam Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 10 min A searchable visual index is enough for a studio of two to fifteen people. When you actually need a media asset manager, and what to build instead until then. *Last updated: 2 September 2026.* A searchable visual index is often enough for a studio of two to fifteen people. If the job is to look at thumbnails, narrow by client and job number, save the questions you ask weekly, and hand a producer a spreadsheet, that is index work. You need a MAM once the media itself has to be managed. Managing the media means where it lives, how it gets ingested, which proxies your editors cut with, who is allowed to touch it, and how two people work in it at once. StoryFolder sits on the index side of that line and does not pretend otherwise. It leaves your files where they already are, keeps its own database on one machine, and manages nothing about the media itself: no automatic ingest, watch folders, volume tracking, proxies your NLE can cut with, or sync between machines. Teams share the output of the library rather than the library. When the question you actually need answered is "which drive is this on," that is a drive cataloguer's job, and NeoFinder and DiskCatalogMaker are the two people keep coming back to. **New in 0.4.** The library side of this argument got the three pieces it was missing: collections, quick filters and video-level metadata fields. [What each one is for](https://storyfolder.com/blog/library-folders-collections-quick-filters). ## Do small studios actually need a MAM? Usually not. The dividing question is whether you need to find the shot and point back at the source, or whether you need to govern the media itself: move it between storage tiers, hand out permissions, generate proxies, keep an inventory of what is archived where. Governing media is infrastructure, and it arrives with the administrator that infrastructure needs. A post veteran, quoted by [postPerspective](https://postperspective.com/how-can-a-mam-help-this-post-veteran-shares-his-thoughts/), drew the low end of the line without hedging: "If you are a freelance, project-based editor and you are working from home, you don't need a MAM." He does not say what you should use instead, which is where most readers get stuck. The job in front of you What it takes Find the drone shot from a client's job two years ago A visual index with business fields on it Recognise a shot by looking at it Thumbnails, at shot level Narrow to one client, one job, one kind of material Typed fields and filter chips Ask the same question every Monday Saved views Gather picks from twelve projects into one place Cross-project collections Give a producer a shot list they can open in Excel A spreadsheet export Know which unplugged external a file is on A drive cataloguer Ingest a card automatically when it mounts A MAM with watch folders Give an assistant read-only access, and an editor write access A MAM with permissions Have two editors log the same library at once A MAM with a server behind it Push proxies into everyone's NLE A MAM, or your own proxy pipeline Someone on [r/editors](https://www.reddit.com/r/editors/comments/1c31qjk/), asking whether a very basic MAM exists, wrote the requirements list for this whole category better than any product page has: > "All they really want is a database that will search a volume, create thumbnails, and allow comments. All they want to do is know where the footage can be found. They don't want to be tied in to monthly contracts, nor do they need any automated tagging or other bells and…" Thumbnails and findability are exactly what an index gives you. "Search a volume" is not. StoryFolder indexes the videos you deliberately import, one at a time, and it never sees the rest of the disk they came from. Point it at a selects reel and each shot in that reel gets a thumbnail and somewhere to type; point it at nothing and a folder of two hundred untouched clips stays invisible. ## What is the smallest workable b-roll system? Storage you already own, a schema no bigger than the pillar's eight-field template, a visual index over the material you would genuinely reuse, and something exportable that points back at the original file. A field nobody fills costs more than the one you never made, so cut the schema shorter than feels comfortable. A shape that has survived contact with real client work: Field What it answers `Client` Whose job was this? `Job#` Which job, in your own numbering? `Content Type` B-roll, interview, GVs, drone? The first two gate a whole job and the third narrows inside it. The rest of the template, where those field names came from and how often each one actually gets filled is the pillar's story, how to catalog b-roll across multiple clients. Fields belong to the library rather than to any one project, so they appear on everything you import afterwards, and the shape of the index itself is [folders, collections and quick filters](https://storyfolder.com/blog/library-folders-collections-quick-filters). Build a search or a filter, then `Save as quick filter` to keep it as a card in the rail with a live count that re-runs as that library grows. When no filter describes the pull you want, add shots to a collection that spans projects, one shot per `Add to collection`, which is quick for a dozen picks and a slog for forty. Building the schema, correcting the shot boundaries and exporting the result are all covered there too. This page is only about whether that layer is enough for you. ## Which jobs can a lightweight visual index cover? Everything in the left column below, and none of it requires a server. What you want to do How an index does it Recognise material by eye A grid of shot thumbnails per video Find a phrase someone said Search matches transcript alongside metadata, in one pass Find a typed value Search matches Text, Dropdown, Tag and Number fields by substring Combine client and shot type A video-scoped filter gates whole projects, then a shot filter selects inside them Reuse a question Save it as a quick filter, with a live count Build a pull for an edit A collection of hand-picked shots spanning projects Give a producer a shot list XLSX with a column per field and a thumbnail per row Show a client the shots A published link, or a storyboard PDF Two limits on that last row are worth knowing before you promise anything. The published link is a page people look at: three layout modes, no commenting, no picking, no timecodes, and no video playback for boards built from local files. And the spreadsheet export sits behind Pro, while the free tier runs 6 boards at 50 shots each, which is enough to test the idea on a short reel and not enough to run an archive on. ## What are the warning signs that you need a real MAM? Any one of these is a hard cutoff, not a nice-to-have you can work around: - **Media arrives faster than a person can import it.** Watch folders and card ingest are the point at which an index stops scaling. StoryFolder imports one video per drop and says so in the overlay. - **Your editors need proxies generated centrally.** StoryFolder makes a small internal proxy so the app can browse quickly. It is not a proxy your NLE cuts with, and there is no transcode farm behind it. - **Two people need the same library open.** The database is a local SQLite file on one machine with nothing syncing it. A second person gets a published link or an XLSX, which is a copy of an answer rather than access to the library. - **Access has to differ by person.** There are no roles and no per-user permissions. A link is public, unlisted, or password-protected, and that is the entire model. - **You need to know which shelf a drive is on.** Nothing records a volume name. A file that moves goes media-offline and offers Locate File…, which reconnects a replacement on a duration match, and that is a repair rather than an inventory. - **Picks have to land back in the timeline as the original camera clips.** Picks do land in a timeline — the Editorial output writes Selects.edl, Selects.xml (Final Cut Pro 7 XML) and Selects.fcpxml — but each board is one imported video, so what you get is a selects timeline against *that* file, one board at a time. There is no assembly that gathers picks from twenty clients' boards into a single sequence, no AAF, and nothing reads back in. When the deliverable has to be a multi-source pull keyed to camera originals, that is still a MAM or an NLE job, and a selection leaves here as a spreadsheet, a PDF or a link instead. The fifth is the one that catches studios out, because it feels like the same problem as findability and it is a different product category. Oliver Peters, writing about project organisation in [January 2021](https://digitalfilms.wordpress.com/2021/01/10/project-organization/), described a stack with twelve backup drives at home and over two hundred at work, and named DiskCatalogMaker as the piece that answers where something is. Someone on [r/videography](https://www.reddit.com/r/videography/comments/16chfk0/) put the amateur version of the same tool plainly, counting the drives on the shelf at the time they wrote it: "I offload completed projects and have a spreadsheet of what's on which drive (I have 40 drives in a closet now, going back about 16 years)." A drive cataloguer indexes a disk once and then answers questions about it while it sits unplugged. That is a genuinely different mechanism from indexing shots inside videos you chose. The drive cataloguers do not solve the shot problem either. A poster on [Hacker News in 2026](https://news.ycombinator.com/item?id=47072593), hugorut, described years of footage with filenames like "C01456" and a run through NeoFinder, Lightroom and assorted DAMs, none of which fit how he works with video. Choose the layer that matches the question you get asked most, and run both if you get asked both. ## How does the workflow fail when nobody maintains it? It fails at the fields nobody can fill fast enough. A poster on [r/editors](https://www.reddit.com/r/editors/comments/v3nh4w/) aimed this at the tier above, and it lands just as hard here. They wrote that the enterprise products were "Great for a big post house, but really pricy for smaller outfits. My mini soapbox about MAM is that it will only ever be as good as whoever is keeping it…" So make one or two fields genuinely required and let the rest be optional. Favour values that repeat down a whole reel, because you can select a run of shots and set one value on all of them at once. An exhaustive scheme collapses inside a month. A two-field scheme survives a change of staff, which is the only test that matters. ## What should you test before committing? Run this on one reel, not on your archive: - Import a local .mov or .mp4 — a selects or b-roll reel from a recent job. See [importing a local video file](https://storyfolder.com/help/importing/from-file). - Create the fields you would actually fill, and no others. See [custom fields](https://storyfolder.com/help/notes/custom-fields). - Fill them on the reel: drag-select a run of shots on the board, then set one value on all of them from the shared panel. Time yourself. - Type a value into the search box and check the shot comes back with a reason you can read. See [searching metadata and transcripts](https://storyfolder.com/help/editing/search). - Move the source file to a different folder, reopen the project, and reconnect it with Locate File…. - Export the spreadsheet and send it to a colleague who did not shoot the job. See [exporting a shot list](https://storyfolder.com/help/exporting/spreadsheet). If step three took longer than the reel is worth, cut fields until it does not. If step five is the step you care about most, you want a drive cataloguer instead. And if you got to step six and immediately wanted the recipient to be able to edit what you sent, you have already outgrown this layer and should be [pricing a MAM](https://storyfolder.com/blog/cheap-alternatives-to-a-mam-for-a-3-person-video-team). ## FAQ **What size team is this workflow for?** Studios of roughly two to fifteen people doing client work, which is who the underlying research covers. It is an audience description rather than a limit the software enforces. **Does StoryFolder replace a NAS?** No. A local import is never copied into the app, so the file stays on your NAS or drive and the app keeps an index and its cached frames locally. **Can it import a whole drive automatically?** No. Import takes one video at a time, and there are no watch folders, so a multi-file drop skips the extras. **Can two editors share one live library?** No. The library is a local SQLite database on one machine with no sync layer. Teammates receive a published link or an exported spreadsheet. **What finds a file on an unplugged drive?** A drive cataloguer such as NeoFinder or DiskCatalogMaker. StoryFolder records no volume name and only offers `Locate File…` once you have reconnected the source. **Is the free tier enough to try this?** It runs 6 boards at 50 shots each, with custom fields included, which is enough for a test reel. Spreadsheet export is Pro. --- # How to catalog b-roll across multiple clients URL: https://storyfolder.com/blog/how-to-catalog-b-roll-across-multiple-clients Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 12 min A producer wants the drone shot from a job two summers ago and the editor has left. How a small studio catalogs b-roll across clients with a few shot-level fields that survive the project file. *Last updated: 2 September 2026.* A producer asks whether you still have the drone shot of the loading dock from the job you shot two summers ago. The project is archived, the person who cut it has left, and what survives is a job number and a rough memory of a folder name. To make that answerable, leave the media where it lives and build one small schema around the business: `Client`, `Job#`, `Location`, `Content Type`, and a text field holding the folder the original sits in. Import the piece you would actually reuse, and those fields land on every shot in it. Custom fields are included on every plan. StoryFolder finds the shots in whatever you import — the finished cut, or the selects and b-roll reel — and the fields live in the library, so one search box reaches the shot fields and the transcript across forty different jobs, while video-level fields like `Client` gate whole projects with a filter chip and answer to the search box as well. StoryFolder keeps its own database and points at your file where it already sits. That is why the index still works with the drive unplugged, and why it never knows which drive that is. It does not manage storage, watch folders, ingest in batches or catalogue a shelf of unplugged externals. When the real question is "which volume is this on," that is what NeoFinder and DiskCatalogMaker are for. **New in 0.4.** Collections hold hand-picked shots across videos, quick filters save the searches you rerun, video-level fields carry `Client` and `Job#` on the project, and a desktop assistant can now search the library for you. [The library controls](https://storyfolder.com/blog/library-folders-collections-quick-filters) · [connecting an assistant](https://storyfolder.com/blog/connect-an-assistant). ## Why does b-roll become unfindable when a project closes? Your keywords live inside the file that created them, so the edge of that file is the edge of your search. Frame.io's own Workflow Guide states it and then gives advice that only works if your unit of work is one production: > "Content metadata does not live with the file. It exists only in an NLE or Media Asset Management System (MAM)." > "For this reason, it is always best to remain within one NLE from beginning to end of the project." > — [Frame.io Workflow Guide, managing metadata](https://workflow.frame.io/guide/managing-metadata) "Remain within one NLE" is fine advice for one job and no help at all across forty jobs and four years. The NLEs are consistent about where the boundary falls: Where you typed it What a search reaches Premiere clip metadata The open project. Adobe's own documentation says clip metadata "exists only within your Premiere project file". Embedded XMP does travel with the file, but Premiere will not search it until the media is re-imported, and the Media Browser matches filenames. Final Cut Pro keywords One library at a time. Keyword ranges are the best ergonomics in the category and they live inside the `.fcpbundle`. Studios keep a library per client, which puts every client behind a different door. Resolve Smart Bins One project. Power Bins reach across projects inside one database, and are curated by hand; a bin cannot be both. Avid search "All the bins in the current project." Crossing projects means MediaCentral. StoryFolder The library. Fields are defined once and appear on every video you import, and a value is stored against a frame number in the app's own database. Cross-library search has been Final Cut's most-asked-for feature for years. Item #28 on [fcpx.tv/top](https://fcpx.tv/top.html) asks for "a single master searchable database across all previously opened Libraries." On the [Adobe forums in 2020](https://community.adobe.com/questions-729/organize-for-multiple-projects-1365234), teachersam compared the situation to Lightroom's single catalogue and called opening and closing every project from the whole year "really annoying." On the [Blackmagic forum in 2024](https://forum.blackmagicdesign.com/viewtopic.php?t=205428), MartyMc, wanting a central repository independent of any one project, worked through subclips, rejected them as project-bound, and then asked the question everyone asks eventually: does a pointer-based library still mean anything after you unplug the drive. ## Which metadata fields make client footage reusable? Eight fields answer almost every question a producer will bring you in two years: who the job was for, which job it was, where it was shot, what kind of material it is, who is on camera, whether you are cleared to reuse it, where the original file lives, and whether it is any good. Fields you will not fill are worse than fields you do not have. The evidence for that shape is repetition. In an analysis of 813 storyboards from 295 paying StoryFolder customers, the single busiest account had built exactly this schema and filled `Client`, `Job#` and `Title` **3,852 times each**. One client's name accounts for 2,046 of those values and a second for 1,528. A `B-ROLL` field was filled **828** times. Alongside them sit `Location` (town and state), `Content Type`, `Talent Name`, and a field named `Find in Folder`, whose most common value was typed **38** times. A practitioner template, not something the app ships with: Field Type Lives on The question it answers `Client` Dropdown the video Whose job was this? `Job#` Text the video Which job, in your own numbering? `Content Type` Dropdown the shot B-roll, interview, GVs, drone? `Location` Text the shot Where was this shot? `Talent Name` Text the shot Who is on camera? `Release form` Checkbox the shot Are you cleared to reuse it? `Find in Folder` Text the shot Where does the original file live? `Rating` Rating the shot Is it any good? Six field types ship: Text, Number, Tag, Dropdown, Checkbox and Rating. A category decides whether its fields attach to the video or to each shot, so `Client` is typed once per import while `Location` varies down the board. What a new library ships with is a category called `My Notes` holding twelve text fields: `Key Takeaways`, `Interpretation`, `Story`, `Messaging`, `Emotional tone`, `Symbolism` and the rest. Those are ours, not a customer's, and they are built for taking apart a film rather than for running client work. Building your own schema is the first thing you do, and [creating a category and its fields](https://storyfolder.com/help/notes/categories) takes a couple of minutes. Keep it small, because the failure mode is well documented. [No Film School's tagging guide](https://nofilmschool.com/premiere-pro-tagging-workflow), still the canonical Premiere piece, said so in 2019: "It will take you forever to add tags to your clips. That's just a fact." And on [Creative COW in 2015](https://creativecow.net/forums/thread/how-are-you-using-metadataae/), Mark Raudonis put the objection in four words: "Logging metadata is NOT editing!" So the filling has to cost close to nothing per shot: - **Import the piece you would reuse.** The finished cut or the selects reel, not every card from the shoot. A local .mov or .mp4 works great, and in that same analysis 77% of paying-customer boards came from local files rather than a URL. See [importing a local video file](https://storyfolder.com/help/importing/from-file). - **Create the fields once.** Settings → Notes & Metadata → Shot Metadata, + New category, then add fields to it. You can also right-click a category in the shot inspector and add a field without leaving the board. See [custom fields](https://storyfolder.com/help/notes/custom-fields) and [choosing a field type](https://storyfolder.com/help/notes/field-types). - **Put the once-per-job answers on the video.** Client and Job# go in the Video Metadata pane, where you type them one time for the whole import instead of once per shot. - **Select shots and edit them together.** One panel serves any selection, and a field the selected shots disagree on reads Mixed · N values. This is what makes Content Type and Find in Folder cheap: a whole run of shots from one folder gets one value in one gesture. Tag fields are the exception and edit one shot at a time, so keep the taxonomy in a Dropdown if you want it filled. - **Fill one shot properly, then paste it.** Copy notes & metadata on a good shot, then Paste notes & metadata, choose All N shots and leave the write mode on Only fill empty fields. Existing values are never touched, and empty fields are never copied over anything. That gets `Client`, `Job#`, `Content Type` and `Find in Folder` onto a 400-shot board for a few gestures each. `Location`, `Talent Name` and a Rating are the ones that genuinely cost you time, because they change shot to shot. Fill those on the shots you would actually pull again and leave the rest empty; an empty field still filters as empty. ## How does Find in Folder make an archive searchable? The Library's search box covers the video title and description, the shot fields you can type into, and the transcript. It does not cover the file path. A customer worked that out and did the obvious thing: made a text field, typed the folder name into it, and turned an unsearchable path into a searchable value. `Find in Folder` is a workaround, and it is the right one. Specifically, the search box matches plain case-insensitive substrings against: - the video's title and description; - every shot-scoped field of type Text, Dropdown, Tag or Number; - the transcript segments overlapping each shot. Ratings and checkboxes carry no text to match, so they are reached with a filter chip instead. Video-scoped fields such as `Client` are read by the box like any other text, dropdown, tag or number field, so typing a client name brings back the projects it is filed against as well as the shots that mention it. The folder locator stays a shot text field for a different reason: the box does not read filenames or paths, so somebody has to type the folder name into something. Results come back grouped under the video that owns them, and each one tells you why it matched, using the field's own label and the matching value. Search `harbour` inside a folder holding a year of jobs and you get a row reading `Location · Harbour Point` under one project and `Find in Folder · Harbour Refit finals` under another, because the search matches the substring wherever it sits in the value. The box covers where you are standing: a folder and everything nested inside it, or, from the library root, the whole library. Type a folder name you would actually recognise rather than a full path. StoryFolder records one absolute path per import for its own use and nothing about the volume that path was on. ## How do you search across clients without opening every project? Search from the library root and you're already across the whole library. What a quick filter buys you is reuse: save the query once and it becomes a card in the rail with a live count that re-runs as the library grows. A folder still covers itself and everything nested inside it, so step up to the root if a client's work is scattered across several; [what each search destination covers](https://storyfolder.com/blog/library-folders-collections-quick-filters) sets out the rest. A useful query crosses the two scopes. `Client is Northline Dairy` is a video field, so it gates whole projects; `Content Type is B-roll` is a shot field, so it selects inside the projects that survived. Filters are ANDed, one per field, and the chips read as sentences: **Location contains harbour**, **Rating is at least 4**, **Release form is true**. The count line above the results reads like `47 shots in 6 projects`. For picks that no filter describes, there are collections: hand-picked bins of shots drawn from any number of videos, which is the nearest thing in the product to a Power Bin. A collection survives you re-cutting the video later, and nothing in it is destroyed when shots are merged or split. `Add to collection` takes one shot per invocation. A desktop assistant can do that search for you, in one call across every project: Claude Desktop, Claude Code, or ChatGPT through Codex. It reads the running app, so StoryFolder has to be open, and its edits land in version history badged as its own. The `search_frames` tool it calls omits the project entirely and searches every project not in the Trash at once, across metadata and transcript together, and each match names its project. That is the shape of [asking an assistant to search across projects](https://storyfolder.com/blog/connect-an-assistant). ## What survives when the drive is unplugged or the shots are re-cut? The index does. A local import is never copied into the app, so when the file moves, is renamed, or the drive goes back on the shelf, the project keeps browsing from its cached frames and proxy and tells you what happened: > "The original video file for this project can't be found. It may have been moved, renamed or deleted — use Locate File to reconnect it." `Locate File…` accepts a replacement on a duration match, so a re-encode or a remux of the same cut reconnects while a different video is refused. Re-cutting is safe for the same underlying reason. Values are keyed to the frames you put them on, because shots are re-derived from scratch every time you move the sensitivity slider or split and join something. Drag sensitivity across the whole board and your notes are still on the frames you put them on. ## When has this workflow outgrown a visual index? Three things send you past this layer: watch folders and batch ingest, since StoryFolder imports one video per drop; proxies your NLE can actually cut with; and two people on one library at once, since the database is a local SQLite file with no sync layer behind it. Where exactly that threshold sits, and what the alternatives cost, is its own argument. There is a second reason this layer exists at all, which is that transcripts do not see b-roll. The open-source [arkiv](https://github.com/vulture-s/arkiv) project indexed a real 1,506-clip production library in which 1,161 clips carry no dialogue. A tool that searches only what was said reaches under a quarter of that library, which is why typed fields on a picture still matter. ## What can you hand to someone else? Three things: a spreadsheet with a thumbnail in every row and a column per field, a storyboard PDF, and a published link. The spreadsheet is the one producers ask for, and it is a Pro export. See [exporting a spreadsheet](https://storyfolder.com/help/exporting/spreadsheet) and [publishing a link](https://storyfolder.com/help/sharing/publish). None of them carries the media or the searchable database with it. ## FAQ **Does StoryFolder store my b-roll files?** No. A local import stays exactly where it is on your disk; the app writes its own cached frames and a proxy for browsing, plus a `database.sqlite` holding your metadata. **Can StoryFolder tell me which hard drive a clip is on?** No. It records one file path per import and nothing about the volume. Cataloguing offline drives is what NeoFinder and DiskCatalogMaker do. **Which metadata field types can I create?** Six: Text, Number, Tag, Dropdown, Checkbox and Rating, where a rating is 1 to 5 stars and clearing it means unrated rather than zero. **Can I set `Client` on forty videos at once?** No. Library selection is one video at a time, so a field that spans many imports is typed per video. Multi-select editing works within a single project. **Can I search transcripts and custom fields in one box?** Yes. The Library search box matches metadata fields and transcript in one pass and tells you which one produced each hit, across your whole library from the library root, or within a folder and everything nested under it. The matching is plain substring, not fuzzy. **Which platforms does StoryFolder run on?** macOS and Windows. There is no Linux build. **Do I need to pay to build a schema like this?** No. Custom fields are included on every plan; spreadsheet export is Pro. The free tier gives you 6 boards at 50 shots each and lets you build and search your own fields alongside the ones that ship with a new library. --- # Sharing one b-roll library across a small team URL: https://storyfolder.com/blog/sharing-one-b-roll-library-across-a-small-team Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 13 min A team b-roll library is five separate decisions: where originals live, who indexes them, which fields survive a handoff, and how a freelancer finds the wide of the loading bay. What StoryFolder covers and what it doesn't. *Last updated: 2 September 2026.* Three of you shoot, two of you cut, and the footage already sits in a shared cloud drive with folders for interiors, exteriors, departments and events. Somebody asks for the wide of the loading bay from last spring, and the folder tree cannot answer. Next month a freelancer starts on that same job and every filename on the drive looks like `C0042.mov`. A team library is really five separate decisions: where the original files live, what people browse when the originals are too big to move, where the searchable notes live, who is allowed to see what, and what somebody actually receives when they need to cut with it. Buy or build each layer on its own, because one product almost never does all five, and the two that most often get collapsed together are storage and search. StoryFolder is the search layer, and it runs on one person's machine. It keeps its own local database and points at your files where they already sit, which is why it still works with the drive unplugged. The team gets the outputs: a published board, a spreadsheet, a PDF. The storage, the drive inventory and the proxies your NLE cuts with are somebody else's job, and this page is mostly about which somebody. ## What does a shared b-roll library actually have to share? Five layers, each with its own owner and its own way of failing: the original media, the browse copies light enough to scrub over a home connection, the index of thumbnails and searchable notes, the access rules deciding who sees what, and the delivery package somebody actually receives when they need to cut with it. Layer What it holds Who normally owns it How it fails Original media The camera files and finished masters Shared cloud drive, NAS, or a shelf of externals Two copies drift; nobody can say which is the master Browse copies Something light enough to scrub over a home connection Cloud storage's own preview, a MAM, or a manual proxy pass Small files never get made, so browsing means downloading The index Thumbnails, per-shot notes, the fields you search on A cataloguing tool, or a spreadsheet Discipline collapses and the sheet stops matching reality Access Who sees the whole library, and what a client sees Whatever hosts the storage, plus whatever hosts the index The client link exposes more than you meant Delivery What somebody gets to cut with The storage layer, by hand The recipient has a beautiful list and none of the media A folder tree solves location. Interiors, exteriors, departments, events: pick one, and the shot that is a drone exterior of a department event is filed under exactly one of them, and the person who did not file it looks in the other two. Multi-axis questions want fields, one per axis, all searchable at once. The reverse trap is worse and more common. A visual index gives you the multi-axis search and gives you nothing at all about governance: which copy is canonical, who is allowed to delete, what happens on the day someone's laptop dies. On [REDUSER in 2016](https://reduser.net/threads/creating-a-catalog-of-stock-footage-for-in-house-use.148140/), a poster whose shop had grown to two shooters and two editors described trying Lightroom, finding it would not take MXF, falling back to Finder comments, and then watching those comments get stripped when the files moved between machines. That is the whole problem in one thread: the notes were real, and they were attached to the one thing that does not survive a transfer. Attaching notes to the file is a reasonable instinct and it fights the network. Finder tags are extended attributes, and they routinely do not survive an exFAT or SMB copy. Spotlight indexes filenames, tags and typed comments, and does not index what is inside the video. Anything you type into a shared drive's own web interface belongs to that vendor's search box and comes out through that vendor's export. So the working rule for a small team is that the index has one owner and one home, and the storage layer is treated as media only. Agree the schema across everyone, agree who types it, and keep the storage doing the one thing storage is good at. The field set that survives client work is the schema question the cataloging guide covers in full: `Client`, `Job#`, `Location`, `Content Type`, and a text field naming the folder the original sits in, so the path becomes something the search box can read. Pick the [field type](https://storyfolder.com/help/notes/field-types) per axis while you are at it: a Dropdown holds one of its own options, so `Content Type` comes back spelled the same way across three jobs, and a text field will take whatever anybody types. Write the definitions down at the same time, because a field name is obvious to the person who invented it and ambiguous to everyone else. Does `Content Type` mean the camera setup or the deliverable, and does an empty `Release form` mean not cleared, or not checked yet? Right-click a field in the shot inspector, choose `Add description…`, and answer the placeholder's own question, "What is this field for, and how should it be filled in?" That description lives with the schema, so the next person to fill the field reads the same rules you did. See [documenting each metadata field](https://storyfolder.com/help/notes/custom-fields). ## Where does the library live, and what can the team open? On the machine of whoever imported the footage. StoryFolder keeps a local database and leaves your files where they are, so the index needs no server and no upload, and it has one owner. Nobody else opens it. The team receives what that person publishes or exports. StoryFolder writes a local `database.sqlite` alongside its cached frames and browsing proxies, and a [local import](https://storyfolder.com/help/importing/from-file) is never copied into the app. That is why the index survives the original going back on a shelf, why it needs no server of its own to search, and why the library itself is a single-owner object: one person types, and everyone else opens what that person sends out. What goes out is specific. In the editor toolbar, `Get Share Link` opens a popover headed `Publish your storyboard`. Leave `Include notes & data` on, pick `Public`, `Unlisted` or `Password`, click `Publish`, then `Copy link`. The recipient opens a view-only page at `/b/<board id>` with three layout modes. What gets uploaded to it is the shot grid, every shot-scoped field keyed by its own title, and the per-shot transcript. There is no video player on that page for a local-file source, and 77% of paying-customer boards are local files, from an internal analysis of 813 boards across 295 paying customers. Password protection is Pro. `Include notes & data` is all or nothing: it publishes every shot-scoped field on the board. If a `Job#` or an internal rating is not something the client should read, archive the field before publishing rather than assuming the link will hide it. The spreadsheet and PDF exports do let you choose fields; the published link does not, and generalising from one to the other is the mistake that leaks something. See [publishing a board](https://storyfolder.com/help/sharing/publish). ## Which storage setup fits a small team? Three shapes cover almost every three-to-ten-person shop, and they differ mostly on who does the copying. Shared cloud drive NAS, reachable over VPN Cloud MAM Getting originals in Manual upload, whoever remembers Manual copy on the LAN, fast Managed ingest, usually with watch folders Working from home Download the original, or scrub the vendor's preview Depends entirely on the upload at the office end Built for it; browse copies are the product Browsing copies Whatever the vendor generates Whatever you generate by hand Generated on ingest, often with NLE-ready proxies Permissions Per folder, per account Per share, plus whoever holds the VPN Per user and per role, with an audit trail Cost shape Per seat, per terabyte Hardware, then your own time Frequently per user and per terabyte and per month at once Offline archive Not addressed Not addressed Sometimes; check before believing it That last cost shape is the one the forums argue about. Across at least four separate r/editors threads, editors pricing enterprise media management landed on the same phrase: [per month, per terabyte, per user](https://www.reddit.com/r/editors/comments/1ml0g74/). On one of those threads a poster summarised the category as "true enterprise products. Great for a big post house, but really pricy for smaller outfits. My mini soapbox about MAM is that it will only ever be as good as whoever is keeping it…" ([r/editors](https://www.reddit.com/r/editors/comments/v3nh4w/)). Prices move; read those for the shape of the billing, not for a current number. Only the MAM column even claims the archived-drive question, and it claims it inconsistently. Someone on [r/videography](https://www.reddit.com/r/videography/comments/16chfk0/) described the version most shops actually run: "I offload completed projects and have a spreadsheet of what's on which drive (I have 40 drives in a closet now, going back about 16 years)." StoryFolder does not close that gap. It records one absolute path per import and nothing about the volume that path was on, so it can tell you a shot exists and cannot tell you which external it is on. It has no watch folder and no batch ingest, taking one video per drop. It writes an internal browsing proxy for its own grid and no proxies for your NLE. Cataloguing a shelf of unplugged disks is what NeoFinder and DiskCatalogMaker are built for, and running them alongside the index is a perfectly sane setup: one tool answers "which drive", the other answers "which shot". The same split decides how footage reaches somebody outside the team. Copying the media and deciding what they are allowed to delete belong to your NAS, your cloud drive or a courier. What you can do is make the two line up. The folder value in your index is a string you typed, so it means whatever the folder was called on your machine: preserve those folder names in the copy you send, and put a plain drive or folder manifest next to the sheet when the material is split across more than one volume, because nothing in the index generates one. Your own copy of the index survives all of this. A renamed file or an unplugged drive leaves the project browsing off its cached frames, with `Locate File…` there to reconnect the original, which the cataloging guide covers in full. That is a repair for whoever owns the library, and a recipient outside the team never had one. ## Which MAM triggers are team-shaped? Three: two people needing to write to the same catalogue at once, access that has to differ by person rather than by link, and centralised ingest with an audit trail. A single-owner index has no answer to any of them beyond taking turns. Whether you need a MAM at all is the prior question, and the guide to cataloging b-roll without a MAM settles it. ## What should the shot log spreadsheet contain? One row per shot, carrying a thumbnail, your own metadata columns, timecodes and exact frame bounds. In the app: open Export, tick `Spreadsheet / Shot List`, tick `Images`, choose which fields become columns, and run it. You get `Shot List/Shot List.xlsx`, worksheet `Shot List`, in the destination you picked. The columns come out in a fixed order: Column What it holds `Frame` The frame image, embedded 200 px wide, with the row height scaled to the video's aspect ratio `Filename` The image file that frame was written as your fields One column per shot field you selected, headed with the field's own title — `Client`, `Job#`, `Location`, `Find in Folder` `Start Timecode` `End Timecode` `Duration Timecode` Where the shot sits in the file, as `HH:MM:SS,mmm` `First Frame` `Last Frame` The exact integer frame numbers of the shot's bounds `End Time` The shot's end in raw seconds The two image columns appear only when frame images are being written at all, which the Images, Storyboard and online-storyboard options each satisfy. Only shot-scoped fields become columns, so a project-level `Client` typed once for the whole import is kept out of a sheet where it would repeat down 400 rows as the same value. Tell the recipient to work from `First Frame` and `Last Frame` when a boundary has to be exact. Those two are integers counted in the file itself, so they survive any conversation about frame rate, and the timecode columns run from the file's own start. For somebody who never opens the app, paste the field definitions you wrote into the schema at the top of the sheet yourself; the export carries your headers and not your reasoning. A sheet like that is a specific, old request. On Creative COW in 2017, Alan Barker asked simply: "Is it possible to print the Premiere data out as a log?" Nobody answered him. Seven years earlier, in the same forum's [b-roll library search thread](https://creativecow.net/forums/thread/broll-library-search-system-3/), a poster had already described accumulating more clips than anyone could hold in their head. Both wanted an artefact that leaves the software: a list of what exists, with pictures, that opens anywhere. A `.csv` twin of the workbook lands in the same folder. Point a script at it; it holds the same columns and no images. One half of this is Pro: exporting the spreadsheet your fields become columns in. Creating your own fields, the storyboard PDF, the image export and public links are included on the free tier, which gives you 6 boards holding 50 shots each, enough to see whether the sheet is the artefact you want before an archive depends on it. See [exporting a spreadsheet](https://storyfolder.com/help/exporting/spreadsheet). ## Should you send a link, a PDF, or the spreadsheet? Send the spreadsheet, plus a written line saying where the media is. Reach for the other two when the recipient only has to look at the footage. Who it is for What it does that the others don't XLSX shot log Whoever is doing the cutting Sorts and filters; your field names are columns; thumbnails sit next to the values [Storyboard PDF](https://storyfolder.com/help/exporting/pdf) Anyone reviewing away from a screen, or on paper Prints, and takes pen marks Published link A producer or client who only needs to browse Needs no software and no account; three layout modes What none of them carries is the media. The link points at a page, the spreadsheet points at nothing, and moving the actual files stays a storage-layer job. ## How do you test the handoff before anyone relies on it? Hand the package to somebody in the building who did not shoot the job, and give them three lookups. Fifteen minutes, and it is the only part of this that finds the gaps. This assumes you have already run the one-reel pilot in the guide to cataloging b-roll without a MAM. - **Find a shot by job.** Filter or sort the sheet to one Job# and pull the three best b-roll shots for it. Fails when the field was filled on some shots and not others. - **Get from a row to a file.** Take one row and locate the original on the drive you sent, using only the folder value and the filename convention. Fails when the folder field says something only you would recognise. - **Match the bounds.** Open that original and confirm the shot really starts at First Frame. Fails when the sheet came from a different cut than the media you shipped. The test passes when they finish all three without StoryFolder installed and without messaging the person who shot it. What it exercises is the package, which is the only thing the recipient will ever hold. ## What the editor still does in the NLE Nearly all of it, and the exception is worth being exact about. **You** can export a selects timeline from your own copy of the library: switch Editorial on and StoryFolder writes `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` for the shots you kept, one board's imported video at a time, and you can send that file along with the sheet. There is no AAF. What does not exist is a route in the other direction: **the selects somebody else marks in the sheet cannot come back** — there is no spreadsheet import and no timeline format is read in — so their picks get assembled in their timeline the normal way and their notes reach you as a conversation. ## FAQ **Does StoryFolder upload the original `.mov` to its library?** No. A local import stays at its existing path on your disk; the app writes its own cached frames, a browsing proxy and a local `database.sqlite`. **Can two editors open the same StoryFolder library?** No. The library is a local database on one machine with no sync layer, so one person owns it and the rest of the team receives its outputs. **Can a shared link play my local footage?** No. The published page has no video player for a local-file source, and 77% of paying-customer boards are local files. **Can a shared link include our notes?** Yes. `Include notes & data` publishes every shot-scoped field by title, plus the per-shot transcript. It is all or nothing, so archive anything internal first. **Can someone open the shot log without installing StoryFolder?** Yes. It is a standard Excel workbook, `Shot List.xlsx`, with a worksheet named `Shot List`. **Can the exported spreadsheet include pictures?** Yes. Turn on Images and each row embeds a 200 px-wide frame next to your own field columns. **Are the spreadsheet timecodes source timecode from the camera?** No. They are elapsed from the start of the file, and `First Frame` and `Last Frame` are the exact integers to work from. **Can a freelancer send the spreadsheet back with their picks in it?** No. There is no spreadsheet import, and no EDL, XML, FCPXML or AAF is read back in either — every interchange format StoryFolder speaks is write-only. Their selections come back however you already collect notes. **Which parts of this cost money?** Spreadsheet export is Pro, and the handoff package needs it. The free tier gives you 6 boards at 50 shots each, with custom fields, the storyboard PDF and public links included. --- # A good way to catalog and organize footage you already shot URL: https://storyfolder.com/blog/catalog-and-organize-footage-you-already-shot Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 8 min Terabytes of b-roll across drives, Mac and PC, searchable only by filename. Which kind of catalogue you need (file catalogue, MAM, NLE bins or a shot index), and how to work through a backlog one video at a time. *Last updated: 2 September 2026.* You've got terabytes of B-roll spread across drives, some of it on a Mac, some on a PC, and no way to search any of it beyond scrolling filenames and hoping you remember what's inside them. Before picking a tool: what are you actually trying to find, a file, a shot inside a video, or an asset three people need to see at once? Those are three different jobs, three different categories of software, and picking the wrong one is why so many attempts at "organizing footage" stall out after a weekend. If several people on different machines need to see and update the same catalogue of files sitting on shared or offline storage, that's not something this page can promise StoryFolder handles. A shared, multi-workstation drive catalogue is a real job and it deserves a tool built for it, which StoryFolder currently is not. What StoryFolder does well is the layer most catalogue tools skip: once you've picked a video, finding a specific shot inside it, searchable, without watching the whole thing again. **New in 0.4.** The library gains collections for hand-picked shots across videos, quick filters for the searches you rerun, and video-level metadata fields. [How the three fit together](https://storyfolder.com/blog/library-folders-collections-quick-filters). ## What kind of footage catalogue do you actually need? Match the question you're actually asking to the tool that answers it. Four layers, and most people need two. A file catalogue answers which drive a file is on. A media asset manager adds shared storage, proxies and permissions. Your NLE's bins organize the project you're cutting now. A shot index answers which shot, inside a video you already found. That one is StoryFolder. The question What answers it Which drive or file is this on? A file catalogue: NeoFinder, DiskCatalogMaker, Fast Video Cataloger, or Kyno for browsing media in place Shared storage, permissions, proxies, multiple people ingesting? A media asset manager: iconik, axle.ai I'm mid-edit and need to organize what's in this project? Your NLE's own bins and metadata Which shot, inside this finished video or selects reel? A shot index. This is StoryFolder's job Terabytes across Mac and PC with several workstations is a multi-part problem: the first three rows are where the files live and who can see them, and the fourth, the part covered here, is what's inside one video you've already found. ## What should you catalog about each shot? Fields shaped like your business. The ones real customers build are `Client`, `Job#`, `Location` and `Find in Folder` (board-wide facts typed once), alongside shot-level judgements like `B-ROLL`, `Content Type`, `Talent Name` and, on one account, a field they named `Animation`.Nobody in StoryFolder's customer data built a field called `objects` or `scene type`, which is what a generic tagger hands you: a vocabulary that describes the picture instead of the job it came from, and that you then have to translate every time you search. A new library ships with a starter category called `My Notes`: twelve text fields built for taking a film apart critically, not for cataloguing client work. Those are ours, not something any customer invented, and they're worth deleting or ignoring if what you're building is a footage catalogue rather than a film-studies exercise. ## How can AI help without filling the catalogue with generic tags? Only if you give it your categories first. Create a small closed schema (a `Content Type` Dropdown with the options that matter to you, a `B-ROLL` checkbox) and switch on AI Autofill for just those fields. A Dropdown answer has to be one of the options you defined; it's checked against that list twice before anything gets written, so the model can't introduce a category you didn't create. You can start a run from the library's shot inspector or the editor's, and both open the same modal. A run is still scoped to one video either way. [Custom fields](https://storyfolder.com/help/notes/custom-fields) and AI Autofill are both included on every plan, with the free plan covering your first 100 autofilled shots and Pro unlimited, and a run sends one frame per shot to StoryFolder's server, which calls a third-party vision model. Transcription is the other case; that one runs on your own machine. That control is over vocabulary, not correctness. A valid category can still be the wrong one for a given shot, which is worth knowing before you trust a run unreviewed. Tag and Text fields are the exception to the closed-vocabulary story: they're deliberately open, so a Tag field can gain a tag you never listed, and a Text field will accept anything at all. ## How do you make the catalogue useful to another person? Through a search, an export, or a link. Once shots are tagged, [one search box](https://storyfolder.com/help/editing/search) covers the values in your Text, Number, Dropdown and Tag fields plus the transcript, in one pass, across your library, using plain substring matching rather than fuzzy matching. Rating and Checkbox fields are filter chips instead, so the `B-ROLL` checkbox above is a filter, not a search term. Pull the results out as a [spreadsheet](https://storyfolder.com/help/exporting/spreadsheet) with the fields you choose, or [publish](https://storyfolder.com/help/sharing/publish) a password-protected link for someone without the app, knowing that page is view-only and has no video player when the source is a local file. Where the same query keeps coming back, save it as a quick filter so the queue is a place you visit rather than a filter you rebuild; [collections and quick filters](https://storyfolder.com/blog/library-folders-collections-quick-filters) are how a backlog stops being one long list. That covers the moment a new hire needs to find footage they didn't shoot, or a client asks whether the b-roll from an old job still exists. It does not cover a live, shared, simultaneously-editable catalogue across a team. The handoff runs on export and republish: each person gets a snapshot of what was true when you sent it. ## How does this work on footage you already shot? The same as footage you shoot tomorrow, applied one video at a time, after you have decided which videos deserve it. **Autofill on import** is a setting for future imports and is off by default; it never reaches back into the library you already have. So cataloguing a backlog is a deliberate act per video: pick one, [import](https://storyfolder.com/help/importing/from-file) it, run your schema against it, and review what came back. There is no library-wide button, and pretending there is would be the wrong thing to promise. Three things come before the first import. Back the drives up somewhere durable that is not StoryFolder, because losing the only copy while sorting a backlog is a worse outcome than an unlogged shelf. Decide which footage is worth indexing at all, because most of a backlog never needs to be searchable. Then treat the first video as a pilot: two or three fields you would use to find something later, Autofill switched on for the visual ones, one run over every shot in that video, and a look at the result before you commit the rest of the shelf to the same treatment. ## Which fields survive missing project context? The visual ones. `Content Type`, shot size, camera move, whether B-roll or talent is in frame, a usability rating: a frame supports all of these however old the footage is and however little anyone remembers about the shoot, so they are reasonable Autofill candidates on a backlog exactly as they are on a fresh import. `Client`, `Job#`, the original folder path and release status lived in the paperwork, and a backlog makes them harder to recover. You may genuinely not know the client any more, or the release form may be a sheet of paper in a filing cabinet nobody can find. Type or paste those where you can, and where you cannot, leave the cell blank. A guessed `Job#` in a Text field looks identical to a wrong one, because a Text field has no domain to check it against. A small schema pays off more on a backlog than anywhere else. Five fields you will fill on every video beat fifteen you abandon at video three, and a half-applied schema is worse to search than none. ## In what order should you work through years of footage? Start with whatever is most likely to be asked for again. StoryFolder does not measure or enforce any of this; it is a recommendation about where the effort pays back soonest. - Footage from a client likely to come back for another job. - Footage that could not be reshot if you wanted to. - Whatever a current collaborator is asking about this week. - The low-value archive, last, if ever. If the pattern of mistakes on the pilot video is one you are comfortable correcting by hand, keep going one video at a time. If it is not, that is useful to know before you have spent a weekend on it. ## When should you choose Kyno, Fast Video Cataloger, or a MAM instead? When the unit you're organizing is the file itself. Kyno browses files in place on the drive and hands off to an NLE with metadata attached, which is the right job if what you need is your files organized where they already live. Fast Video Cataloger indexes offline drives on Windows, which matters if "which external is this on" is your actual question. A MAM like iconik or axle.ai adds storage, proxies and permissions behind the catalogue, which is the right layer once several people need shared, managed access. None of the three indexes shots inside a video, and StoryFolder does nothing with storage or drives. Use the one that answers your actual question, and it's fine if that's more than one tool. ## FAQ **Is the search fuzzy, like a typo-tolerant search engine?** No. Library and board search is plain substring matching. A separate, fuzzy search exists only inside the transcript editor. **Can one search cover both my custom fields and the transcript?** Yes, in one pass, across your library — for Text, Number, Dropdown and Tag fields. Rating and Checkbox are reached with a filter chip instead. **Does an active search or filter automatically narrow what I export or publish?** No. Only the favourite and hidden flags narrow an export or a publish; a search query on its own doesn't. **Can a client comment on or mark up a published catalogue?** No. Published pages are view-only, with no commenting, picking, or marking. **Will AI Autofill run automatically on footage I add later?** Only if you turn on **Autofill on import**, and it's off by default. **Can StoryFolder process my whole backlog in one run?** No. A run is scoped to one video. Years of footage means importing and running each video you decide is worth logging, one at a time. **Will a rerun overwrite the values I already corrected on an earlier video?** No, as long as **Only fill empty fields** stays on. It skips any cell that already has something in it. **Does StoryFolder generate proxies for my NLE?** No, and it doesn't rebuild your project either — nothing reads a timeline back in. It does send a selection out: the Editorial output writes an EDL, FCP7 XML or FCPXML of the shots you kept against the video you imported. Proxies and project management are a different job than this one. --- # Can AI tag video with my own categories? URL: https://storyfolder.com/blog/can-ai-tag-video-with-my-own-categories Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 7 min A tagging pass returns person, outdoor, vehicle. You needed B-roll, Interview or GFX. Yes, AI can tag video in your own categories: make the field a Dropdown and the model can only answer from your list. *Last updated: 2 September 2026.* You run a tagging pass over a client reel and get back `person`, `outdoor`, `vehicle`, `daylight`. What you needed to know was whether the shot is `B-roll`, `Interview` or `GFX`. Yes, a model can answer in your vocabulary instead of its own, and the mechanism that makes it stick is the field type. Make the category a **Dropdown** and StoryFolder sends that field's option list to the model as the only permitted answers, then checks what comes back against the list twice before anything is written. An answer that is not on the list is dropped. The control you get is over the vocabulary. `Interview` is a valid answer for a b-roll shot; it is just the wrong one, and it will be written. And the domain check holds for four of the six field types: Dropdown, Checkbox, Rating and Number. Tag and Text fields are deliberately open, so those two can introduce values that were never on your list. One more thing to know before you switch anything on: AI Autofill is included on every plan, with the free plan covering your first 100 shots and Pro unlimited, and it works by sending one frame per shot to StoryFolder's server, which calls a third-party vision model. **New in 0.4.** The per-field Autofill switches, the domain checks and the two global write rules described below all ship in StoryFolder 0.4. [The feature page](https://storyfolder.com/blog/ai-autofill) has the current defaults and the cloud boundary. ## Can AI use the categories I already defined? Yes, for Dropdown, Checkbox and Rating fields. Each of those has a closed set of permitted answers, and for a Dropdown the set is yours. Create a shot field called `Content Type` with the options `B-roll`, `Interview` and `GFX`. When a run reaches a shot, the prompt sent to the model names your field, its type, its options, and its description if you wrote one, and instructs the model to answer with exactly one of those options or nothing at all. If the frame does not support an answer, it is told to omit the field rather than guess. Spelling is normalised on the way in. A model that answers `medium shot` for an option you named `Medium Shot` gets stored with your spelling, so the value still matches the picker and the filters. In an analysis of 813 storyboards from 295 paying StoryFolder customers, current to 1 September 2026, the high-value schemas are business-shaped: `Client`, `Job#`, `Location`, `Content Type`, `Release form`, `Find in Folder`, `B-ROLL`, `Animation`. Not one customer built a field called `objects` or `scene type`. A generic tagger answers a question nobody in that dataset was asking. ## What does "validated twice" mean? Every value is checked against its field's domain on the server before a verdict is returned, and again in the background worker before it is written to your board. - **The option list goes out with the prompt.** For a Dropdown, the domain clause reads as *exactly one of "B-roll", "Interview", "GFX", or null for no answer*. - **The server checks the reply.** The returned value runs through the same shared normaliser the app uses. An exact match passes. A case or whitespace mismatch is corrected to your spelling. Anything else is refused and dropped, and an empty answer is dropped too, because "nothing to write" is not a value. - **The worker checks it again.** Before the write, the same normaliser runs a second time against the same table. A value that fails here is recorded as out-of-domain and is not written. Both checks read from one shared domain table, which is why the second is a real gate. Each type carries its own domain, and [the current field-type table and defaults](https://storyfolder.com/blog/ai-autofill) set out what each one will accept. A rejected answer is silent. There is no toast, no badge and no per-field note saying the model tried and missed, so a blank `Content Type` looks exactly the same whether the model declined to answer or answered something that failed the check. ## Which field types can invent a new value? Tag and Text can. Dropdown, Checkbox, Rating and Number cannot: a Dropdown answer has to be one of the options you defined, a Rating has to be a whole number from 1 to 5 or 0 for unrated, a Checkbox has to be true or false, and a Number has to be a number. Anything else is dropped before it reaches your board. Field type What the model may return Can it introduce something new? **Dropdown** Exactly one of the options you defined, or nothing No **Rating** A whole number from 1 to 5, or 0 for unrated No **Checkbox** True or false No **Number** A number, decimals and negatives included, or nothing No — though any number is in bounds **Tag** A list of short text tags. Your existing tags are sent as suggestions **Yes** **Text** Any text at all **Yes** Tag is open on purpose. You type tags that are not on the list, because that is how a tag vocabulary grows, and a model that could only reuse existing tags could never add the first one. Text is open because a text field's domain is anything you could have typed into it. So the field type decides how much of your vocabulary you are actually protecting. A `Job#` held in a Text field is the clearest case: a job number is an external fact that no frame contains, the model can return any string, and a plausible-looking wrong string passes validation because there is nothing for it to fail against. Type or paste that one. For a controlled vocabulary you actually want enforced, reach for a Dropdown. ## How do I set up a category without giving AI control of every field? You do not have to do anything to keep AI out of a field. Every field arrives with its Autofill switch off, including one you accepted from AI Discover. - Open Settings → Notes & Data → Shot Metadata and add a field. Name it Content Type, set its type to Dropdown, and enter B-roll, Interview, GFX as its options. See [custom fields](https://storyfolder.com/help/notes/custom-fields) and [field types](https://storyfolder.com/help/notes/field-types). - Write a one-line description on the field if the name alone is ambiguous. Descriptions are sent to the model as per-field guidance. - Click the Autofill toggle on that row and nothing else. Its tooltip flips from *"AI Autofill leaves this field alone"* to *"AI Autofill may fill this field. Click to stop it."* - Run it from a shot's inspector. Until at least one field has the switch on, that action is not drawn at all. Two deliberate acts: adding a field, and allowing a model to write into it. Accepting a suggested field never performs the second. ## Why a valid answer can still be the wrong one A Dropdown stops a new option appearing in your data. It does nothing to stop the wrong existing option being written, and a wrong-but-valid answer looks identical to one you typed. Keep option sets small and mutually exclusive, name fields the way you would explain them to a new freelancer, use the field description, put the video's own framing in the run's **Additional context** box, and leave **Only fill empty fields** on so a run can never overwrite something a person wrote. ## When should I use a Tag instead of a Dropdown? Use a Dropdown when a shot has exactly one answer and you want that answer to stay inside a fixed list: anything you will filter or chart on. Use a Tag when a shot can carry several answers at once and the vocabulary is still growing. Just do not describe a Tag field as category-constrained: it is the field type that can create the first tag, and the second one you did not expect. ## FAQ **Does a field's description change what the model writes?** Yes. Each enabled field's title, type, options and description are sent to the model as guidance for that field. **Will a case-mismatched answer create a duplicate option?** No. An answer of `medium shot` is stored with your option's spelling, `Medium Shot`, so filters and pickers still match it. **What happens if one frame does not support an answer?** The prompt instructs the model to omit that field instead of guessing, which leaves the cell empty for you to fill. **Does accepting an AI Discover suggestion turn autofill on for that field?** No. A field added from a suggestion is created with its Autofill switch off, like every other field. **Can the same categories fill video-level metadata?** No. The run only offers shot-scoped fields, and the only write path is shot-level. **How many field types are there?** Six: Text, Number, Tag, Dropdown, Checkbox and Rating. Four of them constrain what a model may write; Tag and Text do not. --- # How to log footage without tagging every clip by hand URL: https://storyfolder.com/blog/how-to-log-footage-without-tagging-every-clip-by-hand Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 10 min One studio typed Client, Job# and Title 3,852 times each. How to log footage without tagging every clip by hand: paste the board-wide facts once, let AI Autofill fill the per-shot visual fields, and review the result. *Last updated: 2 September 2026.* In an analysis of 813 storyboards from 295 paying StoryFolder customers, current to 1 September 2026, the busiest account had typed `Client`, `Job#` and `Title` **3,852 times each**. That is **11,556 individual entries** across 67 boards. `Client` and `Job#` are not judgements at all. The client is the same client for the whole board, and the job number was decided before anyone pressed record. The way out is to split the schema by who can answer each field: paste the board-wide facts down once, switch AI Autofill on for the per-shot fields a frame can actually answer (`Content Type`, `B-ROLL`, shot size, a usability rating), leave **Only fill empty fields** on, and review the board when the run finishes. StoryFolder indexes the shots inside a video you import into it. It does not watch folders, catalogue a shelf of unplugged drives, batch a whole library in one run, or recover the keywords you typed into a project file three years ago. `Job#`, client approval and release status stay human-supplied, because a frame cannot know them. And AI Autofill sends frames to a server, on every plan: the free plan covers your first 100 shots, Pro is unlimited. The on-device story belongs to transcription, a different feature on a different path. **New in 0.4.** AI Autofill now ships as a per-field switch on your own shot metadata, on every plan (the free plan covers your first 100 shots); a run sends one frame per shot to StoryFolder's server and on to a hosted vision model. [What AI Autofill fills, and what it will not](https://storyfolder.com/blog/ai-autofill). ## Why does footage logging keep getting skipped? Logging costs you time now and pays somebody else back later, often a freelancer who joins in eighteen months. That asymmetry is why the field stays empty. The same customer analysis shows both ends of it. One account carries **589** `Animation` notes: one repeated per-shot classification, typed by hand, hundreds of times. Another account has **53 boards** of archive footage and **zero notes** on any of them: somebody wanted the visual index badly enough to build 53 boards and abandoned the metadata completely. A third encodes its whole taxonomy in board titles like `Client_Footage_SELECTS_BROLL`, because typing it per shot was too expensive to be worth doing. The tools exist; they make you pay per shot. On r/editors in May 2025, u/OliveBranchMLP wrote: > "NLEs are super far behind when it comes to logging and managing media in the project bin, and it makes selects far more annoying than they need to be, especially for unscripted or documentary work." Three moments send people looking. A backlog nobody has an honest plan to catalogue. A new hire who needs to find footage they did not shoot. And the reuse moment, where a client comes back for job four, half the b-roll already exists, and nobody can say where. ## Which fields should AI fill, and which should you paste? Ask a vision model only what one representative frame can support: `Content Type`, `B-ROLL`, shot size, camera move and a usability rating, held in Dropdown, Checkbox and Rating fields. Which fields it will attempt, and inside what domain, is [the exact field-by-field Autofill contract](https://storyfolder.com/blog/ai-autofill). Paste or type the rest — `Client`, `Job#`, `Release form` and the folder the original file sits in — because no frame contains a business fact. Fill it with AI Why it works Paste or type it Why AI should not `Content Type` (Dropdown: B-roll / Interview / GFX) Visible in the frame, closed option list `Job#` An external identifier; it is constant per board `Shot size`, `Camera move` (Dropdown) Craft vocabulary, visible `Client` Same — one value for the whole import `B-ROLL` (Checkbox) True or false about what is in shot `Release form` A legal fact, not a visual one `Talent present` (Checkbox) Visible `Find in Folder` A filesystem fact Usability `Rating` (1–5) A judgement about the image itself Anything with contractual consequence The cost of a plausible wrong answer is too high The reason that column split is safe is the domain constraint, and the constraint is per field type. A Dropdown answer must be one of *its* options; a Rating must be a whole number, 0 to 5; a Checkbox must be true or false; a Number must be a number, decimals and negatives allowed. Those four are genuinely closed, checked once on the server and again in the worker before anything is written. **Tag and Text are open.** A Tag field can gain a tag that was never on the list, deliberately, because a model that could only reuse existing tags could never add the first one. A Text field has no constraint at all, because a text field's domain is anything you could have typed into it. So a `Job#` stored as a Text field is precisely where a model writes something that looks right and is not, with nothing in the path to catch it. Paste it. The mirror-image mistake is worth naming too, because it is in our own cancellation data. One customer left with: > "All it does is capture screenshots and allow manual addition of notes. Thought that it filled in info/notes as well as screenshots. Disappointing." Autofill answers that person. The new way to make the same mistake is expecting it to fill everything. It fills the fields you switched on, inside each field's domain, and every field ships with the switch off. ## How do you set up automatic shot logging? Six steps, and the first three are the schema rather than the AI. - **Import the video.** The finished cut, the selects reel, or the b-roll reel, whichever one you would actually pull from again. A local .mov or .mp4 works great, and 77% of paying-customer boards come from local files. See [importing a local video file](https://storyfolder.com/help/importing/from-file). StoryFolder finds the shots. - **Create the fields.** Settings → Notes & Data → Shot Metadata. Add Content Type as a Dropdown with the options B-roll, Interview and GFX, and B-ROLL as a Checkbox. Six types are available: Text, Number, Tag, Dropdown, Checkbox and Rating. See [custom fields](https://storyfolder.com/help/notes/custom-fields) and [choosing a field type](https://storyfolder.com/help/notes/field-types). Custom fields are included on every plan. - **Switch Autofill on for those two rows only.** Each field row carries its own toggle, and it arrives off. On a fresh install every field is off, and every field that existed before the feature shipped was explicitly written to off. Its tooltip reads *"AI Autofill leaves this field alone. Click to let it fill this field."* until you click it. - **Open the run.** Select a shot, and use **Autofill with AI…** in the shot inspector, or right-click a shot and choose **AI Autofill…**. Until at least one field has the switch on, that action is not drawn at all. - **Set the scope and run it.** The modal lists only the fields you enabled, each showing model decides where a value would be. Set **Apply to** → **All N shots**, leave the write mode on **Only fill empty fields**, and use the optional **Additional context** box if the video needs framing; its placeholder reads *"e.g. This is a cooking show — focus on the dish being prepared."* A line above the button tells you the size of the run: *"This run analyzes N shots and asks for N values."* Per-field spinners appear on the board cards as answers land, and a **Stop autofill** button sits on any card with a run in flight. The run belongs to a background worker, so closing the window does not stop it. - **Review, then use it.** Filter the board on the field you just filled: pick the field, choose is, and pick one value. With Content Type is Interview on, you are looking at only the shots the model called Interview, so a b-roll frame among them is obvious, and correcting it is a click. Work the values one at a time. Then search, export a spreadsheet, or publish. **AI Discover fields** takes a typed description of what you care about, like *"cinematography and visual storytelling techniques"*, and proposes fields with names, types and options. It suggests the schema and writes no values. AI Vision Autofill writes values into fields that already exist. Accepting a discovered field does not switch autofill on for it; that stays a separate deliberate act. And the model sees one shot at a time. A 300-shot board is 300 model calls, which is why **Autofill on import** is off by default in Settings → AI Autofill: one drag-and-drop should not quietly become hundreds of calls with nobody at the desk. ## What happens when AI gets a tag wrong? It writes the wrong value and it looks like you typed it. `Content Type = Interview` on a b-roll shot is wrong, but `Interview` is one of the options you defined, so it passes the domain check on the server, passes it again in the worker, and lands in the cell. Autofill stamps a source of its own on every value it writes, but nothing in the app renders that stamp. An AI-written value is visually identical to a typed one in the panel, on the board and in every export. There is no staged accept step, and an autofill run creates no restore point, which is why the modal's own overwrite warning says *"There is no undo."* Two habits cover it. Leave **Only fill empty fields** on, which is the shipped default, so a run can never replace something a person wrote. And correct by hand, on the pass through the board you were going to do anyway. When an answer fails its domain check, it is dropped silently: no toast, no badge, no per-field note. From your chair the cell is simply still empty, and that is indistinguishable from the model having nothing to say about that shot. The same is true when a single shot's call fails. That shot is marked failed on the job, the run carries on, and the reason is stored but never shown. ## How does the log become useful later? The point of the fields is the question you ask two years later. Search covers your library and reads two layers in one pass: the values in Text, Number, Dropdown and Tag fields, plus the transcript. It is plain substring matching, so `harbour` finds the shots where you typed it. Rating and Checkbox fields are filter chips instead. See [searching your library](https://storyfolder.com/help/editing/search). From there the board goes out as a [spreadsheet](https://storyfolder.com/help/exporting/spreadsheet) with the fields you choose, as a storyboard PDF, or as a [password-protected link](https://storyfolder.com/help/sharing/publish) for someone who does not have the app. Because the fields live in the library rather than in a project file, a value you fill today still answers a question after the project is archived, and one filter reaches shots from forty different jobs. ## When do you need a different tool? When the question is about the file itself: which drive it is on, which volume, which folder. Kyno browses media in place on the drive and hands off to an NLE with metadata attached. Fast Video Cataloger and DiskCatalogMaker catalogue offline drives, so "which volume is this on" is theirs to answer. iconik and axle.ai are asset managers with storage, proxies and permissions behind them. Silverstack sits at ingest on set, before any of this. StoryFolder is the layer before you need one of those: it indexes the shots inside a video you imported, and it does not manage your storage. (Competitor behaviour verified against vendor material on 1 September 2026.) ## AI Autofill sends frames to the cloud It does. A representative frame per shot is encoded and posted to StoryFolder's server, which calls a third-party vision model, and the free plan covers your first 100 shots, with Pro unlimited. Transcription is the separate case: it runs on-device with Whisper, your footage is not uploaded to transcribe it, and it is not paywalled. The two features sit next to each other in the app and behave nothing alike. ## FAQ **Which field types can AI Autofill fill?** Shot-scoped Text, Tag, Dropdown, Checkbox, Rating and Number fields. Dropdown, Checkbox, Rating and Number have closed domains; Tag and Text do not. **Can it fill a client name or a job number?** A Text field will accept whatever it returns, but a frame cannot verify an external business fact, so paste those instead of autofilling them. **Will it overwrite notes I already typed?** No. **Only fill empty fields** is on by default and skips any cell that already has a value. **Can it autofill my whole library at once?** No. One run is scoped to one video, so a backlog is one video at a time. **Can I undo an autofill run?** No. An autofill run creates no restore point, and the modal says so before you run it in overwrite mode. **Does autofill work on video-level fields like `Client`?** No. Only shot-scoped fields are offered in the run, and the write path is shot-level. **Does it work on Windows and Mac?** Yes. StoryFolder is a desktop app for macOS and Windows. There is no Linux build. --- # Is AI video tagging any good? URL: https://storyfolder.com/blog/is-ai-video-tagging-any-good Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 9 min AI Autofill filled some cells and left others empty, and nothing tells you which are wrong. What automatic video tagging is good for, how it fails inside a valid answer, and how to test it on your own footage. *Last updated: 2 September 2026.* You ran AI Autofill over a board. Some cells came back filled, some came back empty, and nothing on the board tells you which of those is a judgement and which is silence. So which of the filled ones are wrong, and how would you tell? Automatic tagging does one narrow job: a first pass on fields a frame can visibly support. A Dropdown, Rating, Checkbox or Number answer has to fit that field's own domain: one of your options, a whole number from 0 to 5, true or false, a finite number. A Tag or Text field has no domain at all, so anything can come back. What it will not do is let you skip the review. A valid-looking answer can still be the wrong answer, and nothing in the interface marks the difference. Two things worth knowing before you run anything. StoryFolder does not stage a suggestion for you to accept or reject; a value it writes goes straight into the cell, the same way a value you typed would. And an autofill run creates no restore point, so there is no run-level undo. Those two facts, not an accuracy number, are what "is it good" actually depends on. One practical limit: AI Autofill is included on every plan, but the free plan covers your first 100 shots and Pro is unlimited; the [custom fields](https://storyfolder.com/help/notes/custom-fields) it writes into are included on every plan. A run sends one representative frame per shot to StoryFolder's server, which calls a third-party vision model. Transcription is the other case. That one runs on your own machine. **New in 0.4.** Everything tested here ships in StoryFolder 0.4: the per-field switches, the domain check, the silent drop and the missing undo. [The feature page](https://storyfolder.com/blog/ai-autofill) carries the current defaults and the review method. ## What does "good" mean for AI video tagging? "Good" is three questions, and they have three different answers. Does the model answer inside the categories you defined? Yes for a Dropdown, Rating, Checkbox or Number: that is checked twice before anything is written. Is the answer factually right for the shot? No benchmark exists for this feature on this build, and none is claimed here. How expensive is a mistake to find? That depends on the [field type](https://storyfolder.com/help/notes/field-types) you used. The first is **vocabulary validity**, and it is the one that is proven and mechanical. A Dropdown, Rating, Checkbox or Number field is checked against its own domain twice, and an answer outside that domain is refused. The second is **factual correctness**: is the answer the right one for this shot? That is a judgement call about the image, and there is no benchmark behind it. Nobody has measured a correctness rate for this feature on this build, and this page does not invent one. The third is **workflow recoverability**: if the model is wrong, how expensive is it to find and fix that shot? That depends entirely on which field type you used it on, which is the part of this page worth your time. Vocabulary validity is the part StoryFolder can promise. The other two are yours to judge, on your own footage, and the rest of this page is about how. ## What happens when the AI chooses the wrong valid category? It writes the value, and it looks exactly like something you typed. Say you have a `Content Type` Dropdown with the options `B-roll`, `Interview` and `GFX`, and a run reaches a wide static shot of an empty room, the kind of establishing frame that could read as B-roll or as the setup for an interview that hasn't started. The model answers `Interview`. That is one of your three options, so it passes the server's domain check, and it passes the worker's second check before it is written. Both confirm the answer belongs to your vocabulary. A domain check tests membership. It says nothing about whether the member is right for this shot. The value lands in the cell with no flag and no confidence score. StoryFolder does stamp which values came from autofill rather than a person, but nothing in the app displays that stamp: not on the board, not in the inspector, not in an export. So the only way to find the wrong `Interview` is the same way you would find a typo you made yourself: look at the shot. "Domain-constrained" is a promise about the vocabulary, and it is a weaker promise than "correct". There is no undo, so the recovery is a [filter](https://storyfolder.com/help/editing/search), which is also the shape of [reviewing an Autofill run at scale](https://storyfolder.com/blog/ai-autofill). On the board, hit **+ Filter**, pick `Content Type`, pick `is`, and pick `Interview`, and the board narrows to the shots that came back with that answer. Scroll that set against the thumbnails and a wide empty-room shot sitting among real interviews stands out; correcting it is a click. You do this one option at a time (a filter shows you the shots holding a value, and there is no view that groups every value on the board side by side), which is why a field with three options is a two-minute review and a field with thirty is not. Leave **Only fill empty fields** on for any later run, so re-running never re-guesses over a value you just fixed. ## What happens when the AI returns an invalid value? It gets dropped, and the cell stays empty, with no indication that anything was attempted. What happened What you see A valid, wrong answer Written. Looks identical to a typed value. An answer outside the field's domain Dropped silently. Cell stays empty. The frame did not clearly support an answer Cell stays empty. The model call failed for that shot Cell stays empty; the shot is marked failed internally, but that reason is not shown to you. Four different situations, and from your chair three of them look exactly the same: an empty cell. Nothing distinguishes them (no toast, no badge, no per-field note), so "the model declined because the frame didn't support an answer", "the model answered something outside your options and got rejected" and "the call failed for this one shot" all arrive as silence. That changes how you read a board after a run. An empty cell after autofill means exactly what an empty cell means before autofill: nobody has told you anything about that shot yet. It never means "the model checked and there was nothing there." ## AI Autofill has no undo That is literally true, and the write modal says so before you can run in overwrite mode. A metadata edit you make in the app captures a restore point you can step back from. An autofill run does not. If a run goes badly, say a Dropdown option turns out to be ambiguous, or a field description steered the model wrong, there is no button that puts the board back. The safety net is **Only fill empty fields**, on by default, which guarantees a run can never replace a value you already wrote, plus a small first run. Enable autofill for one or two fields, scope a run to a handful of shots or one video, and look at the result before you turn it loose on the next hundred boards. If the pattern of mistakes is one you can live with, say the model occasionally confuses static interview setups with B-roll, keep going. If it is not, turn the field's switch back off and log that one by hand. ## Which fields produce the most reviewable results? The field type decides how expensive a mistake is to find. Choose with that in mind, not only with "can a frame answer this". Closed fields are the reviewable ones. `Content Type`, shot size, camera move, a `B-ROLL` checkbox, whether talent is visible, a 1–5 usability rating: each of these has a small, fixed set of possible answers, so a mistake is one of a handful of known wrong values, and you can pull every shot holding one of them onto the screen with a single filter. The exact mechanism behind that constraint is a separate page's job; the reviewability consequence is this page's. `Client`, `Job#`, approval status, release-form status, and anything with a filesystem or contractual consequence are the expensive case. Nothing in the field stops a wrong answer from looking plausible. A Text field holding `Job#` has no domain at all, so a model can return a job number that is formatted correctly, sounds right, and belongs to nothing: no membership test to fail, and no filter that separates a real one from an invented one. Keep those typed or pasted. Tag fields sit in between. They are open by design (a tag vocabulary has to be able to grow), so reviewing a tagged board means reading the tags that appeared, not filtering for the ones you expected. ## What should a trustworthy test show? Run one before you trust this on real client work, and run it on your own footage rather than taking anyone's word for it, including this page's. Pick one video with a schema you actually plan to use, the same `Content Type` Dropdown and `B-ROLL` Checkbox you'd log with day to day. Run autofill on it with **Only fill empty fields** on, scoped to all shots. Then review it the way you would review it on a real job, which is by filter and not by scrolling. Take each closed field in turn, filter to each of its options, and look at that queue against the thumbnails. For the open Text and Tag fields, which have no queue to filter into, take a fixed sample across the beginning, middle and end plus the shots most likely to defeat a single frame, which are the dark ones, the graphics and the transitions. Count four things as you go: how many fields the model attempted, how many it wrote, how many it left blank, and how many of the written ones you had to correct. Keep that count with the date, the build you were on, and a short description of the footage; a number without those attached is not reusable evidence. That is a test you can run in the time it takes to review the board you were going to review anyway. It will not produce a percentage that generalizes to different footage, different schemas, or a different day's model behavior. It will tell you whether this is worth turning on for the kind of shots you actually shoot. ## Does one failed shot stop the run? No. A shot whose frame can't be read, or whose model call fails outright, is marked failed and the run moves on to the next one. Transient network and server errors retry on their own before a shot is given up on. Once a shot is marked failed, that's terminal for the run, but nothing else on the board is affected and the rest of the shots finish normally. The reason that shot failed is recorded internally and never shown to you, which is why its empty cell reads the same as every other empty cell. ## FAQ **What image does the model actually look at?** One representative frame per shot, plus the video's own title, description and video-level fields, and anything you typed into the run's optional context box. **Are the extra instructions I type saved for next time?** No. The additional-context box is typed fresh every time you open the run modal and is not stored anywhere. **Does StoryFolder retry a failed shot automatically?** Yes, for transient network or server errors. A shot the model genuinely couldn't answer is not retried. **Can I stop a run partway through?** Yes. Stop autofill is cooperative and takes effect within a shot or two rather than instantly. **Can I tell why a cell is empty after a run?** No. The reason is recorded internally but never shown in the app, so a declined answer, a rejected answer and a failed call all look the same. **How do I find the shots a run gave a particular value?** Filter the board on that field — **+ Filter**, the field, `is`, the value — and scroll the result against the thumbnails. **How do I protect values I've already corrected?** Leave **Only fill empty fields** on. It's the default, and it means a rerun can never replace a value that already has something in it, corrected or not. --- # Logging footage with custom fields like client, job number and location URL: https://storyfolder.com/blog/logging-footage-with-custom-fields-client-job-number-location Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 8 min The client is back for a fourth job and wants the exterior from the second. Logging footage with fields shaped like your business (Client, Job#, Location, Content Type), and which of them AI should never fill. *Last updated: 2 September 2026.* A client comes back for their fourth job and asks whether you still have the exterior from the second one. The footage exists. It is on a drive, inside a project bin, under a filename somebody chose at 11pm. What makes that question answerable next time is a shot-level database with fields shaped like your business rather than like a camera: `Client` and `Job#` typed once per import, `Location`, `Content Type`, `B-ROLL` and `Talent Name` sitting on the shots themselves, and a text field holding the folder the original lives in. Six field types cover it: Text, Number, Tag, Dropdown, Checkbox and Rating. The ones a vision model should fill for you are a small subset. That last part is the uncomfortable half of the answer. `Client`, `Job#` and release status are the fields this query asks about, and they are the fields AI is worst at, because no frame contains them. Paste those. And StoryFolder is not an asset manager: it indexes shots inside a video you import, it does not track storage, and it will never tell you which unplugged drive the original is on. **New in 0.4.** Video-level metadata fields now exist, so `Client` and `Job#` can live on the project instead of being typed on every shot. [How folders, collections, quick filters and video metadata fit together](https://storyfolder.com/blog/library-folders-collections-quick-filters). ## What fields do small studios actually use to log footage? Seven or eight, and they are shaped like the business: who the job was for, which job it was, where it was shot, what kind of material it is, whether you are cleared to reuse it, and where the original file sits. You can read that shape straight off the field names customers invented. One account built a text field called `Find in Folder`, because a file path is not searchable and a typed value is. Another filled `B-ROLL` **828** times. A third carries **589** `Animation` notes, one repeated per-shot classification. A fourth tracks release-form status per shot, which is a legal fact with a deadline attached. An agency account gave up on per-shot fields altogether and encodes its whole taxonomy in board titles like `Client_Footage_SELECTS_BROLL`. Not one of them invented a field called `objects` or `scene type`. (StoryFolder customer data: 813 storyboards from 295 paying customers, current to 1 September 2026.) StoryFolder's guide to cataloguing b-roll across multiple clients lays that schema out field by field, with the type and the scope for each one. This page is about the next decision: how each of those fields gets filled, and which software will fill them. Build your own [custom fields](https://storyfolder.com/help/notes/custom-fields) and pick a [field type](https://storyfolder.com/help/notes/field-types) for each. Custom fields are included on every plan. ## Which fields should be video-level and which should be shot-level? Put a field on the video when its answer is the same for the whole import, and on the shot when it varies down the board. `Client` and `Job#` are constants. The busiest account in that data typed `Client`, `Job#` and `Title` **3,852 times each**; typing them once per import instead is most of the saving. It is a settings decision, not a discipline problem: a category targets either the video or the shot, and the fields inside it follow. See [categories](https://storyfolder.com/help/notes/categories), and [video-level fields and how they filter whole projects](https://storyfolder.com/blog/library-folders-collections-quick-filters). `Location` is the one people get wrong. It feels like a video-level fact and it often is, until the day you have a road trip on one board and three towns in one import. If your work is single-location per job, put it on the video. If it is not, put it on the shot and accept that it costs more to fill. One consequence worth knowing before you design the schema: AI Autofill only offers shot-scoped fields and only writes at shot level. A video-level `Client` will never be autofilled, which in this case is the behaviour you want anyway. ## Should AI fill client, job number, or location? `Client` and `Job#`, no: type those once on the video, because no frame contains an external business fact. `Location`, sometimes: a recognisable landmark may support it and an office interior will not, so check what comes back. `Content Type`, `B-ROLL`, shot size and a usability rating are the ones worth handing over. A vision model looks at one representative frame per shot. It can tell you what is in the picture, read text that appears on screen, and classify the shot into a category you defined. It cannot know which of your clients commissioned the job, what you numbered the invoice, or whether the person on camera signed anything. Field How it gets filled Why `Client`, `Job#` Type once on the video Constant per import, and external to the footage `Release form` Type it yourself A legal fact with consequences if it is wrong `Find in Folder` Type or paste A filesystem fact, invisible in the frame `Location` Type, or autofill and verify A recognisable landmark may support it; an office interior will not `Content Type`, `B-ROLL`, shot size, camera move Autofill Visible in the frame, and answerable from a fixed list Usability `Rating` Autofill, then adjust A judgement about the image itself The mechanism behind that split is the field type, and it does not apply evenly. A Dropdown answer must be one of *its* options, a Rating must be a whole number from 0 to 5, a Checkbox must be true or false, and a Number must be a number. All four are checked against the field's own domain before the value is written. **Tag and Text fields are open.** A Text field has no constraint at all, because a text field's domain is anything you could have typed into it. Which is exactly why `Job#` is the dangerous one. Hold it in a Text field, switch autofill on for it, and a model can return a job number that looks like yours, is formatted like yours, and belongs to nothing. Nothing in the path catches it, and once written it looks identical to a value you typed. Every field ships with its autofill switch off, so the only way that happens is if you turn it on. Worth knowing before you do: AI Autofill is included on every plan, with the free plan covering your first 100 shots and Pro unlimited, and it works by sending one frame per shot to StoryFolder's server, which calls a third-party vision model. ## What should custom-field footage logging software let you do? Six things, and the shopping is mostly about which of them a tool skips. - **Define your own fields**, in more than one type, so a category is a list rather than free text. - **Decide what each field attaches to**: the whole video, or each shot inside it. - **Fill a value across many shots in one gesture**, because per-shot typing is what kills every logging scheme. - **Fill the visual fields without typing at all**, on the fields you allow and no others. - **Search and filter on those values later**, together with the spoken words. - **Get the values back out** as a spreadsheet, or as a link for someone who does not have the software. StoryFolder's search reads two layers in one pass: the values in your Text, Number, Dropdown and Tag fields, plus the transcript, across the library. It is plain substring matching, so typing a location finds the shots where you typed it. Rating and Checkbox fields are filter chips instead. See [searching your library](https://storyfolder.com/help/editing/search). The distinction to hold on to while shopping is what the software counts as a thing. A file cataloguer counts files, and answers "which drive is this on". StoryFolder counts shots inside a video you imported, and answers "which moment, in which job, and is it cleared". Those are different questions and you may well need both. ## How does StoryFolder compare with Kyno, Silverstack and a spreadsheet? The unit it manages Where it is strongest Where it stops **A spreadsheet and folders** Whatever you type Free, universal, already open on your machine Nobody fills it after job two, and it has no pictures **Kyno** Files on the drive, in place Browsing media where it already lives, and handing off to an NLE with metadata attached It organises files; it does not index moments inside one **Silverstack** Cards at ingest Set-time capture, checksums, deep camera metadata A different moment in the pipeline. It is not competing for this job **Fast Video Cataloger** Files, including offline drives Cataloguing a shelf of unplugged externals Windows only **StoryFolder** Shots inside a video you import Your own field schema on each shot, with thumbnails, search and export No drive tracking, no ingest; the selects timeline it writes carries shots, not your fields Competitor capabilities above were verified against vendor material on 1 September 2026. Treat the spreadsheet as the real competitor. Most people reading this already have one, and it fails on the same thing every time: filling it costs something on every shot, and nobody pays that twice. ## How do you hand this schema to another editor? Three routes, and none of them puts your fields back into an NLE. Export a [spreadsheet](https://storyfolder.com/help/exporting/spreadsheet) with the fields you choose, which is what a producer actually wants. Publish a [password-protected link](https://storyfolder.com/help/sharing/publish) for someone without the app, remembering the published page is view-only: no commenting, no picking, and no video player when the source is a local file. Or hand over the library itself, if they are working in StoryFolder too, because the fields belong to the library rather than to any one project. You can send your picks back as a selects sequence: the Editorial output writes `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml`, the shots you kept cut in board order against the video you imported, with a rendered `Selects.mp4` reel available alongside it. What does not travel with it is **the schema**. The timeline carries shot boundaries and clip names — `Shot 1`, `Shot 2` — and nothing else; your `Client`, `Job#` and `Location` values stay in the spreadsheet, the PDF and the published board. There is no AAF, no timeline import, and no route that turns a field into a bin column or a marker inside the NLE. So the shape of the selection arrives in the edit and the metadata does not. If the schema itself has to arrive inside the NLE, Kyno is still the honest answer. ## FAQ **Are `Key Takeaways` and `Story` fields that customers created?** No. They are among the twelve seeded `My Notes` text fields a new library ships with, and they are built for film analysis rather than client work. **Does a Text field enforce a job-number format?** No. Text is pass-through with no closed domain, which is why a `Job#` should be typed or pasted rather than autofilled. **Can I put one value on many shots at once?** Yes. Copy and paste shot metadata across a selection, with a write mode that skips cells that already have a value. **Can I search my metadata and my transcript in the same box?** Yes. Library search covers Text, Number, Dropdown and Tag field values plus the transcript, using plain substring matching. **Can a spreadsheet export contain only some of my custom fields?** Yes. The spreadsheet export honours a field selection. Spreadsheet export is a Pro feature. **Can a published board play the source video?** Not when the source is a local file. The published page is view-only and carries no player for local-file sources. **Will AI fill a video-level field?** No. Autofill offers shot-scoped fields only, and its only write path is at shot level. --- # How to transcribe footage locally without uploading it to the cloud URL: https://storyfolder.com/blog/transcribe-footage-locally-without-uploading Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 7 min 200GB of unreleased ProRes on your machine. How StoryFolder transcribes and separates speakers locally with Whisper, what has to be downloaded first, and which nearby features still use the cloud. *Last updated: 2 September 2026.* The interview is on your machine, it is 200GB of ProRes, and the release has not happened yet. Uploading it to a transcription service is not a neutral step, and waiting overnight for the upload is not neutral either. StoryFolder transcribes on the machine the footage is already on: it runs Whisper locally, and it separates speakers locally too. The audio is not uploaded to be transcribed. That is a workflow fact, not a security guarantee, and the difference matters if somebody is going to ask you about it. StoryFolder is not certified against any standard, it makes no compliance claim, and two things nearby do talk to the internet: licence activation, and **AI Autofill**, which sends frames to StoryFolder's central server for a vision model to look at. The local claim covers transcription and speaker detection. **New in 0.4.** Local transcription, speaker identification and the transcript and subtitle exports are all new, and all free. [Everything else in the release](https://storyfolder.com/blog/storyfolder-0-4). ## Where does the audio actually go when you transcribe? Nowhere. StoryFolder runs Whisper as a process on your own computer, on audio it pulled from the file already sitting on your drive, and speaker detection runs the same way, with no Python, no PyTorch and no GPU requirement. Nothing about the audio is sent anywhere to be transcribed, and no third-party transcription account is involved in the job. That has a practical consequence people notice before they notice the privacy one. There is no upload wait. A two-hour interview starts transcribing at the speed your machine can chew through it rather than at the speed of your office's upload. It also means the job does not fail because a hotel wifi dropped at 60%. The engine is whisper.cpp. The transcript you get is Whisper's, with Whisper's strengths and its documented weaknesses, and none of that changes because it ran locally. ## What has to be downloaded before offline transcription works? One thing has to happen online first: StoryFolder fetches the engine binaries and a language model. After that, transcription needs nothing from the network. There are eight models, in English-only and multilingual pairs: `tiny.en`, `tiny`, `base.en`, `base`, `small.en`, `small`, `medium.en` and `medium`. The app shows them as 77 MB for a Tiny model, 147 MB for Base, 487 MB for Small and 1.5 GB for Medium, and the English-only and multilingual builds of a size are the same download. The default is `small`, the multilingual one, chosen as the point where multilingual becomes usable across languages rather than only in English. If everything you cut is in English, the `.en` twin of the same size is the better pick; if you are working across languages, stay multilingual. Each model has its own controls. Download shows a live percentage and can be cancelled. **Verify** re-hashes the file on disk on demand. **Offload** deletes it, and there is an offload-all if you want the disk back. A model only counts as installed once the whole file has arrived intact, so an interrupted download resumes rather than leaving you with a broken model you find out about mid-job. Two more assets come down the same way. Voice-activity detection lets Whisper skip the stretches with no speech in them, which is most of what makes a music-only file behave. The diarization pair is a segmentation model plus a speaker-embedding model, chosen so the speaker side is multilingual to match a multilingual transcriber. Signed and notarised engine builds are published for macOS on Apple silicon, macOS on Intel, and Windows x64. There is no Linux build. ## How do you transcribe a client video locally? It starts on its own. Automatic transcription is on out of the box, and a video is queued for transcription as a separate job once its import reaches Complete, so a normal drop needs nothing from you. The switch is in Settings → Transcription, and the steps below are what you do when you want to run one deliberately: a re-transcribe, a language override, or a file you turned the automatic pass off for. - [Import](https://storyfolder.com/help/importing/from-file) the local .mov or .mp4. It stays where it is. - Open the video's **Transcript**. - Install a model if you have not already. small is the default and a good first choice. - Hit **Transcribe**. - Set the run's options if this file needs them. The confirmation offers language and task, and under Advanced, the model, speaker detection and voice-activity detection. Those apply to this run only and leave your global preference alone. - Watch the status. It names the phase you are in rather than showing one spinner for the whole job, so you can see whether it is fetching a model, pulling the audio out, transcribing or detecting speakers. A run that has stalled reports differently from one that has failed, because the two need different responses from you. - Read it and fix what matters. Each line can be copied, edited, reverted to what the model originally wrote, or, where its timings can still be trusted, re-aligned so they are re-measured from the audio. A file with music and no speech comes back as `no-speech`, with the heading "No speech found in this video". That is a result about the audio, not a failure of the run. ## Which languages and output formats are available? The catalogue holds exactly 100 languages plus auto-detect, and there is a translate-to-English task alongside plain transcription. Translation needs a multilingual model; the `.en` models refuse it, which is the correct behaviour and an annoying surprise if you did not know. You read it in whichever of the transcript's [reading modes](https://storyfolder.com/help/editing/views) suits the pass you are on, and it exports as SRT, WebVTT, plain text, CSV or Fountain, none of which are behind a plan. The CSV is the one worth knowing about: it carries start, end, **shot number**, speaker and text, so the file already knows which picture each line belongs to. Fountain emits character cues. SRT and VTT carry speaker labels once there is more than one speaker, and a single-speaker transcript prints no names anywhere. ## What does running it locally not promise? Accuracy. Whisper degrades on heavy accents, on people talking over each other, on noisy location sound, and on the specialist vocabulary of whatever industry your client is in. Product names and surnames are where you will notice it first. StoryFolder's answer to that is a dotted underline under words the model was unsure about, and no number anywhere. Whisper's own confidence is not calibrated well enough to print as a percentage, so printing one would be a false precision that makes people trust the wrong lines. The underlining is a Display toggle and it is **off until you turn it on**, which is worth knowing because otherwise you will not see it and will assume there is nothing to check. Two smaller ones. Cancelling during the `diarizing` phase is not instant, because the diarizer cannot be killed part-way and has to finish the pass. And a transcript is not a compliance artefact: running the model locally is a fact about where the bytes went, and if your client needs an attestation, that is a conversation with a lawyer rather than a feature. ## Which nearby features still use the cloud? Two features, and one thing the app does in the background. All three are worth naming in the same breath as the local claim, so nobody reads "local" as an app-wide promise. **AI Autofill** posts shot frames to StoryFolder's central server, which calls a third-party vision model. It is the picture half of the index and it is the opposite of the transcription story in every respect that matters here, including that the free plan covers only your first 100 shots of it, with Pro unlimited. **Licence activation** talks to StoryFolder's server too, and the live plan comes back from there. Transcription and speaker detection run on your machine, Autofill is the step that sends anything out, and every field's Autofill switch ships off. The app also reports usage back to StoryFolder's server the way desktop software generally does — counts and identifiers, never a title, a filename or a path. ## FAQ **Which engine does the transcription?** whisper.cpp, run as a process on your own machine. The audio is not uploaded to be transcribed. **Does speaker detection run locally too?** Yes. Speaker detection runs natively on your own machine, with no Python, no PyTorch and no GPU requirement. **How many models can I choose from?** Eight, in English-only and multilingual pairs, from 77 MB Tiny variants to 1.5 GB Medium variants. The default is `small`, multilingual. **Do I need an internet connection?** Once, to fetch the engine and a model, and by default that happens at startup rather than the first time you transcribe. After that transcription runs with the network off. **How many languages does it cover?** Exactly 100, plus auto-detect. Translate-to-English needs a multilingual model, since `.en` models refuse the translate task. **Does AI Autofill run locally as well?** No. Autofill sends frames to StoryFolder's central server. On-device is a transcription and diarization fact only. **Is transcription behind a paywall?** No. Transcription and its SRT, WebVTT, TXT, CSV and Fountain exports are free. **Is there a Linux build?** No. Engines are published for macOS on Apple silicon, macOS on Intel, and Windows x64. --- # How to search a transcript for a word that was misheard or misspelled URL: https://storyfolder.com/blog/transcript-search-misheard-words Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 5 min You type tick tock; the transcript says TikTok; an exact search finds nothing. How StoryFolder's transcript search handles misheard and misspelled words, where the fuzziness stops, and what to do with an approximate hit. *Last updated: 2 September 2026.* Somebody in the interview says TikTok. You go looking for that line later and type `tick tock`, because that's the spelling you'd guess if you weren't sure. An exact search dies right there. The transcript reads **TikTok**, one word, capital T, capital T again, and `tick tock` is not a substring of it. StoryFolder's transcript editor doesn't die there. It searches around the mismatch: type it however you remember hearing it, and the line still comes up, marked **approximate** so you know it wasn't a literal hit. The spelling you are searching against came from [the local engine that produced the transcript](https://storyfolder.com/blog/transcription), not from you. The failure this page is named for runs the other way. Whisper splits one word into two transcript tokens, so `rest` and `ock` sit on their own lines and a search for `restock` finds nothing without a matcher built to rejoin them. That join logic hasn't changed. What's changed is which real transcripts still produce the split: current normalization rarely leaves a word broken that cleanly anymore, so `tick tock` → `TikTok` is the fixture that reproduces today. **New in 0.4.** The transcript this page searches is produced on your own machine, by an engine and model StoryFolder downloads once. [How local transcription works](https://storyfolder.com/blog/transcription). ## Why does exact transcript search fail on a word you heard correctly? Because the recognizer's spelling of a word doesn't have to match yours, and substring matching treats every character as load-bearing. Whisper can spell a brand name in a way you wouldn't guess, drop a letter, transpose two, or write two words where you'd write one. A search box that only checks "does this exact string appear" returns nothing on all four, even though the word is sitting right there in the transcript. Every exact-match search box does this to every misheard word. The difference is what happens next. ## How does the matcher decide a near-match is close enough to trust? It scores candidates, and it doesn't trust every near-match equally. An exact match scores highest. A partial match ranks next: you've typed the start of a word and haven't finished it, which is literally what you asked for, only incomplete. Below that sits a fuzzy match, a word within a small edit distance of your query. Lowest of the four is a joined or split match, where your query's two words correspond to the transcript's one, or the reverse. So a phrase that matches exactly always outranks anything approximate. The fuzzy budget is tied to word length, on purpose. The shortest words get no slack at all, because at four letters one changed letter reaches a different real word rather than a mishearing. That's why `cute` never matches `cube`. Longer words get progressively more room, which is what lets `komfort` find `comfort` and `hoodee` find `hoodie`: one substituted letter each, comfortably inside the budget a word that length carries. Short words are exactly where a "close enough" search would generate the most false positives, so the shortest words get the least. The distance check also counts a pair of swapped adjacent letters as one edit rather than two, so `Pacfiic` still reaches `Pacific`. Before any of that, the matcher lowercases everything and strips punctuation from the edges of a word while leaving internal apostrophes and hyphens alone, so `restock.` compares cleanly against `restock` and `t-shirt` stays one word. ## Can a phrase cross a line or a pause in the transcript? Yes. The matcher flattens the whole transcript into one stream of time-stamped words first, then searches that. So a phrase like "restock this brand" can span a cut in the transcript, or even a change of speaker, and still light up as one hit across both segments. One thing it never touches: speaker names. If you're looking for something a specific person said, that's a visibility filter you set before you search, not something the query itself can match. ## Why not just use a phonetic dictionary for English homophones? Because it would only work for English. A table of how English words sound is a real technique and would catch some of these cases, but it does nothing for a transcript in Japanese or Russian, and this matcher has to work in any script. Edit distance and token joining don't care what alphabet they're looking at. A phonetic table would have made English-language transcripts the first-class case and everything else an afterthought. Normalization has been checked against Cyrillic (`«здравствуйте»`) and Japanese (`こんにちは。`) transcripts, and both match the same way an English one does. ## What do you actually do when you get an approximate hit? Read it before you trust it. An approximate match carries a visible pill and a tooltip saying exactly what the transcript has. For `tick tock`, that's *The transcript says "TikTok."* The word itself gets a dashed outline in the transcript line, so you're not hunting for what changed. Search also opens on the **best** hit, not the first one in time. With fuzzy matching the earliest match in the file is routinely the weakest one, and landing there would make a search that actually worked look like it failed. You can still step forward and backward through every hit once you're there. ## Where does this fuzziness stop working? At the edge of the transcript editor. This matcher lives in one box: the transcript editor's own search. The Library and board search boxes, which is what you use to search shot metadata alongside the transcript across a whole project or your whole library, run plain case-insensitive substring matching, with no fuzzy budget and no split or join. Type `tiktok` there against a transcript that reads `tick tock`, and it finds nothing. That's a different search doing a different job. CL07-P1 covers what each box searches and why there are two. ## FAQ **Can `tick tock` find `TikTok`?** Yes. Typed as two words, it matches the transcript's single word `TikTok` through the matcher's split/join comparison, flagged approximate. **Can `restock` still find `rest ock`?** Yes, the join logic that handles it hasn't been removed. What's changed is that current transcripts rarely produce a split that clean anymore, so it's not the demo to build a workflow habit around. **Will `cute` match `cube`?** No. The shortest words get no fuzzy tolerance at all, because at four letters one changed letter reaches a different real word. **How much tolerance does a longer word get?** More, in proportion to its length. `komfort` finds `comfort` and `Pacfiic` finds `Pacific`, each one edit away from the word you meant. **Does transcript search search speaker names?** No. It searches spoken words only; which speakers you see is a separate filter you set before searching. **Is the Library search box fuzzy too?** No. Library and board search use plain case-insensitive substring matching. The fuzzy matcher lives only in the transcript editor's search box. **Does StoryFolder use a phonetic dictionary for English?** No, deliberately. A phonetic table would only help English transcripts, and this matcher has to work in any script. --- # Descript alternative for b-roll you already shot URL: https://storyfolder.com/blog/descript-alternative-for-b-roll Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 5 min Descript edits video by editing the transcript, and it is good at it. Finding the silent shot you already filmed is a different job. Which tool for which job, checked against Descript's own pages on 2 September 2026. *Last updated: 2 September 2026.* The shot of your subject's hands shaking before the take starts has no dialogue in it. Nobody said anything, so no transcript line is attached to it, and there is no word you could delete that would bring it back. Editing an interview by deleting words in the transcript is a good way to cut a piece, and it's what Descript is built for. Finding that silent shot again next month is a different job, and it's the job this page is about. StoryFolder does not do what Descript does. It doesn't edit video by editing text. Nothing in it removes or rearranges media because you changed a transcript word: there is no path from a transcript edit to a cut. Keep that distinction separate from the question of edit-list output, because the two are easy to run together. StoryFolder *does* write an edit list — the Editorial output produces `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` from the shots you kept — but you assemble that selection on a board of shots, not by deleting words. That's not a smaller version of Descript's feature; it's a different product entirely. If text-based editing is the workflow you actually want, this page isn't going to talk you out of Descript. It's here to tell you what to reach for alongside it. **New in 0.4.** Two of the things this comparison turns on now ship: transcription that runs on your own machine, and AI Autofill for the visual half, which sends frames to a hosted vision model and is included on every plan, with the free plan covering your first 100 shots. [Local transcription](https://storyfolder.com/blog/transcription) · [AI Autofill](https://storyfolder.com/blog/ai-autofill). ## Does StoryFolder replace Descript's editor? No. Descript's core product is editing audio and video *by* editing the transcript text. StoryFolder indexes the shots you've imported; it doesn't turn a transcript change into a media change. Delete a word in StoryFolder's transcript and you've edited the transcript, full stop. Descript's own site (checked 2 September 2026) puts it the same way: *"Edit your words to edit your video."* Around that core sit Underlord, its AI editor; Studio Sound; filler-word and retake removal; captions; clip creation; and a generate-media tool that makes video and images from a prompt. ## Which job does Descript solve better? Transcript-first editing: cutting a piece by editing what was said. If your footage is mostly one or two people talking and the edit is largely about pacing and word choice, working from the text is quick, and that's the job Descript was built around. Job Descript StoryFolder Edit a cut by deleting/reordering transcript words Yes — this is the product No — transcript edits don't touch media Retrieve owned footage by what's in the shot Not claimed. Descript's Media panel offers folder browsing, keyword search and a media-type filter over your uploads; no first-party page describes indexing your own clips by what is in the picture (help center, 2 September 2026) Yes — searches shot metadata and transcript together Retrieve owned footage with no dialogue Not claimed (same source as above) Yes — via metadata fields, since a silent clip has nothing for a transcript to catch Generated or stock b-roll insertion Yes — generates cutaway footage from a written description (Descript blog, 29 July 2026); that is generated footage, not your uploads No — not a feature Export an edit list back to an NLE Yes — Timeline export to Premiere Pro (XML), Final Cut Pro (FCPXML), DaVinci Resolve (XML), Pro Tools and Logic (AAF), Reaper (EDL), Audition (SESX); Creator plan and above (help center, 2 September 2026) Yes, narrower — Editorial writes `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` of the shots you kept, against the one video you imported. No AAF, no audio-application formats, and nothing read back in Local, on-device processing No — you upload or record into the app and it processes in the cloud (descript.com, 2 September 2026) Transcription and diarization run locally; AI Autofill is a cloud call ## What does "b-roll" mean in this comparison? Two different things get called b-roll, and they need different tools. One is **generated or stock cutaway footage**, something an AI model produces or a library supplies to cover a cut. The other is **the b-roll you already shot**: the plant footage, the hands, the establishing wide sitting in a folder on your drive, waiting to be found again. This page is about the second kind. Someone on r/editors, describing what a real NLE bin gives you for that job: *"Avid is essentially a spreadsheet for footage."* (u/d1squiet, r/editors, 2025.) That's close to what StoryFolder is trying to be, built for the job from the ground up. StoryFolder's search runs one query against the metadata typed on each shot and the transcript overlapping it, across your whole library, so a clip logged as `Location: loading dock` comes back on that field with an empty transcript. Those fields can be typed, or taken a first pass at by [filling shot fields from the picture](https://storyfolder.com/blog/ai-autofill). Descript's b-roll tooling, as its own blog describes it, *"creates cutaway footage from a description, so you are not searching a stock library for something close enough."* That is footage a model makes, laid over a cut. Its Media panel lets you browse folders, search by keyword and filter by media type across what you uploaded; nothing on Descript's site describes indexing your own clips by what is in the picture. If that changes, this comparison changes with it. ## Which workflow should you choose? - **Choose Descript** when the work is transcript-first editing: cutting audio or video by editing what was said. - **Choose StoryFolder** when the work is retrieval: finding a shot again by what's in it or what was said in it, across footage that isn't all dialogue. - **Keep your NLE** when the goal is the finished cut. Neither tool replaces conform work. StoryFolder hands the edit a selects timeline cut against the file you imported — not the camera originals behind it, and never an AAF — so the conform still belongs to the NLE. - **Look at a real MAM or drive catalogue** (NeoFinder, DiskCatalogMaker) when the actual problem is "which drive is this on". StoryFolder indexes the footage you've imported into it; tracking drives and offline media is a different tool's job. None of these are mutually exclusive, and most people on a real job end up in more than one. ## Can the two tools sit in the same workflow? StoryFolder ships no integration with Descript. The handoff, if you use both, is manual: find and confirm the shot in StoryFolder, then bring the file into whichever tool does the actual cut. StoryFolder's spreadsheet and CSV exports carry shot numbers and metadata a person can reference by hand, and its Editorial output does produce a machine-readable edit list another application can pick up — `Selects.edl`, `Selects.xml` or `Selects.fcpxml`, cut against the video you imported. Descript is not the application to hand it to, though: that file is for an NLE, and the two products still share no integration. ## FAQ **Can StoryFolder edit video by editing a transcript?** No. Changing transcript text in StoryFolder doesn't remove or rearrange any media. **Does StoryFolder export an EDL or FCPXML?** Yes, both, plus Final Cut Pro 7 XML. The Editorial output writes `Selects.edl`, `Selects.xml` and `Selects.fcpxml` from the shots you kept, in board order, and a separate Selects reel output renders them as one H.264 file. There is no AAF, nothing reads back in, and every event references the single video you imported. The difference from Descript is not whether an edit list comes out — it is how you build the selection: on a board of shots here, by editing a transcript there. Descript exports timelines to Premiere Pro, Final Cut Pro, Resolve and Pro Tools on its Creator plan and above. **What kind of b-roll does this page cover?** Footage you already shot and imported, not stock or AI-generated cutaway footage. **Can StoryFolder search silent b-roll?** Yes, through whatever metadata is on the shot. A transcript alone has nothing to say about a clip with no dialogue. **Is StoryFolder a MAM?** No. It doesn't manage storage, track drives, or catalogue offline media. **Does StoryFolder integrate with Descript?** StoryFolder ships no Descript integration. Any workflow that uses both is a manual handoff. --- # How to search footage by what's in it and what's said URL: https://storyfolder.com/blog/search-footage-by-whats-in-it-and-whats-said Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 9 min The hard-hat adjustment happens two seconds before the safety line. A transcript finds the line and not the shot. How one search box covers both what's in the picture and what was said, and where it stops. *Last updated: 2 September 2026.* You know the shot exists. The guy adjusts his hard hat, and about two seconds later he says the thing about safety. You have already watched this footage twice. A transcript will find the safety line, because he said it out loud. It will not find the hard hat, because nobody narrated it. Finding both takes one index built from two inputs: what somebody recorded about the picture, and what the transcript captured of the words. In StoryFolder that is one search box. A single query runs across the metadata typed against each shot and the transcript lines that overlap that shot. StoryFolder indexes footage you have imported into it. It does not edit video by editing text, which is Descript's and Reduct's whole product and they are good at it. It knows nothing about which drive a file came off, and it will not tell you what is on the shelf. What it does is make the shots you have imported findable by picture or by dialogue in one pass. **New in 0.4.** Transcription now runs on your own machine and starts itself after an import, and the library gained collections, quick filters and video-level fields. [How local transcription works](https://storyfolder.com/blog/transcription) · [what one search covers](https://storyfolder.com/blog/library-folders-collections-quick-filters). ## Why does transcript-only search miss most of a real footage library? Because most clips in a working library have nobody talking in them. The open-source [arkiv project](https://github.com/vulture-s/arkiv) indexed a real production library of 1,506 clips. 1,161 of those clips are dialogue-free b-roll. A transcript-only tool has spoken text for the other 345 clips, which is 23% of that library. That is one library, not a law of physics. A courtroom doc and a travel spot sit at opposite ends of the ratio. But 1,506 clips is a real corpus somebody counted, and it puts a number on something editors already argue about. From a thread on r/editors: *"we found a LOT in our selects that the transcribe did not and could not"*. From the same research: *"Transcriptions don't let you know where a voice cracked with emotion."* Both of those are the same complaint from different directions. The first is about coverage: the drone pass, the reaction, the hands on the bench, the establishing wide, the entire second half of a testimonial job that consists of the client's product doing things quietly. The second is about resolution: even inside the footage that talks, the transcript records the words and drops the delivery. Nobody ever typed "voice cracks" into an interview. The two-tool tax follows from that. Transcript in one app, shot notes in a spreadsheet, footage in folders named after the job, selects in the NLE. Four places, and the transcript is not connected to the picture in any of them, so the join happens in your head at 11pm. ## What does one search box actually search? One query, evaluated against three things per shot in a single pass: the video's title and description, the fields you type into on a shot or on the video, and the transcript segments that overlap the shot's time range. Text, Dropdown, Tag and Number fields are all searched as text alongside the transcript. Rating and Checkbox are not — those two narrow results as filter chips instead. The result tells you why it matched. StoryFolder attributes each hit to a filter, a metadata field, or the transcript, and ranks them in that order: your own filters first, then metadata fields, then transcript. So a search for `forklift` can return a shot captioned **Content Type** above a shot captioned **Transcript**, and you can see at a glance which one is the thing somebody typed and which is the thing somebody said. The board's box asks the same question of one project and gives the same answers, and [what each search destination covers](https://storyfolder.com/blog/library-folders-collections-quick-filters) is the rest of that story. The words half comes from [transcription that runs on your machine](https://storyfolder.com/blog/transcription). This box does case-insensitive substring matching. Type two words and both have to match, in any order, within the same value. It is not fuzzy. If you type `restock` and the transcript says `rest ock`, this box finds nothing. The fuzzy matcher exists, and it lives in a different box, in the transcript editor. Two searches, two jobs, and knowing which is which saves you from concluding that a search failed when it did what it was asked. One more practical note: a query stacks with your filters rather than replacing them. Video-level filters narrow the browse list first, so a video a filter has already ruled out contributes no shots to the results, and what you get back is the intersection of what you typed and what you left switched on. ## How are the spoken words joined back to the picture? By time. Each transcript segment is attached to the shot whose time range it falls inside, so the transcript stops being a separate document and becomes an attribute of the picture. You see that most clearly in the **By shot** reading mode, one of five [reading modes](https://storyfolder.com/help/editing/views) in the transcript editor along with By speaker, Continuous, Captions and Plain text. By shot puts the thumbnails down the page with the spoken lines grouped underneath the shot they were said in. It is the same join the search box uses, drawn out where you can read it. The join survives the export. StoryFolder's transcript CSV carries a **shot number** column beside the start, end, speaker and text, so the file you hand to a translator or a producer already knows which picture each line belongs to. The storyboard PDF prints the per-shot transcript under each card in full, with no truncation. ## How does silent b-roll become searchable? Somebody has to put words on the picture, and there are two ways to do it. The first is typing them, which is less grim than it sounds because you are typing into fields you chose. StoryFolder ships a default set of shot fields out of the box, including `Key Takeaways`, `Action`, `Visuals / Cinematography`, `Sound & Music`, `Emotional tone` and a `Tags` field. On any plan you can [create your own](https://storyfolder.com/help/notes/custom-fields). The fields that make footage findable a year later tend to be blunt and short. Real ones from a working library: `Location`, `Content Type`, `Talent Name`, `B-ROLL`, and one field a customer named `Find in Folder` for the sole purpose of writing down where the thing physically lives. The second is **AI Autofill**, which looks at the frame and writes values into the fields you switched on. Two things decide whether you reach for it: - It is a cloud call, and it is on every plan: the free plan covers your first 100 shots, Pro is unlimited. Frames are sent to StoryFolder's central server, which calls a vision model. Transcription runs on your own machine, and the two live next to each other in the app. - Every field ships with its Autofill switch off. It fills the ones you turn on, and only where the field is empty, so it never overwrites something you typed. Either way, the payoff is the same: a clip with an empty transcript still has words attached to it, and it comes back in the search on a metadata reason with no transcript reason at all. When transcription reports **"No speech found in this video"** on a music-only clip, that is a correct result about the audio, and it says nothing about whether the clip is findable. ## What happens when the transcript heard the wrong word? The transcript editor's own search box absorbs it. A wrong vowel, a dropped letter or two swapped letters still land on the word. It also joins and splits tokens across the gap Whisper left: search `tick tock` and it finds the line that reads **TikTok**, flagged as approximate so you know it was not a literal match. Phrases match across line boundaries, because a phrase does not stop being a phrase when the speaker pauses. It works in any script, Cyrillic and Japanese included. And it takes you to the best hit rather than the earliest one, which matters because with fuzzy matching the earliest hit is routinely the weakest. There is a floor, on purpose. Very short words get no allowance, so `cute` never matches `cube`. At that length a single edit reaches a different word rather than a mishearing. ## Where should the search workflow stop? At the edge of what you imported. StoryFolder indexes the videos you gave it, so a drive sitting on a shelf is invisible to it. "Which drive is it on" is a question for NeoFinder or DiskCatalogMaker. Search is the first half of the job, so it is worth knowing where the second half goes. **Retrieval, then selection, then an editorial output.** You find the shots by picture or dialogue, heart the ones you want or leave a query and filter chips standing, and then export — the same filtered set narrows every output, so what you searched for is what gets written. Switch Editorial on and it comes out as `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml`, cut in board order with no gaps, for Premiere, Resolve, Avid or Final Cut. Switch the Selects reel on and you also get one rendered H.264 `Selects.mp4` of those shots back to back, for someone to watch rather than to cut from. Editorial is Pro; the reel is on every plan. Three things that search does not reach past. The timeline is written **against the one file you imported**, so it hands the edit your selection, not the camera originals behind a rendered source, and there is no AAF and no import of any timeline format. It is a desktop app for macOS and Windows, with no Linux build. And it is not a live review session, so nobody is watching along with you from another city. Transcription itself degrades where you would expect: heavy accents, people talking over each other, noisy location sound, and specialist jargon. Words the model was unsure about carry a dotted underline, never a percentage, because the underlying probability is not calibrated well enough to print. That toggle is off until you turn it on under Display. ## What can you export after finding the shot? The transcript comes out as SRT, WebVTT, plain text, CSV or Fountain, and none of that is paywalled. The CSV is the one with the shot-number join. The per-shot transcript also prints inside the storyboard PDF. The spreadsheet and shot-list export, which carries your own metadata columns, is on Pro, as are Statistics and unlimited AI Autofill; custom fields are on every plan, and the free plan covers your first 100 autofilled shots. On the free tier a board shows 50 shots and you get 6 boards, which is enough to see whether the join is useful to you and not enough to run a library on. ## FAQ **How much of the arkiv library had no dialogue?** 1,161 of 1,506 clips, or 77%, are dialogue-free b-roll, leaving 345 clips a transcript-only tool can reach. **Does the search box check shot metadata and the transcript at the same time?** Yes. One query runs against both in one pass, and each result is labelled with the metadata field or the transcript that matched it. **Is StoryFolder's library search fuzzy?** No. Library and board search is case-insensitive substring matching. The fuzzy matcher is in the transcript editor's search box. **Which metadata field types does the search box read?** Text, Dropdown, Tag and Number, plus the transcript. Rating and Checkbox narrow results as filter chips rather than as searchable text. **Can I search for a speaker's name?** No. Transcript search reads spoken words only. Speakers are handled by a separate visibility filter that runs before the query. **Does StoryFolder edit video by editing text?** No. Descript and Reduct do that. StoryFolder indexes imported video and does not cut it from the transcript. **Which transcript export keeps the shot number?** The transcript CSV, which carries start, end, shot number, speaker and text on every line. **What does "No speech found" mean?** Transcription ran and found nothing spoken — music, ambience or silence. It is a status, not an error, and the clip is still findable through its metadata. --- # Logging footage where nobody is scripted URL: https://storyfolder.com/blog/logging-footage-where-nobody-is-scripted Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 5 min Unscripted footage: people walk in mid-sentence, talk over each other, and change roles by the day. How speakers are separated and corrected, how a re-transcribe is handled, and which exports keep the labels. *Last updated: 2 September 2026.* Nobody hands you a script for this footage. People walk into frame mid-sentence, talk over each other, and the same three people show up across forty hours of location audio wearing different roles depending on the day. A scripted interview gives you one clean speaker and a slugline. Reality and documentary give you neither, and most logging tools assume you have both. Someone on r/editors, describing what an NLE's project bin actually gives you for unscripted or documentary work: *"NLEs are super far behind when it comes to logging and managing media in the project bin, and it makes selects far more annoying than they need to be, especially for unscripted or documentary work."* (u/OliveBranchMLP, r/editors, 2025.) Useful logging here needs a transcript and a speaker structure you can actually edit, rather than a wall of text carrying `Speaker 1` labels nobody bothered to fix. StoryFolder separates speakers automatically, then lets you rename, merge, delete or reassign them. One thing to know before you build a habit around it: a re-transcribe rebuilds the speaker segments from scratch, so the naming pass is worth doing on the transcript you intend to keep. **New in 0.4.** Speaker identification is new, free, and off by default; it runs on your machine alongside the transcription. [How it works and what it gets wrong](https://storyfolder.com/blog/transcription). ## What makes reality footage harder to log than a scripted interview? There's no script to check dialogue against, no single clean speaker track, and no NLE bin structure built for a cast that changes role by scene. One StoryFolder customer coined a name for the only workaround most people have without a real logging tool: **"SCRUB v1"**, a full watch-everything pass, logged in the board title because there was nowhere better to put it. That's not a deliverable, it's a navigation verb somebody had to invent because nothing else was tracking it. The honest version of the job: separate who's speaking, correct it where the machine got it wrong, and keep the correction around long enough to matter. ## How are speakers separated and corrected? Diarization runs locally as part of transcription, and it comes back with generic labels, `Speaker 1`, `Speaker 2`, and so on. [The speaker engine, its default and its limits](https://storyfolder.com/blog/transcription) are described alongside the transcription itself. From there you can rename a speaker, give them a colour so a long transcript stays scannable by eye, merge two labels the diarizer split by mistake, delete one, or add a speaker that wasn't detected. Correction goes finer than the whole segment, too. Drag-select a run of words inside a line and assign just that range to a different speaker, which is what you want for the moment someone talks over the person actually being interviewed. That reassignment splits the line into pieces at the word boundary you selected, and the split pieces lose their ability to be reverted to what the model originally wrote, since the line they came from no longer exists as one unit. One thing diarization doesn't do: cleanly separate two people talking at once. When speech overlaps, the system resolves the segment to whichever speaker has the larger share of it, so you get one label on that segment. ## What happens to your speaker work when you re-transcribe? The transcript comes back with a fresh set of speaker segments, because diarization runs again over the audio from scratch. Plan the naming pass around that rather than around the previous transcript. Re-transcribe a file, whether for a new model, a corrected language setting or any other reason, and the diarizer segments the audio again. What comes back is a new set of speaker segments rather than the old ones re-labelled, so a word-range reassignment belongs to the transcript you made it on. The practical rule is the same one that applies to any pass you might redo: settle the model, the language and the speaker-detection switch first, run the transcribe you mean to keep, and do the naming and the word-range corrections after that. ## Can the log be read and searched by speaker? Yes. **By speaker** is one of five transcript reading modes, alongside By shot, Continuous, Captions and Plain text, and it groups every line under the person who said it. You can also narrow the transcript to specific speakers before running a search. That's a visibility filter you set first; transcript search itself reads spoken words, never speaker names. ## Which exports keep speaker labels? SRT and WebVTT carry speaker labels once a transcript has more than one speaker; VTT uses voice spans to do it. Fountain, built for screenplay-shaped text, emits proper character cues. The transcript CSV carries speaker alongside start time, end time, shot number and text on every row, which is the export worth reaching for if you're handing a reality log to someone who needs to sort or filter it later. ## Where will diarization still need a human? Heavy accents, people talking over each other, noisy location sound and specialist jargon all degrade what the model gets right. That's the same list that degrades transcription generally, and diarization inherits it. Low-confidence words get a dotted underline so you know where to look twice. It's off until you turn it on under Display, and it never shows a percentage, because the model's own confidence isn't calibrated well enough to print as one. ## What does StoryFolder still not do for a reality workflow? It doesn't edit video by editing text, doesn't run a live remote review session, and it isn't a MAM or a drive catalogue. Picks do go back to an NLE — the Editorial output writes `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml`, plus a rendered selects reel — but always against the one video you imported, with no AAF and nothing read back in. In the board and the spreadsheet it carries elapsed timecode rather than source timecode, with no reel, drop-frame or SMPTE frames field, so a shot list built from those reads to the second rather than the frame; the Editorial files are the exception and carry real `HH:MM:SS:FF` at the source's frame rate. ## FAQ **Can StoryFolder rename detected speakers?** Yes. Speakers can be added, renamed, recoloured, deleted or merged after diarization runs. **Can I reassign just part of a line to a different speaker?** Yes. Drag-selecting a range of words splits the line at that point and assigns the selected range. **What does re-transcribing do to the speakers I already corrected?** It runs diarization again, so the transcript comes back with a new set of speaker segments. Settle the model and the language first, then do the naming and the word-range corrections on the transcript you are keeping. **Can I search for a specific speaker's name?** No. Search reads spoken words. Which speakers are visible is a separate filter you set first. **Which exports keep speaker labels?** SRT and WebVTT once there is more than one speaker, Fountain as character cues, and the transcript CSV on every row. **Does StoryFolder separate two people talking at once?** No. An overlapping segment is resolved to whichever speaker has the larger share of it. --- # How to find footage with no dialogue URL: https://storyfolder.com/blog/how-to-find-footage-with-no-dialogue Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 7 min Transcription says No speech found and the plant shot still needs finding in six months. What to record about silent b-roll so it can be found: the field set, the field types that stay stable, and when to use AI Autofill. *Last updated: 2 September 2026.* The shot you want is 4 minutes 23 seconds of a plant running, scored to library music, nobody speaking. Transcription ran on it and reported "No speech found in this video", which is correct and completely useless to you in six months. Silent footage has to be findable by something written on the picture: a field somebody filled in, either by typing it or by having a model look at the frame and write it. That is the only handle a clip without dialogue ever gets. The open-source [arkiv project](https://github.com/vulture-s/arkiv) indexed a real production library of 1,506 clips and found 1,161 of them dialogue-free, which leaves 77% of that one library invisible to anything that only reads speech. One boundary first, because these two features sit next to each other in the app. StoryFolder's transcription runs on your own machine. **AI Autofill does not.** It sends frames to StoryFolder's central server, which calls a vision model, and the free plan covers your first 100 shots, Pro unlimited. If you use Autofill to log your silent b-roll, that is a cloud step, and it should be a decision rather than a surprise. **New in 0.4.** AI Autofill can now write a first pass into the shot fields you enable, on any plan (the free plan covers your first 100 shots), by sending one frame per shot to StoryFolder's server and on to a hosted vision model. [What it fills and what it will not](https://storyfolder.com/blog/ai-autofill). ## What should you record about b-roll so it can be found later? Write down the things you will search for from memory, which are almost never the things a form asks for. You remember an action, a place, who was in it, and what the clip was for. A field per one of those, filled with short blunt values, is the whole system. What you will remember in eight months The field that catches it Useful field type "the one where he adjusts the hard hat" `Action` Text "we shot that at the loading dock" `Location` Text or Dropdown "was that one cleared for use?" `Release form` Dropdown "was anyone actually in it?" `Talent Name` Text or Tag "that was for the recruitment cutdown" `Content Type` Dropdown "it's on the drive somewhere under…" `Find in Folder` Text `Action` is one StoryFolder ships with. A new board arrives seeded with a treatment-shaped [set of shot fields](https://storyfolder.com/help/notes/default-fields) (`Key Takeaways`, `Action`, `Visuals / Cinematography`, `Sound & Music`, `Emotional tone`, `Symbolism` and a `Tags` field, among others), which suits reference analysis better than it suits b-roll logging. The rest of the table is business-shaped, and that is the set customers build for themselves. `Location`, `B-ROLL`, `Release form`, `Client`, `Job#` and a field literally named `Find in Folder` all come from working StoryFolder libraries, and the last one exists because somebody wanted the physical whereabouts of the media written next to the picture of it. Another customer filled a single field named `Animation` on 589 shots. One field, one repeated classification, applied until it became a filter. That is what a field for b-roll should look like. [Field type](https://storyfolder.com/help/notes/field-types) matters more than it seems, because it decides whether the value is stable. A Dropdown holds one of its own options, so `Shot Size` comes back as `Wide` every time rather than as `wide`, `WIDE` and `v.wide` across three jobs. Tag and Text hold anything, which is right for `Action` and dangerous for anything you plan to count. Rating and Checkbox are not text at all and do not answer to the search box; they narrow results as filter chips instead. [Creating your own fields](https://storyfolder.com/help/notes/custom-fields), and the schema editor that does it, is on every plan. Two habits make the difference on a real backlog. Fill fewer fields than you think you need, because a field you fill on 12 shots out of 400 retrieves nothing. And copy shot metadata between shots where a run of clips shares a location and a job, which turns most of a 400-shot ingest into a few dozen decisions. ## What does "No speech found" mean? Transcription completed and found nothing spoken. The exact wording on screen is the heading **"No speech found in this video"**, the line "Transcription ran and found nothing spoken — music, ambience or silence.", and a **Transcribe again** button. That is a finished transcription reporting what it heard, and it is not a reason to re-run anything. The interesting part is why it is a separate status at all. Whisper does not go quiet over music, it hallucinates, and it does so confidently — it will repeat a handful of words over and over and score every one of them high. A confidence test would wave that through. Counting repetition catches it, which is why the status exists. The practical consequence: a clip that reports no speech has not failed to be indexed. Its audio held nothing to index, and its metadata is doing all the work. ## Should a person log the fields or use AI Autofill? Type the fields you will filter on. Let Autofill take a first pass at the ones you would otherwise leave empty. Manual logging is slow and exact. You know what the shot was for, which a model looking at one frame does not. If a field feeds a decision, like the shots cleared for use or the ones with a signed release, type it, because a wrong value there costs more than a blank one. Autofill is a first pass across the fields you switched on, and [the Autofill controls, defaults and cloud boundary](https://storyfolder.com/blog/ai-autofill) are set out in full on the feature page. Four properties decide whether it fits your job: - **It is a cloud call, and it is on every plan.** Frames go to StoryFolder's central server; the free plan covers your first 100 shots, Pro is unlimited. Transcription's on-device story does not extend to it. - **Every field's Autofill switch ships off,** and the action is not even drawn until you turn one on. - **It only fills empty fields,** so it will not overwrite a value you typed. There is also a separate "Autofill on import" setting, off by default, because one dropped file can otherwise be hundreds of model calls. - **Constraint is per field type.** A Dropdown answer must be one of that dropdown's options, a Rating is a whole number 0 to 5, a Checkbox is true or false, and a Number has to be a number. Tag and Text are open by design, so the model can write a tag that was never on your list, and a Text field will accept anything plausible. A Job# text field is exactly where you will find a well-formed wrong answer. Two more things to know before a large run. A value the model returns that falls outside a field's domain is dropped silently, with nothing shown to you, so "the model had no answer" and "the model was overruled" look identical from the outside. And a run creates no restore point, so there is no undo. The workable order on a backlog: create the two or three fields you will actually filter on, switch Autofill on for the descriptive ones and off for anything identifying, run it over a handful of shots, read what came back, then let it loose on the rest. ## What still stays outside this index? Footage you have not imported. StoryFolder indexes the videos you give it rather than walking your drives, so an archive on a shelf is invisible to it, and so is anything still in a card folder. It does not track storage, generate NLE proxies, or catalogue offline media. "Which drive is it on" is a question for NeoFinder or DiskCatalogMaker, and it stays that way. ## FAQ **Can a shot with an empty transcript appear in search results?** Yes. If its metadata contains the text you searched for, it comes back labelled with the field that matched and no transcript match at all. **Should I re-run transcription on a clip that says "No speech found"?** No. The run completed and there was nothing spoken in the audio to record, so a second pass returns the same result. **Does AI Autofill run on my machine?** No. It sends shot frames to StoryFolder's central service. Transcription and speaker detection are the parts that run locally. **Does Autofill fill every field on a shot?** No. It fills the fields whose Autofill switch you turned on, and only where they are empty. Every switch ships off. **Can I undo an Autofill run?** No. A run creates no restore point, and rejected values are dropped without a message. **Which field types does the search box actually read?** Text, Dropdown, Tag and Number. Rating and Checkbox work as filter chips instead. **Can StoryFolder find a clip on an offline drive?** No. It indexes the videos you imported into it. --- # A revision-note log for video edits: the columns, the states and the handoff URL: https://storyfolder.com/blog/revision-note-log-for-video-edits Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 7 min One producer, three feedback channels, one editor waiting. The columns, states and handoff for a shot-by-shot revision log that turns email, WhatsApp and voice notes into a single list. *Last updated: 2026-09-02* One person replies to the cut by email while another sends a WhatsApp message, and by the next morning you've got three channels, no single list, and an editor waiting on you to tell them what actually changed. The fix is a fixed set of fields you fill in once per shot, so every accepted note ends up in the same row shape no matter which channel it arrived on. Build the schema, consolidate every reply into it, and hand the editor one ordered list instead of a thread. StoryFolder doesn't pull those emails or WhatsApp messages in for you, and there's no built-in approval workflow behind any of this. You're still the one reading the reply and typing it into the shot. What StoryFolder gives you is somewhere consistent to put it, a shot-level field structure that survives being pinged from six different chats before lunch, and an ordered spreadsheet after. ## What columns belong in a video revision-note log? Start with four fields you build, sitting next to the shot number and thumbnail you already have: the requested change, an area, a status, and, only if the handoff needs it, who asked. Add a field only when it would change what the editor actually does. A Number field for the revision round earns its place the moment you're past round one. A shot-scoped log built this way, using StoryFolder's six field types, looks like: Field Type Example values Revision note Text Free text — the actual instruction Area Dropdown Picture / Messaging / Sound / VFX Revision state Dropdown New / Accepted / Done / Needs clarification Stakeholder Tag or Text Only if the handoff needs to say who asked Round Number Which revision round the note arrived in The categories in that `Area` field are yours to define per project, and they should track the categories your own client notes actually fall into. A fresh board seeds a "My Notes" category with twelve treatment-shaped text fields: `Key Takeaways`, `Story`, `Emotional tone`, `Visuals / Cinematography`, `Messaging`, `Sound & Music` and the rest. That is a useful starting schema for the creative read on a cut and is not the revision-note schema above. The fields paying customers build for themselves are blunter and job-specific: `Animation`, `Release form`, `Job#`, `Asset`, `B-ROLL`, `Find in Folder`. Pick the handful that match your job. Creating your own custom fields is included on every plan. `Revision state` is a Dropdown you build. StoryFolder ships six field types (Text, Tag, Dropdown, Checkbox, Rating and Number), and none of them is a pre-built approval or status field. "New / Accepted / Done" is a convention you're defining. Build the revision fields separately, and don't repurpose one of the seeded text fields and call it a status system. For how fields, categories, and shot-versus-video targeting actually work, see feedback on a shot, not a timecode. This page assumes you've already got shots on a board and focuses on what to do with them. ## How do you turn scattered feedback into one list? Appoint one person to consolidate, fix which cut the notes are about, and normalize every accepted request into your schema before the editor ever sees the list. Reject duplicates and kick ambiguous notes back for clarification rather than passing them through. The scatter is well documented. On [r/videography in 2026](https://www.reddit.com/r/videography/comments/1sybl2j/), u/Dry-Resource6903 described it: "usually it turns into some mix of google drive, whatsapp, email, voice notes, loom etc. and obv - someone replies on whatsapp, someone else sends feedback by email, another person sends a voice note saying 'just tweak that part in the middle'". On [r/editors in 2026](https://www.reddit.com/r/editors/comments/1ssibg5/), u/luxomania put the failure mode more bluntly: "One change becomes three emails, two WhatsApp messages, and a hallway conversation nobody documents," and "The result is clients coming back asking for things and nobody knows which is the final master." Too many reviewers makes it worse. On [r/editors in 2023](https://www.reddit.com/r/editors/comments/10qzdkf/), u/84002 compared it to a Michelin dish that gets passed around six other chefs before it leaves the kitchen: "The final product is gonna be muddled and overseasoned." One person owns turning six opinions into one list, on one shot, in one field. None of this consolidation happens automatically. There's no inbox StoryFolder pulls from and no API that ingests a WhatsApp thread. You read the reply, decide whether it's an accepted instruction or something that needs a follow-up question, and type the result into the shot yourself. ## How do you apply the same revision to a run of shots? Multi-select the shots the revision applies to and write the field once. StoryFolder applies that value to every shot in the selection in a single action. Where the selected shots already hold different values, the inspector shows that field blank. The blank is telling you the shots disagree, and it is not a safeguard. Type into it and you overwrite all of them, including the shots whose value you wanted to keep. So anything that's close but not identical stays as its own note on its own shot. Don't force an exception into the batch to save a step; that's how a shared edit quietly overwrites something a specific shot needed. This is the move for anything that genuinely repeats: the same graphic removed from a run of shots, the same status change across a scene. One production's `Animation` field holds 589 filled-in notes, including the same "remove animation" instruction typed 20 separate times across the board, in a 2026 analysis of 813 boards across 295 paying accounts. That's evidence the same instruction recurs often enough to be worth a shortcut for, not proof that particular account used one. Whether they typed each one individually or multi-selected isn't something the data shows. Metadata can also be copied from one shot and pasted onto another, which is the better tool when two shots need the same values but aren't a contiguous run you'd want to select together. New in 0.4, there is a second route for a value that repeats: copy the metadata off one shot and paste it to a selection through a plan that names the fields, the shots and whether anything already filled is left alone. The whole paste is one entry in version history and one undo. [How selective paste works](https://storyfolder.com/blog/version-history-and-copy-paste-metadata). ## How do you see what is still unresolved? Filter the board on your status field, a Checkbox or Dropdown you built, and save that as a quick filter so you can jump straight to what's outstanding without hunting the whole board. Checkbox fields can be filtered on directly, and a filter condition can be saved as a quick filter you return to. That turns "which shots still need work" from a scroll-and-scan into a saved view. Be precise about what that view is: a filter on a field you defined, with no assignee, reviewer identity, comment thread, resolved flag or audit log behind it. The Checkbox only means what you decided it means when you built it. An active search or filter travels with the export and the publish, so filtering down to the unresolved shots and publishing gives the editor those shots. The favourite and hidden flags still narrow an export as well, and they are the ones to reach for when the set has to survive you clearing the search. Preserving which cut a note belongs to as revision rounds continue is covered in feedback on a shot, not a timecode. ## What the revision log adds to the handoff Whichever export you pick, the editor gets a revision round rather than a shot list: a status column showing what's still open, and a log you already filtered down to the unresolved shots before sending. For the XLSX-vs-PDF choice itself, see "feedback on a shot, not a timecode." ## FAQ **How many field types can a revision-note schema use?** Six: Text, Tag, Dropdown, Checkbox, Rating and Number. **Does StoryFolder have a built-in approval status?** No. A status is a Dropdown or Checkbox you define yourself, not a formal approval state the product ships with. **Can one note be added to several shots at once?** Yes. Selecting multiple shots and editing a field writes that value to every shot in the selection, including any shot that already held a different value. **Can I filter the board down to only the unresolved shots?** Yes — filter on your status Checkbox and save it as a quick filter. The filter narrows your own screen only; it doesn't narrow what gets published or exported. **Can an editor sort the notes in a spreadsheet?** Yes — the Pro Spreadsheet/Shot List export produces an XLSX with one row per shot and a column per metadata field. **Do custom revision fields cost anything?** No. Creating your own custom fields is included on every plan; the Spreadsheet/Shot List export they become columns in is the Pro part. --- # How to give an editor shot-by-shot feedback on a rough cut URL: https://storyfolder.com/blog/how-to-give-an-editor-shot-by-shot-feedback-on-a-rough-cut Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 8 min The client says blur every laptop screen and fix the lower-third throughout. How to turn a rough-cut review into shot-by-shot notes an editor can act on, with the shot as the unit instead of a timecode. *Last updated: 2026-09-02* You just watched the rough cut with the client, or you're reading their reply to the file you sent. Somewhere in there is "blur every laptop screen" and "change the lower-third throughout." Your editor needs to know exactly which images each note touches, and a paragraph of prose won't tell them that. Attach each note to the shot it's about, its thumbnail and its number, and reach for a timecode only when the change is frame-specific. Hand the editor one ordered list, one row per shot, and they don't have to guess. StoryFolder's shared board is a view-only deliverable. There is no comment field, click-to-annotate or approval button on it. The client's actual reply (an email, a WhatsApp voice note, a phone call) comes back outside the product, and you're the one who types it into the shot. Everything below is about making that typing fast and unambiguous. ## What makes a video note actionable? An actionable note names the shot it applies to, says what is wrong with the image, states the specific change requested, and identifies which version of the cut it was written against. Drop any of those four and the editor has to interpret, which is how one note turns into a follow-up email and another day of waiting. The vocabulary that shows up when a note skips straight to the vibe is well documented. On [r/editors in 2023](https://www.reddit.com/r/editors/comments/17atq08/), u/harpua4207 described a client who "can't stop dropping 'Flurry'", and u/Strottman in the same thread listed "Elevate. / Can we elevate this sequence? / Graphics treatment could be elevated." On [r/Filmmakers in 2025](https://www.reddit.com/r/Filmmakers/comments/1llcmya/), u/Styphin got "not sure what the vibe should be, I'll know it when I see it." None of those tell you where to look or what to touch. Real client notes read differently once they're tied to a shot. Two examples, in the shape those notes take on paying StoryFolder boards: "Swap the old logo for the new one, centre bottom," and just "Remove the lens flare." Both are short. Both are actionable, because they're sitting on the shot they describe. There's no ambiguity about which frame the logo is in. That's also why "make it warmer" still isn't enough on its own, even once it's pinned to a shot. A coordinate tells you where; it doesn't tell you what "warmer" means to this client on this shot. You still need the second half of the note, the requested change, before an editor can act without a follow-up email. A note that repeats across a run of shots is one edit rather than ten, and "collecting revision notes shot by shot" covers the field types and how to build that schema. ## When is a shot better than a timecode? Use a shot when the note is about the image or the action as a whole. Use a timecode or frame number when the exact onset, the trim point, or a specific moving frame is what matters. Most established review tools treat the video as one continuous timeline and a note as a point on it: `0:23:14`. That's a fine address for "the cut is a frame late here." It's a bad address for "I don't like this shot," because the client isn't thinking in frames. StoryFolder treats the shot itself as the addressable unit: a named, numbered, thumbnailed row that carries fields and state. Import a rendered cut and StoryFolder detects the shots automatically, laying each one out with its own frame. From there a note isn't "at 0:23," it's "on shot 14," and shot 14 comes with a picture attached, which is the part a client can actually read. A working note log, built from the kinds of changes that show up in real per-shot notes, looks like this: a laptop screen that needs blurring, a lower-third that needs replacing throughout, a release-form status that needs checking before publish, and an audio cut that needs two seconds of breathing room. Shot Thumbnail Requested change Status 4 (frame) Blur the laptop screen — sensitive info visible Open 4 (frame) Replace lower-third text throughout the video Open 9 (frame) Confirm talent release form before publish Needs clarification 22 (frame) Add two seconds before the next line starts Done The note and the status are metadata on the shot, so they travel with it: next to the frame on the shared page if you publish notes, and as a column in the spreadsheet and PDF exports. Building your own fields, rather than using the ones a new board ships with, is included on every plan. The shot isn't a universal address, though. The shared board shows no timecode anywhere, and even the shot number stays hidden until you hover over it, so it doesn't solve every addressing problem on its own. When the request really is about a frame ("the cut lands one frame early"), a shot address doesn't help. That's still a job for a timecode, and the move is to write the frame number into the note text itself. ## How do you preserve which cut the note belongs to? Put the client-facing version in the board title and the export filename, because StoryFolder doesn't keep a review audit trail or hand out a new URL per version. **StoryFolder's version history is not rough-cut version storage.** New in 0.4, it records the edits you make to a video's notes, metadata, transcript, title and shot boundaries, one restore point per gesture, and lets you preview and roll them back. It does not version media, and it does not know which cut a note belongs to. [What it captures and what it does not](https://storyfolder.com/blog/version-history-and-copy-paste-metadata). This happens constantly. Internal version numbers and client-facing draft numbers drift apart, and a note comes back referencing a cut nobody can identify anymore. On [r/editors in 2024](https://www.reddit.com/r/editors/comments/1fpl8fw/), u/indymoguler described being "on version 5 of a sequence, but the client is only seeing draft 2," and u/tipsystatistic put the requirement plainly: "The only thing that matters is that if they approve v012, everyone knows which cut it is." Paying StoryFolder customers already solve this the low-tech way: board titles carrying the version right in the name, `V12`, `WIP5`, `FINAL_V6`, `Animatic_7`, `Edit 1 of 3`, turn up across roughly thirty of the 295 paying accounts in a 2026 analysis of 813 boards. It's a naming convention, and it works because it's the one piece of version information that survives every export and every republish. It has to be the naming convention, because republishing a board overwrites the same link. There's no versioned share URL and no "compare this round to the last one" on the recipient's side. A board published six times is still one URL showing one current state. StoryFolder's own local Version History keeps restore points as you work, which is useful for your own rollback, but the client never sees it. The version number in the title is the only version information that reaches them. ## How does the client see the shot list? The client opens a link in a browser, with no account and nothing to install, and reads a view-only board: your notes sitting next to each frame, in whichever of three layouts you chose. They reply the way they already reply to you (email, a call, whatever's normal for that relationship), because there's nowhere on the page for them to type anything back. The link offers three layouts, Storyboard, Thumbnails or Shot List, each showing the shot's frame and the note fields beside it, and none of them gives the client anywhere to type. If the source is a local file rather than something hosted on YouTube, the recipient doesn't get a video player at all, just the frame and the notes. That's the normal case, since most paying customers work from local `.mov` and `.mp4` files rather than YouTube links. And check the notes toggle before you hit publish. "Include notes & data" is all-or-nothing: it publishes every shot-scoped field on the board, including any internal field with a colleague's private thoughts in it. There's no per-field selection on this particular export; that level of control exists on the spreadsheet and PDF exports. ## What should you hand the editor after review? Export XLSX when the editor needs to sort and filter rows, or PDF when they need the frame sitting right next to the note. The spreadsheet export gives one row per shot and a column for each metadata field you include, which is what you want once the review notes are in and you need to work through them systematically; it's the one Pro-gated export in the list. The PDF keeps the frame and the note together on the page, which is better when the editor is scanning visually rather than filtering a table, and it isn't Pro-gated, though a free board caps at 50 shots. Neither export turns your notes into markers inside Premiere or Resolve. The editor gets a document to work from and rebuilds the changes in the timeline themselves. ## FAQ **Should video feedback use shots or timecodes?** Use a shot for anything about the image or action as a whole; use a timecode or frame number when the exact onset or trim point is what matters. **Can a StoryFolder viewer leave comments on the shared page?** No. The shared board has three read-only layout modes and no comment form of any kind. **How many field types can hold shot-level notes?** Six: Text, Tag, Dropdown, Checkbox, Rating and Number. **Where should the client-facing version number live?** In the board title and the export filename. StoryFolder republishes to the same URL and keeps no per-version share link, so the title is the only version marker that reaches the client. **Does republishing a board create a new link?** No. Republishing updates the existing board at the same URL — there's no per-version share link. **Can StoryFolder notes become Premiere or Resolve markers?** No. There's no marker round-trip back into an NLE. --- # A client sent you a reference video. Now what? URL: https://storyfolder.com/blog/a-client-sent-a-reference-video-now-what Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 11 min A client sends a link and says we want something like this. Turn the reference into a numbered shot document with a thumbnail and duration per row, then write against each shot what stays and what changes. *Last updated: 2 September 2026.* The link arrives with one sentence under it: we want something like this. There is no script, no shot plan, and no shared meaning yet for the word "like". The move that gets you out of this is to turn their reference into a numbered document. Import the file into StoryFolder, let it cut the reference into shots with a thumbnail and a duration on each one, then write against each row what the client wants kept and what making that would actually take. Send the annotated reference back so you are both pointing at shot 12 rather than at a vibe. Once the rows are agreed, they go into your own estimating sheet. StoryFolder finds the shot boundaries, times them, and gives you rows to write in. It has no opinion about the lens, the rig, the lighting, the location, how many days this runs, or what any of it costs, and it does not schedule anything. The PDF it prints is a shot document on US Letter, portrait, two cards to a page, with no cover and no page numbers, so a designed treatment still gets built in Milanote, Canva or Keynote. ## What does "make something like this" actually ask you to decide? It asks you to separate the part the client wants preserved from the production method the reference used to get there. Those are different things and clients rarely know which one they are pointing at. The part they want preserved might be a story beat, the cutting pace, a framing, a camera move, a performance, the sound, the on-screen copy, or a brand tone. The method is a blackout stage, a crane, a choreographer, four days, and a post budget. On [an r/cinematography thread from 4 December 2021](https://www.reddit.com/r/cinematography/comments/r8o0ll/), someone who had been asked to recreate the sinking scene from *Get Out* on a small budget worked out what was hiding inside it: "we would need to book a blackout studio, expertise in harnesses/wirework with the appropriate crew, digitally remove the wires in post and get in some good lighting." Their conclusion is the whole problem in one line: "What looks like a simple scene, is actually pretty complex and does require money and crew." A commenter on the same thread supplied the governing distinction, which is worth saying to a client out loud: "Emulate means emulate, not achieve exactly." The vaguer version of the same request is a mood word. On [a thread from 15 October 2023](https://www.reddit.com/r/cinematography/comments/17879us/), someone described a client who "have absolutely no clarity" and were "harping upon" one word: cinematic. Another commenter read the word accurately: "'Cinematic' is the easiest direction for them to give because it's one word that communicates high quality that they think allows them to hide behind the fact that they don't know anything. They *obviously* don't understand it, and they also don't understand how many ways there are of interpreting it." Neither of those conversations needs software. What they need is a place to write the answers down against something specific. That is what the reference becomes once it is a list of shots. What the client points to What you have to resolve The whip pan at the top Do they want that rig, or do they want that energy? The crowd in the stadium Is it the scale, or the feeling of being watched? The words that fly in over the third shot Is that their exact copy, or a pacing reference? The way it feels graded A look you can build, or a colourist and a day in the suite? The dance sequence A performance to cast, or a beat you can cover another way? StoryFolder does not answer a single question in that right-hand column. It gives you the row the answer gets written on, with the frame beside it so nobody argues about which shot you meant. ## How do you turn the reference into a requirements document? Six steps, and the first one is usually the annoying one. - **Get a file you can actually open.** StoryFolder imports a public YouTube or Vimeo URL, and it imports six local formats: .mkv, .avi, .mp4, .mts, .webm and .mov, one file at a time. See [importing a local video file](https://storyfolder.com/help/importing/from-file) and [importing from a URL](https://storyfolder.com/help/importing/from-url). If their link is private or gated, skip to the last section of this article. - **Import it and let detection run.** Every frame gets decoded and compared to the one before it, and the board fills with one card per detected shot, each with its own thumbnail, its start, its duration and its first and last frame number. A 59-second vertical reel comes back as around fifty cards. - **Correct the boundaries before you write anything.** Move the [sensitivity slider](https://storyfolder.com/help/editing/sensitivity) if the whole board is wrong in one direction. Then [split and join](https://storyfolder.com/help/editing/split-merge) the individual mistakes: click a thumbnail where a cut was missed, hover a card's edge to fuse it with its neighbour. Hard cuts are what the detector is good at. Dissolves and fades spread their change across many frames and get missed, so a reference full of them needs a pass by hand. - **Write the requirements onto the shots.** A new library ships with a set of note fields that are already close to what this job needs: Story, Action, Messaging, Emotional tone, Visuals / Cinematography, Performance, Sound & Music, Symbolism, Key Takeaways, Interpretation, plus a Tags field and dropdowns for Shot Size, Movement and Content Type. You can type into those, or create your own fields, on any plan. See [the fields that ship with StoryFolder](https://storyfolder.com/help/notes/default-fields). - **Mark the shots that need a decision, in batches.** Select several cards and the inspector writes one value across all of them at once, which is the difference between a ten-minute pass and an afternoon. A field whose value disagrees across the selection reads Mixed · N values. Tags are the exception and edit one shot at a time. See [editing several shots together](https://storyfolder.com/help/notes/multi-shot). - **Publish it, or export it.** A published board gives the client three ways to look at the same thing: Storyboard, Thumbnails and Shot List. Storyboard and Shot List carry your notes against each shot; Thumbnails is frames only. See [publishing a board](https://storyfolder.com/help/sharing/publish) and [what a viewer sees when they open the link](https://storyfolder.com/help/sharing/viewer-experience). Your notes are keyed to frame numbers rather than to shots, so re-cutting the board does not throw them away, and joining two annotated shots carries both halves of the notes onto the merged card. And there is no version of step 3 that involves watching the reference in real time. You scroll the board and fix what looks wrong, and that pass scales with the number of cards rather than with the runtime. ## Which fields turn visible shots into production questions? Keep what is visible in the reference separate from what you are inferring about how it was made. The detector supplies the first. Everything in the second column below is you. Visible in the shot Field it goes in The question it raises Who answers The beat, what happens `Story` / `Action` Does this exact beat have to survive? Client A super or a line of copy `Messaging` Is that their wording, or a pacing reference? Client Framing and camera move `Shot Size` / `Movement` The literal setup, or the feeling it produces? You, then the DP A location, a face, a wardrobe choice Your own Text or Dropdown field Can we get it, and what substitutes? Producer Music, VO, effects `Sound & Music` Something to produce, or a temp reference? Client Anything you cannot explain A `Needs discussion` value Who has to validate this before I promise it? A specialist The shipped schema is treatment-shaped on purpose, and people use it that way. One StoryFolder board built for a commercial has the `Story` field filled on 41 shots and `Messaging` on 19, one row at a time, the whole pitch written into the fields. On a board for a veterinary product ad, whoever built it had gone further and made their own fields: `Original Storyboard Video Notes`, `Existing/Original VO` with 12 filled entries carrying the actual script, and `Existing On-Screen copy`. One of the notes on that board reads "is a modification of original storyboard - very similar", which is this exact job, written down by someone in the middle of doing it. Custom fields like those are included on every plan, and for a first pass on a reference the fields that ship in the box cover most of it. ## How should you handle the scope conversation before quoting? Go shot by shot and ask four questions of each marked row: is this essential, can it be adapted, does a specialist have to look at it, or is it out. Do that before anyone talks about money, because the argument you are trying to avoid is the one where the client thinks they bought something you never agreed to. The most useful account of this conversation I have found was posted by a commenter on that October 2023 thread, describing a band who wanted a Thriller-level dance number a week out: "I explained to them they'd have to hire a choreographer, multiple dancers, rent out a space to practice, buy more costumes, and put more people through makeup. I told them it's technically possible but the budget would have to quadruple… They instantly took back their idea and said 'Oh never mind, we didn't think of all that, we just thought it would be cool.' They weren't angry, they truly just don't know what goes into a production." The same person's summary of the job: "It's your job to think of the things they don't know they don't know." That worked with nothing but a phone call. It works better against a numbered list, because "the dance number" becomes shots 14 to 22 and the client can see how much of their reference it actually is. Bucket What it means What you send back Keep Essential and achievable as shot Nothing, it is agreed Adapt Same job, different production choice Your alternative, against that shot Needs specialist validation Not promising it until the DP, the VFX supervisor or the location manager has seen it The question, and who you are asking Out of scope Removed on purpose, in writing An explicit note, so it does not reappear in week three Make a Dropdown with the four values, which stops the fifth spelling of "needs discussion" appearing on shot 31 and lets you write one value across a multi-selection; the shipped `Tags` field can carry the same four labels, one shot at a time. Then the counts. The Statistics page tells you how many shots are in scope, and it gives you the [average, median, longest and shortest shot duration](https://storyfolder.com/help/analyze/metrics). On Pro it also [draws a distribution](https://storyfolder.com/help/analyze/charts) for each of your checkbox, dropdown, tag and rating fields, so "how many shots did I mark as needing a specialist" is a chart rather than a manual tally. Those counts are the input to your estimate. They are not the estimate: StoryFolder holds no rates, crew model, schedule, or arithmetic connecting any of this to money. You take the counts to the spreadsheet or the production system where you actually price work, which is where they belonged all along. ## What can you send back to the client? A published board is the fastest thing to send, and it is the one that does the arguing for you, because the client is looking at their own reference with your notes on it. The share popover gives you the link, an **Include notes & metadata** toggle, and Public, Unlisted or Password visibility, with the password option on paid plans. The page they open is StoryFolder-branded and carries a sign-up prompt, and it is view-only. There is also no video player on it unless the source was a YouTube URL, so for a local file they are looking at frames. The [storyboard PDF](https://storyfolder.com/help/exporting/pdf) is the other option, and it prints two cards to a page on US Letter, portrait, with the shot number, start timecode, duration and frame range on each card, your filled fields underneath, and any empty field dropped entirely rather than printed blank. It has no cover page, no header, no footer and no layout controls. If the thing you owe the client is a designed treatment with typography and full-bleed frames, build that where you build documents and use this as the source material. ## What if the client's link will not import? Ask them for the file. A private video, a members-only one, an age-restricted one, a password-protected one, or a Vimeo link that wants you signed in can all refuse, and each refusal names the reason and suggests downloading the file and importing it directly. That is the reliable path anyway. A reference arriving as a private review link is a common snag, and the fix is a one-line reply asking them to send the mp4. ## FAQ **Can StoryFolder import a client's Vimeo link?** Yes for a public Vimeo URL. A link that requires a login or a password can be refused, in which case download the file and import it locally. **Which video files can I import?** Six formats: MKV, AVI, MP4, MTS, WebM and MOV, one file per import. **Does it tell me which lens or rig was used?** No. It finds the shot boundaries and times them. Lens, rig, lighting and VFX are things you write into the shot's own fields. **Can I mark several shots at once?** Yes. Select the shots and the inspector writes Text, Dropdown, Checkbox, Rating and Number values across the whole selection. Tags edit one shot at a time. **Can the client play the video on the published board?** Only when the reference came in as a YouTube URL. A board made from a local file shows the exported frames. **Does StoryFolder produce a budget or a quote?** No. It reports shot counts, durations and the values you typed. Rates, days and totals live in your own estimating sheet. **Do my notes survive changing the detection sensitivity?** Notes are stored against frame numbers rather than shots, which is what makes a re-cut non-destructive to them. Verify it once on your own board before you rely on it in front of a client. --- # Making a shot list from a reference video URL: https://storyfolder.com/blog/making-a-shot-list-from-a-reference-video Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 8 min Most shot-list tools start from a script or a prompt. This one starts from the client's finished reference: import the file, get one row per shot with timings, and build the shot list from what was actually cut. *Last updated: 2 September 2026.* You have the client's finished reference and you want a row for every shot in it. Almost every shot-list tool you will find wants the opposite: a script, a blank board, or a prompt. The script ones and the prompt ones then propose shots that have never been filmed. The category you want takes a video file as its input and finds the cuts. StoryFolder does that on macOS and Windows from [six local formats or a public URL](https://storyfolder.com/help/importing/supported-formats), and one export writes `Shot List.xlsx` and `Shot List.csv` with a row per detected shot, elapsed timecodes, first and last frame numbers, an optional embedded thumbnail, and a column for each note field you switched on. Two limits before you go further. StoryFolder finds hard cuts and hands you the rows, and it makes no judgement about how a shot was made, does not propose coverage you have not shot, and does not schedule anything. It does write a selects timeline — `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` — but always against the file you imported, which on this job is the reference, not your own footage. There is no AAF and nothing reads back in. The spreadsheet and Editorial exports are on the Pro plan; custom fields are on every plan. ## What kind of shot-list tool works from a reference video? Sort the field by what goes in. Five categories turn up under the same search term and only the first one starts from a video that already exists. Category Starts from Produces Right job Wrong job Video-first detector A finished file or a URL Detected shots with thumbnails, elapsed timings, note fields, exports Documenting what is in a reference or a cut Planning coverage for a shoot Script or prompt builder A script, a scene, a prose description Proposed shots for footage nobody has filmed Prep on a scripted job Anything where the footage exists On-set runner A shot list you already made Setup order, completion status, day management Running the shoot day Analysing a reference Reference library A search query Frames from other people's films Finding a reference Breaking down the one you were sent Video-to-prompt tool A short clip A text or JSON prompt for a generative model Feeding an AI video generator Handing a document to a crew The distinction is not academic. [StudioBinder's shot list template](https://www.studiobinder.com/blog/shot-list-template-free-download/) is built around shots that are still to be shot, with columns for lens, gear and setup. [Storyflow's own roundup of shot list tools](https://storyflow.so/blog/best-shot-list-tools-2026) describes its product as building from a script. Those are good tools aimed at the job before yours. If you drop a client's reference into one of them, you type every row yourself. The test to apply to any candidate is short. Can I give it the video file rather than a description of the video? Does what comes out have a time on every row? Can I get those rows into a spreadsheet without retyping them? ## Which tools actually accept a finished video as the input? Very few, and they split into ones that watch a video to describe it and ones that read a video to segment it. Tool Input Output Limit worth knowing StoryFolder Six local formats, or a public YouTube or Vimeo URL Detected shots with thumbnails, timings, frame bounds, your own fields; XLSX + CSV, PDF, PNGs, MP4 clips, a share link Hard cuts are what it detects; desktop only, macOS and Windows; spreadsheet export is Pro Gemini A video file or a public YouTube URL Prose description, and whatever structure you prompt for [Google's video understanding docs](https://ai.google.dev/gemini-api/docs/video-understanding) say the API samples video at one frame per second, so a two-second shot contributes about two frames Twelve Labs Video, through an API Whatever schema you define and prompt for Developer infrastructure. You write the pipeline; check current pricing directly Video-to-prompt tools A clip or a URL A generation prompt Built to feed a generative model rather than a crew Script-first builders A script Proposed future shots Your reference is not an input at all The sampling difference matters more than it sounds. A general assistant looking at one frame per second does not see a whip pan, and it will miss most of a montage entirely. StoryFolder's analysis pass decodes every frame of the file, which is why it finds cuts a sampled read cannot. The comparison marks where the picture changes. It has no opinion about why. That is the honest trade. If what you want is a paragraph interpreting the reference's tone, an assistant will give you one and StoryFolder will not. If what you want is 52 numbered rows with durations you can hand to a DP, the assistant will approximate them and StoryFolder will detect them. ## What does StoryFolder put in the spreadsheet? One export writes two files into a `Shot List` folder: `Shot List.xlsx` and `Shot List.csv`. There is nothing to convert afterwards and no separate CSV export to find. One row per detected shot, in order. The columns come out in this order: Column Present when Value `Frame` Only if you also turn on the Images output The shot's frame, embedded in the XLSX at 200 px wide `Filename` Only if you also turn on the Images output `Shot-<n>.png`, matching the file the Images output wrote One column per field One for each shot-level field you left visible Whatever you typed `Start Timecode` Always `HH:MM:SS,mmm` `End Timecode` Always `HH:MM:SS,mmm` `Duration Timecode` Always `HH:MM:SS,mmm` `First Frame` Always An integer frame number `Last Frame` Always An integer frame number `End Time` Always Raw seconds Four things about that table are easy to get wrong. **There is no shot-number column.** The sequence number reaches the sheet only inside the `Filename` value, as `Shot-12.png`, and only when the Images output is on. If you need a numbered first column, add it in the spreadsheet. **The thumbnails come from the Images output, not from the spreadsheet.** The XLSX embeds the PNGs the Images task wrote, so turning on Spreadsheet alone gives you a sheet with no `Frame` and no `Filename` column at all. Turn both on in the same export. The CSV never carries images, which is what the `Filename` column is for. **The timecodes are elapsed from the first frame of the file you imported.** They are not source timecode, there is no reel, and there is no SMPTE frames field. A master that starts at `01:00:00:00` needs that hour added by hand. For anything sub-second, use `First Frame` and `Last Frame`, which are exact. **Only shot-level fields become columns.** Anything you put in a [video-level category](https://storyfolder.com/help/notes/categories) stays out of the sheet. The export is one-way. There is no path back in from a spreadsheet, so treat the file as a deliverable rather than as a working copy you intend to reconcile later. The spreadsheet output is on Pro. Creating your own fields, the storyboard PDF, the images and the share link are on the free plan, with a watermark on every rendered frame and the PDF truncated to the free plan's shot limit. See [what each export produces](https://storyfolder.com/help/exporting/overview). ## How do you get a trustworthy shot list out of automatic detection? Import the reference, [move the sensitivity slider](https://storyfolder.com/help/editing/sensitivity) if the whole board came back wrong in one direction, then [split and join](https://storyfolder.com/help/editing/split-merge) the individual mistakes before you annotate. That whole loop, including which cuts detection misses and what to do about them, is covered in [what to do when a client sends you a reference video](https://storyfolder.com/blog/a-client-sent-a-reference-video-now-what). ## When do you still need a planning or on-set tool? The moment the work stops being about the reference. Once the rows are agreed, everything downstream is a different shape of problem, and StoryFolder models none of it. There is no entity above a shot: no scene, no script, no shoot day, no unit, no crew, no gear list, no location record. The only order it knows is the order things appear in the video. So you still want something else for: - **Script and scene linkage**, if the new piece is scripted. StudioBinder and Celtx are built around that. - **Shoot order and call sheets.** Nothing in StoryFolder groups shots into a day. - **Running the day.** Shot Lister and similar apps exist to be held on set. - **Visual direction as a board.** Milanote and Canva do a designed page in a way a fixed two-up PDF never will. - **A conform.** There is an EDL, FCP7 XML and FCPXML writer, but everything it writes points at the video you imported. On this job that is somebody else's reference, so the timeline you get is a map of their cuts, not a path to your own media. No AAF, and no timeline format reads back in. None of that is a criticism of those tools or an argument that you should not use them. It is the boundary: the reference becomes rows here, and the rows go there. ## When the PDF is enough, and when you need the spreadsheet Use [the PDF](https://storyfolder.com/help/exporting/pdf) when the thing you owe someone is a visual document to look at. It prints two cards to a page on US Letter, portrait, with the shot number, start timecode, duration and frame range on each card and your filled fields underneath. It has no cover page, no header, no footer and no layout controls, so it is a shot document rather than a designed treatment. Use the spreadsheet when the rows have to move: into a producer's own sheet, into a production system, into a tracker somebody else owns. That is the one that is on Pro. ## FAQ **Does one export create both an Excel file and a CSV?** Yes. A single Spreadsheet / Shot List export writes `Shot List.xlsx` and `Shot List.csv` into the same folder. **Is there a Shot Number column?** No. The columns are the optional `Frame` and `Filename`, your chosen note fields, then `Start Timecode`, `End Timecode`, `Duration Timecode`, `First Frame`, `Last Frame` and `End Time`. **Can the Excel file contain thumbnails?** Yes, if you turn on the Images output in the same export. The XLSX then embeds each shot's frame at 200 px wide. **Does the CSV use source timecode?** No. Every time value is elapsed from the start of the imported file, formatted `HH:MM:SS,mmm`. **Can StoryFolder export an EDL or FCPXML?** Yes. The Editorial output writes `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` from the shots you kept, in board order, plus a rendered `Selects.mp4` selects reel. EDL and FCP7 XML open in Premiere, Resolve and Avid; FCPXML opens in Final Cut Pro and Resolve. Two limits stay: there is no AAF and nothing is imported back in, and every event references the one file you imported — here the reference video — so it is a map of that cut rather than a timeline against your own rushes. Editorial is Pro; the reel is on every plan. **What is the shortest shot automatic detection will find?** Ten frames, which is about 0.42 seconds at 24 fps. A manual split has no such floor, so faster cutting can be added by hand. **Which file formats can I import?** MKV, AVI, MP4, MTS, WebM and MOV, plus a public YouTube or Vimeo URL. --- # What software breaks a video into individual shots with timings URL: https://storyfolder.com/blog/what-software-breaks-a-video-into-individual-shots-with-timings Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 9 min Shot detection finds where one shot ends and the next begins and gives you an ordered segment per cut with start, end, duration and a frame. Which software does it from a finished video, and where each one stops. *Last updated: 2 September 2026.* Shot detection does this. You hand a tool the finished video, it finds the frames where one shot ends and the next begins, and you get one ordered segment per boundary with a start, an end, a duration and a representative frame. StoryFolder does it on macOS and Windows from [a local file](https://storyfolder.com/help/importing/from-file) or [a public YouTube or Vimeo URL](https://storyfolder.com/help/importing/from-url), and gives you elapsed timecodes plus the exact first and last frame number of every shot, which you can then correct by hand where the detector was wrong. Detection is a first pass, and the design assumes you will fix it. Hard cuts are what it finds reliably. A dissolve spreads its change across many frames and slips under the threshold, the automatic minimum shot length is ten frames, and a cut between two similar-looking shots can pass unnoticed. That is why there is a sensitivity slider, a Split tool and a Join tool, and why correcting the board is a normal part of the job rather than a sign something went wrong. ## What does "break a video into shots" mean here? Editorial boundaries. The frames where the picture cuts, in the video you already have. Three other things get returned by the same search and none of them is this: What you might mean What it does Not this because Splitting a video Cuts a file into equal chunks, or at times you type It knows nothing about where the edits are Scene or chapter segmentation Groups a long video into topics or chapters A scene is many shots; you want the shots Script-to-shot generation Proposes shots from written text The footage exists already; nothing needs proposing One thing to settle up front, because it changes what you can do with the output. StoryFolder's times are elapsed from the first frame of the file you gave it, written `HH:MM:SS,mmm`. It does not read source timecode off the media, so there is no reel and no start-of-tape offset. If your master starts at `01:00:00:00`, that hour is yours to add. ## How does StoryFolder detect a cut? It decodes every frame of the video, turns each one into a compact fingerprint of the picture, compares each frame's fingerprint with the previous frame's, and marks a cut wherever the difference clears a threshold. The sensitivity slider is what moves that threshold. Two extra rules apply: boundaries have to be at least ten frames apart, and the run of cuts is then walked in order to produce the shots. Assistants that sample the video instead of decoding it work from far less. [Google's documentation for Gemini's video understanding](https://ai.google.dev/gemini-api/docs/video-understanding) says the API samples video at one frame per second, so a two-second shot contributes about two frames to whatever it concludes. Nothing is sampled here, so a shot that is on screen for a third of a second is still compared against its neighbours like any other. The comparison looks at the picture. That has consequences worth knowing before you rely on it: - **It works on a rendered file with no project file, no relinking and no timeline.** The reference a client sent you is a finished video, and that is the only thing it needs. - **It is blind to what the shot is of.** The fingerprint records that the picture changed. Nothing in the comparison understands the content. - **Audio plays no part.** Detection runs before there is any transcript, so a hard music change or a sound cue will never suggest a boundary. - **The exposure ramp problem is handled.** A gradual brightness shift across a shot does not by itself register as a change, so a slow lighting move is not mistaken for an edit. There is a second, quieter pass. Inside each shot it has already made, the detector runs again at a higher sensitivity and keeps the hits that fall in the middle of the shot rather than right at either end. Those become the suggested cuts you see later, drawn on the cards once the Split tool is active. ## What timings and shot data do you get? Per shot: the first and last frame number, the start time, the end time, the duration, and [the frame the thumbnail is taken from](https://storyfolder.com/help/editing/thumbnails). The card in the app shows the useful ones together, in the shape `#12 · 00:34:07 · 2.5s · 818–878`, so the shot number, where it starts, how long it runs and its frame range are readable without opening anything. Across the whole video, the [Statistics view](https://storyfolder.com/help/analyze/metrics) gives five numbers: Total shots, Average, Median, Longest and Shortest, with the durations to one decimal place and a properly interpolated median on an even shot count. Those are the numbers behind questions like how many shots are in a 30-second spot and what the average shot length in it is, computed on the reference in front of you instead of quoted from somebody's blog post. They describe whatever shots are currently in scope, so a filtered board gives you statistics for the filtered set. In the exported spreadsheet the timing columns are `Start Timecode`, `End Timecode`, `Duration Timecode`, `First Frame`, `Last Frame` and `End Time`. Use the frame numbers when it matters. The timecodes are elapsed and go to the millisecond, which is fine for a document somebody reads, but `First Frame` and `Last Frame` are integers and they are exact. There is no SMPTE frames field, no drop-frame handling and no reel, so a frame number is the unambiguous way to tell somebody which frame you mean. ## How do sensitivity, suggested cuts, Split and Join work? In that order, which is also cheapest to most expensive. Fix the board globally first, then take the detector's own guesses, then do the rest by hand. **The sensitivity slider** runs 1 to 9 and starts at 5, captioned "Less shots" at one end and "More shots" at the other. It re-cuts the entire board, and it commits when you let go rather than while you drag, so a board of a few hundred shots does not re-run nine times on the way past. Reach for it when the whole video is wrong in one direction. A montage-heavy commercial that came back with half the cards it should have wants more shots; a handheld interview that fragmented into forty cards wants fewer. See [adjusting detection sensitivity](https://storyfolder.com/help/editing/sensitivity). **Suggested cuts** are those second-pass guesses, drawn as amber ticks across a card's thumbnail. They only render while the Split tool is active, which trips people up: switch the tool on and the ticks appear. Each one takes a single click and splits at the frame the detector picked. **Split and Join** handle everything else. Click a thumbnail at the point a cut was missed to split the card there. Hover a card's edge and click to fuse it with its neighbour when the detector invented a boundary that is not real. Manual splits are not subject to the ten-frame minimum, so this is how a three-frame flash cut gets onto the board at all. See [splitting and joining shots](https://storyfolder.com/help/editing/split-merge). Correcting a board is a scrolling job, not a watching job. You are looking at a wall of thumbnails for two adjacent cards that show the same picture, which means a false cut, or one card whose thumbnail does not match what the next one starts on, which usually means a missed one. That scales with the number of shots rather than with the runtime, which is the only reason it is practical on anything longer than an ad. Notes are stored against frame numbers rather than against shots, which is what makes re-cutting non-destructive to the writing you have already done. Joining two annotated cards carries both sets of notes onto the merged one. Worth verifying once on your own board before you rely on it in front of a client. ## Which cuts will automatic detection miss or misread? Five kinds, all of them predictable from how the comparison works. **Dissolves and fades.** A twenty-frame dissolve changes the picture by a twentieth of the way per frame, and no single one of those steps is a big enough jump to register. There is no separate handling for gradual transitions, so a reference full of them needs a manual pass. This is the big one for commercials and title sequences. **Anything cut faster than ten frames.** That is about 0.42 seconds at 24 fps, 0.40 at 25 and 0.33 at 30. The automatic pass will not place two boundaries closer together than that, and there is no control to change it. Rapid-fire montages come back under-counted, and the fix is the Split tool, which has no such floor. **Cuts between shots that look alike.** A shot/reverse across a table in one room, or two angles on the same wide landscape, can differ by less than the threshold. The picture barely changed, so nothing fired. Two more follow from the same mechanism, though nothing in the code addresses them by name. **Flashes, strobes and camera pops.** These do the opposite. One frame differs enormously from its neighbour inside a single continuous take, and you get a boundary where there is no edit. Same for a hard whip inside a take. **Heavy motion blur.** Frames during a fast pan are smeared into each other, which can suppress a genuine cut in the middle of the move. None of these is a failure rate. They are consequences of comparing consecutive frames, and they are stable enough that after one video you will know which of them your kind of footage produces. Footage built on long static takes produces few errors of any kind; a montage cut on dissolves produces most of them. ## How do you export the corrected timings? Once the boundaries are right, run the [Spreadsheet / Shot List export](https://storyfolder.com/help/exporting/overview) and you get `Shot List.xlsx` and `Shot List.csv` written together, one row per shot. Turn on the Images output in the same run and the XLSX gains an embedded thumbnail per row and a `Filename` column pointing at the PNG. The spreadsheet output is on the Pro plan. There is no shot-number column in it, and there is no import path back, so the file is a deliverable rather than something you round-trip. ## FAQ **What is the default detection sensitivity?** It starts at 5 on a slider that runs from 1 to 9, labelled "Less shots" and "More shots". **Does StoryFolder analyse every frame?** Yes. Nothing is sampled, so a shot that lasts a third of a second is compared like any other. **What is the shortest shot automatic detection will find?** Ten frames, which is about 0.42 seconds at 24 fps. **Can I create a shot shorter than ten frames?** Yes, by splitting one by hand. Manual splits are not subject to the automatic minimum. **Does it detect dissolves and fades?** Not reliably. There is no separate handling for gradual transitions, so they need a manual pass with the Split tool. **Why can I not see the suggested-cut ticks?** They only render while the Split tool is active. Switch the tool on and the amber ticks appear on the cards. **Which timing values are exact?** `First Frame` and `Last Frame`, which are integer frame numbers. The timecodes are elapsed from the start of the file, formatted `HH:MM:SS,mmm`. **Does changing the sensitivity delete my notes?** Notes are keyed to frame numbers rather than to shots, which is what makes a re-cut non-destructive to them. Test it once on your own board before relying on it. --- # Turning a client's idea into something you can quote URL: https://storyfolder.com/blog/turning-a-clients-idea-into-something-you-can-quote Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 9 min A client approves a feeling in four seconds. Turning their idea into a list of specific shots with a decision against each one, so the scope is written down before a number goes on it. *Last updated: 2 September 2026.* A client can approve a feeling in about four seconds. What they have not approved, and usually have not seen, is the set of production choices sitting inside it. Before you can put a number on the job you need those choices written down one by one, with a decision against each: keep it, adapt it, get a specialist to look at it, or drop it. The way to get there is to turn the idea into a list of specific shots, write the production question against each row, take the list back to the client, and only then move the agreed rows into whatever you actually price work in. StoryFolder is useful for exactly one part of that. It turns the reference into numbered rows with real durations and gives you [somewhere to record the decisions](https://storyfolder.com/help/notes/adding-notes), so a 59-second reel becomes 52 things to be agreed rather than one thing to be argued about. It holds no rates, crew model, shoot schedule, or arithmetic connecting a field to money. The pricing happens in your sheet, the way it always did. ## What must be true before a client's idea is ready to quote? Six things, and none of them come out of the reference on their own: the outcome the client actually wants, which parts of the reference are non-negotiable, what may be substituted, the deliverables, who signs off, and every production assumption you have made that would change the number if it turned out to be wrong. The gap between a reference and a scope is where most of the bad jobs start. On [r/advertising in February 2026](https://www.reddit.com/r/advertising/comments/1raiv4t/) somebody put it plainly: "We all have that one client. They send a Super Bowl commercial as a reference but have a budget that barely covers the catering for a real shoot." A commenter on [r/cinematography a year earlier](https://www.reddit.com/r/cinematography/comments/1iz01dq/) reached for the same idea with a different picture: "clients see a Ferrari and want a Ferrari on a 2nd hand Toyota Corolla budget. Unless these guys have the budget you might have to manage their expectations here." Managing expectations is the part that gets waved at and never described. Here is a version of it that works, because it moves the conversation off the whole video and onto individual shots. Observable in the reference Needs a human answer How many shots there are, and how long each runs Whether that cutting pace is the point That a shot is on a moving camera Whether the move is the point or the energy is That there are eleven people in frame Whether that is casting, extras, or a location that came with a crowd That there is a graphic over shot four Whether that is their copy or a placeholder That the whole thing is graded warm Whether that is a look you build or a colourist you book Everything in the left column is a fact you can point at. Everything in the right column is a decision, and a decision needs an owner and a date. ## How do you break the idea into decisions the client can answer? One row per shot, and four things recorded against each: what the client is responding to, what you think it would take, how confident you are in that guess, and who has to answer. That last pair is the part people skip, and it is what stops a scope document turning into a wish list. A worked row looks like this. Shot / timing What the client is responding to Likely requirement Confidence Decision Owner 07 · 1.4s The push in on the face Slider or dolly, plus a second setup Visible fact Keep Producer 14 · 2.1s The crowd behind her Extras, or a location that supplies them Inference Needs discussion Client 22 · 0.9s The reflection trick Practical mirror, or a comp in post Specialist check Needs specialist validation VFX 31 · 3.6s The dance Choreographer, dancers, rehearsal space, wardrobe Inference Out of scope Client 38 · 1.2s The words flying in Motion design, and their final copy Visible fact Adapt Post Nothing in that table is computed. The shot number and the duration come out of the reference; the other four columns are you doing the job. StoryFolder's contribution is that the row exists, with the frame beside it, so "the reflection trick" has a coordinate and cannot quietly become three shots later on. For the `Decision` column, use a controlled list rather than free text, because free text is how you end up with four spellings of the same status on a 52-row board. Create a [Dropdown](https://storyfolder.com/help/notes/field-types) with the four values, which can only ever hold one of its own options, and write it across a multi-selection in one go; the `Tags` field that ships with every board can carry the same four labels, one shot at a time. See [creating your own fields](https://storyfolder.com/help/notes/custom-fields) and [applying a value to several shots](https://storyfolder.com/help/notes/multi-shot). The `Confidence` column is the one that earns its keep in the meeting. A client will accept "I am not promising this until our VFX supervisor has watched it" far more easily than they will accept a price that quietly includes a contingency for it. Marking the guess as a guess is what buys you the specialist call. ## How do you expose the hidden production behind a simple reference? Interrogate every shot down the same list of departments, in the same order, until it stops producing surprises: location, talent and performance, art and wardrobe, camera and movement, lighting, sound, post and VFX, and transitions. The reason to do it as a fixed list rather than by instinct is that the expensive things hide behind the shots that look easy. Where you land will be one of three states, and they need to stay separate: State What it means What you do with it Visible You can see it in the frame Write it down and move on Inferred You are reading it off experience, and you could be wrong Flag it, and say so to the client Verify It changes the number and you cannot settle it yourself Name the person who settles it before you quote The counter-move that turns this into a productive conversation rather than a list of refusals comes from [an r/cinematography thread on 15 October 2023](https://www.reddit.com/r/cinematography/comments/17879us/), where someone described how they handle a client whose references outrun their money: "show them comps you feel you can recreate on their budget and see if they bite." Their actual wording to the client is worth stealing: "Love these shots! Here are some more comps that we can achieve on your budget that capture the spirit of these exteriors in the studio, what do you think?" That reply only works if you can be specific about which shots you are talking about. "Some of the shots" is a negotiation. "Shots 7, 14 and 22, and here is what I would do instead for each of them" is a document. One way to front-load the whole thing came up on the same thread, where a commenter described sending "a form for someone like this to fill out. Full of questions that if they can't answer then they don't have any clue what they want," with the reasoning underneath it: "If they don't know what they are asking for it's impossible for you to deliver it." A shot-by-shot pass over their own reference is the same filter, run against something they chose themselves, which is usually a shorter argument. ## How do you agree what to keep, adapt, or drop? Present alternatives per shot, not one verdict on the whole video. A client who hears "that is out of budget" hears no. A client who hears "shots 4 through 9 are fine as they are, 14 works if we shoot it here instead, and 31 is the one we should talk about" hears a plan with one open question in it. On [an r/cinematography thread from 4 December 2021](https://www.reddit.com/r/cinematography/comments/r8o0ll/), where a client wanted the sinking scene from *Get Out* on a small budget, a commenter's advice covers almost every adapt: "Keep the shots tight, hide as much as possible, and simplify." Most of the time the thing the client responded to survives that intact, because what they responded to was the beat rather than the budget behind it. [Send the marked-up board](https://storyfolder.com/help/sharing/publish) and then talk over it. The published board is [view-only](https://storyfolder.com/help/sharing/viewer-experience), so the approvals come back by email or on the call rather than in the page, and you record them yourself. That is worth knowing before you promise a client they can tick boxes in the link you sent. ## What goes into the quote after scope is agreed? The agreed rows, and nothing else from here. Copy them into your own estimating sheet or production system, where rates, quantities, day counts, contingency and tax live, and price them there. StoryFolder will tell you how many shots there are, and the [average, median, longest and shortest duration](https://storyfolder.com/help/analyze/metrics). On Pro it will also [chart how your marked values are distributed](https://storyfolder.com/help/analyze/charts), so the number of shots carrying `Needs specialist validation` is something you read rather than something you count by hand. Those counts are the input to your estimate. They are not the estimate: nothing on the StoryFolder side knows what a crane day costs, how many days the shoot runs, or which of these shots share a setup, and there is no estimate document in the product for it to write that into. The scope document is worth showing the client because it contains no pricing: they can argue about the work without arguing about the number, and you can change the number later without reopening the work. ## When should you charge for discovery? At the point where you are producing something they could hand to another vendor. Before that, you are qualifying the job. After that, you are doing the job. Nobody agrees on where the line sits. On [an r/Filmmakers thread from 2015](https://www.reddit.com/r/Filmmakers/comments/2wcw5l/), one poster described spending "an hour and a half discussing the project and starting to steer them in the right direction" and treated it as a cost of sale: "This is their freebee. I don't normally consult for free, but in order to land a gig sometimes you have to throw them a bone." Someone else on the same thread was less accommodating: "This ain't your reel, and if they wanted Spielberg they would have paid Spielberg." Both are defensible and it is your call. The shot-by-shot breakdown does make the call easier to explain, because it is a deliverable with edges. An hour on the phone is hard to charge for. A document listing every shot in their reference, what each would take, and what you recommend instead, is not. ## FAQ **What are the four useful scope statuses?** Keep, Adapt, Needs specialist validation, and Out of scope. They are an editorial framework, not a StoryFolder feature; you create them as values in a field. **Can I apply one status to several shots at once?** Yes, with a Dropdown, written across a multi-selection from the inspector. The shipped Tags field edits one shot at a time. **Can StoryFolder work out a price from a 52-shot reference?** No. It reports the shots, their durations and the values you typed. There are no rates, no day counts and no calculation from a field to a cost anywhere in it. **Who should validate a VFX-heavy reference shot?** A VFX producer or supervisor. StoryFolder stores their answer against the shot; it does not produce one. **Can the exported spreadsheet be the estimate?** It can supply the rows your estimate is built from. The export contains no pricing, no formulas and no way back in. **Can the client approve shots inside the published link?** No. The published board is view-only, so approvals come back through your normal channel and you record them on the board yourself. --- # Turning a stringout into a searchable shot log URL: https://storyfolder.com/blog/turn-stringout-into-searchable-shot-log Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 10 min Five weeks after the selects pass, someone wants the moment the site manager laughs at his own joke. How to turn a stringout into a searchable shot log you can find your way back into. *Last updated: 2 September 2026.* Five weeks after you finished the selects pass, someone asks for the bit where the site manager laughs at his own joke. You know it exists. You know roughly which week it was shot. The stringout is a 90-minute file on a drive and the only way in is the playhead. Import that file into StoryFolder and it stops being one video. It becomes a few hundred shots, each with a thumbnail, a frame range and its own metadata, and each carrying whatever the transcript says was spoken inside it. Type "site manager" or a phrase you half-remember, and the board narrows to the shots that match; the same box searches your whole library, so the answer survives moving on to the next project. When you need the log outside the app, the spreadsheet export writes both a CSV and an XLSX. It will get you back into the edit, within one limit worth stating up front. The Editorial output writes `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` from the shots you kept, cut in board order, and the Selects reel output renders them as one H.264 file — but every event references the stringout you imported, not the rushes it was cut from, and there is no AAF and no timeline import. The timings in the sheet are elapsed from the first frame of that file rather than the source's own timecode; the Editorial files are the exception and carry real `HH:MM:SS:FF`. So this finds the shot again, hands someone a readable log, and returns your selection to a timeline. Conforming against the camera originals is still the NLE's job. The spreadsheet export is Pro; custom fields, the search, the transcript and the heart are not. Detecting the shots, correcting the boundaries and publishing the result are covered in full in the pillar article on turning a selects reel into something a client can browse. This page is about what happens after that: what to write down, what the search will actually match, and exactly what lands in the sheet. ## What does "stringout" mean in this workflow? It means whatever the person who handed you the file meant, and there is no single answer. Frame.io's Workflow Guide defines it broadly, as "any time in the post process where you put together a large selection of footage in order to see it all at once and know what your options are". On a 2012 Creative COW thread about stringouts, Shane Ross described something much narrower: "sound bites strung out back to back, with no footage covering it, no music, no pacing… Also called a RADIO CUT." Both are in use. Before you log the file, work out which one you have, because it changes what is worth writing down: What you were given What it contains What to log Everything usable, in shooting order Broad footage pool Location, subject, shot type Dialogue bites only Interview audio, no coverage Speaker, topic, the transcript Dailies for review A day's selected material Day, scene, take, usable or not A themed documentary breakdown Grouped by character, event or theme The theme it was grouped by One warning about vocabulary. "Scrub" is the verb for dragging a playhead. One StoryFolder customer names their review-everything pass `SCRUB v1` in board titles, which is their own label rather than an industry term, and using it with a new client will get you a blank look. The sibling article on stringout, selects, assembly and radio cut has the sourced definitions and where practitioners disagree. ## What is the minimum metadata worth adding? The heart, and one field whose values you will genuinely type into a search box later. That is a deliberately small answer, because the argument about how much to log is real and both sides are credible. On the Creative COW thread about metadata in post, Mark Raudonis put one position bluntly: "Logging metadata is NOT editing!" Tero Ahlfors, in the same discussion, said "I rarely add any metadata in my projects." Against them sits the position that organising is where you find the story, and the memorable version of the counter-argument from the same research is one practitioner's stated ceiling: pick one metadata field, nothing more complicated than "broll, school, exterior wide". What paying customers actually do supports the small answer. In a September 2026 reading of 813 boards from 295 paying accounts, the heaviest user of custom fields had filled `Client`, `Job#` and `Title` 3,852 times each. Three fields. Somebody else added a field named `Find in Folder`, which is a person building the exact bridge this article is about. And an account with 53 boards of archive footage has zero notes on any of them: they wanted the visual index and stopped there, which is a legitimate outcome. The free plan gives you the heart, a `Tags` field, and your own fields — a `Location` text field, a `Usable?` checkbox, a 1–5 star rating. It also seeds a board with twelve text fields named `Key Takeaways`, `Interpretation`, `Symbolism` and so on, which are shipped defaults written for someone studying a film rather than logging a shoot; delete the ones you will not use. The spreadsheet export is Pro. Two mechanics worth knowing before you start typing. Rating, dropdown, checkbox and text fields all write across a multi-selection in one gesture, and that counts as one entry in version history, so setting forty shots to `Location: Loading Bay` is one action you can undo. Tags refuse to edit under a multi-selection; the inspector replaces the editor with "Tags edit one shot at a time". If your one field is going to be a tag field, that is the friction you are signing up for. ## What can the search box actually find? **Typing into the search box matches your text, dropdown, tag and number field values as case-insensitive substrings, plus every transcript segment that overlaps a shot's time range. Rating and checkbox fields hold no text and are reachable only through a filter chip. There is no boolean syntax, no wildcard, and no way to sort the results.** A number matches on its printed text, so typing `4` also returns 42 and 400. So the search is only as good as what you typed, plus everything anybody said on camera. That second half is doing a lot of work: the transcript is generated on device and is not paywalled, which means a board with no metadata at all becomes searchable by dialogue as soon as transcription finishes, and that starts by itself once the import completes. Three behaviours to hold in your head: - **A typed query overrides the favourites-only and show-hidden toggles.** It does not stack with them. The reasoning is defensible, since a search that also honoured show-hidden would silently drop a hidden shot you literally searched for, but it means "favourites only, then search" is not a thing you can express that way. - **Advanced filter chips apply on top of whatever the query returned.** The chips read in the field's own words: Rating is at least 4, Tags has any of drone, exterior, Location is not empty. Rating and number fields take greater-than, less-than and between; dropdown and tag take is, is any of, is none of; a checkbox takes only is and is not, because unticked is a value rather than an absence. - **There is no sort.** Shots stay in timeline order whatever you do; filter to Rating is at least 4 and read the survivors in cut order. The search runs across your whole library, not one project. It evaluates every shot of every video you have imported, groups the hits by the video they came from, and ranks them so filter matches come first, then metadata matches, then transcript matches. That is the answer to the durability question u/cI_-__-_Io posed on r/editors in June 2026: "Naming helps when you already know what the shot is called. It doesn't help as much when you only remember 'I saw a shot that felt like X somewhere in this pile'." The same poster asked whether the index survives moving projects. StoryFolder's index is a local database keyed to frame numbers rather than a sidecar file living next to the media, so it survives you closing the project and opening a different one. It lives on that machine, so it does not survive a migration you have not planned for. A search you run often can be saved as a Quick Filter, which stores what you typed, the filter stack and the view settings together, and puts all three back when you return to it. Collections gather shots from several projects into one named bin, which is useful for browsing and is a dead end for output: a collection cannot be exported or shared. ## How do visual metadata and transcript search complement each other? Dialogue search recovers what was said. Tags, text and dropdowns recover what was seen. Most footage libraries need both, and the split is more lopsided than transcript-first tools imply. The open-source `arkiv` project ([github.com/vulture-s/arkiv](https://github.com/vulture-s/arkiv), read 2 September 2026) indexed a real production library of 1,506 clips, and its README records 1,161 of them as dialogue-free b-roll. That leaves 345 clips with anything spoken in them, so a transcript-only search reaches 23% of that library. Editors describe the same gap from the other direction: contributors on r/editors have reported finding far more in their selects than the transcription caught, and pointed out that a transcript cannot tell you where a voice cracked with emotion. StoryFolder joins both at the shot rather than keeping the transcript as a separate document, so one query hits your labels and the dialogue in the same pass and tells you which one matched. The dialogue half degrades in the ways Whisper always degrades: heavy accents, people talking over each other, noisy location sound and specialist jargon. Words the model was unsure about are underlined rather than given a false confidence score. A music-only reel comes back as "No speech found", which is a result rather than an error. ## What does the exported shot log contain? One export writes both `Shot List.csv` and `Shot List.xlsx` into the same folder. You do not open one and re-save it as the other. The columns, in order: Column Value Present when `Frame` the thumbnail, embedded in the XLSX cell only with Images also enabled `Filename` `Shot-1.png`, `Shot-2.png`, … only with Images also enabled *your field titles* one column per shot-level field you switched on for the fields you chose `Start Timecode` `HH:MM:SS,mmm`, elapsed always `End Timecode` `HH:MM:SS,mmm`, elapsed always `Duration Timecode` `HH:MM:SS,mmm` of the shot's length always `First Frame` integer always `Last Frame` integer always `End Time` seconds as a float always There is no shot number column and no favourited column, whatever the help page says; if you need a shot number in the sheet, the row order is the shot order. Video-level fields never appear, so you will not get a column that is empty on every row. Read the timecode columns as elapsed time from the first frame of the file you imported. A master that starts at `01:00:00:00` exports as `00:00:00,000`. There is no reel, no drop-frame flag and no SMPTE frames field, so nothing here is safe for an automatic match back. Work from the `First Frame` and `Last Frame` integers, which are exact. The transcript export is the other artefact, and it is the underrated one. Its CSV carries `start, end, shot, speaker, text`: every line of dialogue with the number of the shot it was spoken in, split per word where a sentence straddles a cut. That is a dialogue selects log you can sort and filter in Sheets, and it is free. ## What the shot log will not preserve No AAF and no OTIO, nothing read back in, and no camera-original provenance — the EDL, FCP7 XML and FCPXML it writes all point at the file you imported, and carry a source start timecode only when that file itself has one. No record of which drive the original media is on, and no index of anything you have not imported. For cataloguing drives, NeoFinder and DiskCatalogMaker are the tools. Cross-project collections cannot be exported or shared. And StoryFolder does not edit video by editing text; that is Descript's and Reduct's product, not this one. ## FAQ **Does the search box match speaker names?** No. It matches transcript text and your text, dropdown, tag and number field values. A speaker label is not part of that pass. **Can I tag 40 selected shots at once?** No. Tags edit one shot at a time. Rating, dropdown, checkbox and text fields all bulk-edit across a selection in one undoable action. **Will changing detection sensitivity erase my notes?** No. Re-detection preserves splits, joins and every metadata value, because values are keyed to frame numbers rather than stored inside the shot list. **Can I sort a board by star rating?** No. Filter to `Rating is at least 4` and read the results in timeline order; there is no sort anywhere in the board. **Is the transcript a paid feature?** No. On-device transcription and the SRT, VTT, TXT, CSV and Fountain exports are free, and so are custom fields. The spreadsheet export is Pro. **Will a long stringout fit on the free plan?** A short one. A free board caps at 50 shots and the cap applies before any filtering, so a short reel or a single scene's selects fits; a long stringout needs Pro. **Can a cross-project collection become a shared board?** No. Collections are for browsing shots from several projects together. They cannot be exported or published. ## Related help pages - [Import an existing stringout](https://storyfolder.com/help/importing/from-file) - [Search shot metadata and transcript](https://storyfolder.com/help/editing/search) - [Heart the keeper shots](https://storyfolder.com/help/editing/favorites) - [Select a range of shots](https://storyfolder.com/help/editing/selecting) - [Create a minimal shot schema](https://storyfolder.com/help/notes/custom-fields) - [Export the shot list as CSV and XLSX](https://storyfolder.com/help/exporting/spreadsheet) --- # Stringout, selects, assembly, radio cut — what each actually means URL: https://storyfolder.com/blog/stringout-vs-selects-assembly-radio-cut Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 8 min Stringout, selects, assembly and radio cut mean different things to different editors, and vendor pages muddle them further. Four sourced definitions, where they disagree, and which word to use on Friday. *Last updated: 2 September 2026.* A producer asks for "a stringout by Friday". You build one: every usable take from the shoot, in shooting order, nothing trimmed. Friday comes and it turns out they meant the interview bites only, cut down, with no b-roll on top. Somebody else on the same job calls that a radio cut, and the vendor page you looked at last night calls the whole thing an assembly. None of you is wrong. These terms describe real, distinct working artefacts, and their names are not standardised across genres, shops or countries. Each has a sourced definition below, and each has a point where practitioners openly disagree. The move when the words collide is to establish four things: what footage goes in, what rule orders it, how tightly it is trimmed, and who sees it next. ## What is a stringout? A working sequence that puts a broad selection of footage in one place so the team can see what it has. It can be everything usable from a shoot, one day's material, or dialogue bites only. The word names the stage of post you are at, and it tells you very little about what will be in the file. Frame.io's Workflow Guide gives the umbrella definition: a stringout is "any time in the post process where you put together a large selection of footage in order to see it all at once and know what your options are". Their metaphor is the one that sticks: the only time you see everything in a wardrobe is on laundry day, when it is all hung on the line one item at a time with space between. That guide names five variants, all of them stringouts: narrative, dialogue, documentary, VFX and alts. Which is already a warning that the word covers a family rather than one deliverable. Practitioners narrow it much further, and they narrow it differently from each other. On a 2012 Creative COW thread about stringouts, several working editors gave definitions that do not line up. Shane Ross described his: > "sound bites strung out back to back, with no footage covering it, no music, no pacing… Also called a RADIO CUT." Set that beside Frame.io's definition and the two look contradictory. They are not. One is a category and the other is one member of it. Ross is naming a specific dialogue-only artefact; Frame.io is naming the family it belongs to. Somebody in commercial post using `PROJECT_STRINGOUT` for every usable take of a two-day shoot is using the same word for a much broader thing. The practical consequence: a dialogue stringout of a four-hour interview day and a stringout of all usable footage from that day are different lengths, contain different material and are useful to different people. ## What are selects? The material somebody decided is worth carrying forward. Selects carry editorial judgement in a way a stringout does not. In *Editing the Documentary*, Steve Shlisky puts the range of forms plainly: "Good clips trimmed, clips placed in folders, or interviews shortened into individual comments are called 'selects.'" So selects are not necessarily a sequence. They can be a bin, a folder, a set of subclips or a timeline, and the common factor is that a person looked at the pool and picked. A "selects reel" is one packaging of that: the chosen material laid end to end as a single linear piece, usually so it can be watched or sent. Worth separating the two ideas, because the reel is a delivery format and the selects are the decision. You can have selects with no reel, and building the reel adds no information. ## What is an assembly cut? The first pass that imposes a story order. More shaped than a watch-everything stringout, and much rougher than a rough cut. Karen Everett, who teaches documentary editing, calls the assembly "a quick and dirty first edit" and argues it should not exceed 140% of the intended final length. Take that 140% as her teaching rather than an industry rule. The reason behind it is the useful part, because she also says that cuts running four or five hours are "more accurately termed 'String Outs'." The distinction she is drawing is about intent. If the sequence is still showing you your options, it is a stringout regardless of what the file is called. Once it is attempting the story, it is an assembly. Which is why "assembly" and "stringout" get swapped so freely. The same file can be both at different points in the week. ## What is a radio cut or radio edit? An audio-first story pass. The dialogue is laid out and ordered before any picture coverage, music or pacing goes on top. Vashi Nedomansky, ACE, describes the approach as telling the story by laying out all the audio first. Oliver Peters offers the test that tells you whether the pass has worked: does the story work if you closed your eyes and only listened? The overlap with the stringout is where confusion starts. Shane Ross uses "radio cut" as another name for his dialogue-stringout practice, so in that shop a radio cut is an early collection artefact. Elsewhere "radio edit" describes a later, deliberately shaped audio pass that has already made story decisions. Same phrase, two positions in the schedule. Ask which one is meant. ## Where do dailies stringouts and paper edits fit? **A dailies stringout is the one that leaves the building.** parker.mov describes it as "exported for the director, producers, and studio to review progress". The FSU Film Handbook draws the line cleanly: scene stringouts are internal and are not exported, while dailies stringouts are exported for production review. That distinction is worth more than it looks. The export-for-outsiders artefact already has a name and a tradition. If you are being asked to show material to someone outside post, you are being asked for a dailies stringout, whatever the email calls it, and it should be cut down accordingly. **A paper edit** is a text plan for arranging material before you touch a timeline: transcript excerpts arranged into an order, with source references beside them. The oldest verified source for the method is Peter Thompson's, released as freeware in 1989 and still online. A paper edit is written; a radio cut is audible. They are steps toward the same thing and they are not the same artefact, so do not use the terms interchangeably. ### Where a stringout can go next Once the artefact is defined, the file is just a long video, and a long video can be [imported and split back into individually labelled shots](https://storyfolder.com/help/importing/from-file) — which is the subject of the sibling articles on turning a stringout into a searchable shot log and on presenting selects to someone outside the edit suite. Two constraints belong here rather than there, and both are narrower than they are usually stated. There *is* a path back into a timeline: the Editorial output writes `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` from the shots you kept, cut in board order, with a rendered H.264 selects reel available beside it — so a stringout you imported can come back out as a selects assembly. The limits are that there is no AAF, nothing is read back in, and every event references the file you imported: import a stringout and the timeline points at the stringout, not at the rushes it was cut from. The second constraint is the familiar one — a rendered file carries no camera-original filenames, reel or handles, and unless it happens to carry a start timecode of its own the timeline simply starts at `00:00:00:00`. ## How do the terms change by genre? Work Usual stringout unit Usual selects unit What comes next Who sees it Reality Multigroups, time-of-day timecode Story producer's paper cut Paper cut into a cut Story team Documentary No formalised unit on record Selects by day, theme or character Paper edit, then radio cut Often nobody, because the editor is working alone Commercial and corporate `PROJECT_STRINGOUT` `PROJECT_SELECTS` Client-facing selects Client or creative director Scripted post sits outside the table and is the most formalised of the four: an assistant editor builds the scene stringouts and the dailies stringouts, and production review gets the dailies stringout. The naming conventions in the last row are observed practice rather than a standard. Editors report `PROJECT_STRINGOUT` becoming `PROJECT_SELECTS`, `B_ROLL_STRINGOUT` becoming `B_ROLL_SELECTS`, and bins named `!Selects` and `!Soundups` with a leading exclamation mark so they sort to the top of the project panel. Adopt them if they help; do not assume the next shop uses them. ## What should you ask when someone requests a stringout? Four questions, and they take a minute: - **Which footage belongs in it?** Everything usable, one day, one subject, or dialogue only. - **What orders it?** Shooting order, scene order, character, theme, or the order you think plays best. - **How tightly is it trimmed?** Whole takes with heads and tails, or cut down to the usable part. - **Who opens it next, and where?** An editor in the same project, or somebody with no NLE and no drive. Two follow-ups decide the technical shape. Does the source filename and timecode need to travel with each moment, so the material can be found again? And is this artefact internal, or is it being exported for someone outside post? The second question is the FSU distinction, and answering it wrong is how a four-hour internal sequence ends up in a client's inbox. ## "Scrub" describes an action, not a deliverable There is no established artefact called a scrub. Scrubbing is dragging the playhead. One StoryFolder customer names their review-everything pass `SCRUB v1` in board titles, which is a sensible private label for a real stage of work and is not vocabulary anybody else will recognise. ## FAQ **Is a stringout the same thing as an assembly?** No. A stringout shows you your options; an assembly attempts a story order. Karen Everett treats a four-to-five-hour "assembly" as a stringout by another name. **Is a rough cut a stringout?** No. A rough cut has already made story and pacing decisions. A stringout is the pool those decisions get made from. **Are selects always a sequence?** No. Steve Shlisky's definition covers trimmed clips, clips in folders and shortened interviews as well as a timeline. **Is a radio cut the same as a paper edit?** No. A paper edit is a written plan; a radio cut is an audible sequence of the chosen audio. One usually precedes the other. **Do dailies and rushes mean different things?** They are the same material. "Rushes" is the usual UK word and "dailies" the usual US one. **Which stringout gets sent outside post?** The dailies stringout. The FSU Film Handbook records scene stringouts as internal and not exported. **Is "scrub" a stage of the edit?** No. It is the verb for dragging the playhead. Any use of it as a deliverable name is somebody's local convention. ## Sources - Frame.io Workflow Guide, stringouts: [https://workflow.frame.io/guide/stringouts](https://workflow.frame.io/guide/stringouts) - Creative COW, "stringouts" (2012): [https://creativecow.net/forums/thread/stringouts/](https://creativecow.net/forums/thread/stringouts/) - Steve Shlisky, *Editing the Documentary*, "Building Assemblies": [https://human.libretexts.org/Bookshelves/Theater_Film_and_Storytelling/Documentary_Culture/15:_Editing_the_Documentary/15.03:_Building_Assemblies](https://human.libretexts.org/Bookshelves/Theater_Film_and_Storytelling/Documentary_Culture/15:_Editing_the_Documentary/15.03:_Building_Assemblies) - Karen Everett, "The Power of the Assembly Cut": [https://newdocediting.com/power-of-the-assembly-cut/](https://newdocediting.com/power-of-the-assembly-cut/) - Vashi Nedomansky, ACE, "Film Editors: What Is a Radio Edit?": [https://vashivisuals.com/film-editors-what-is-a-radio-edit/](https://vashivisuals.com/film-editors-what-is-a-radio-edit/) - parker.mov, dailies stringout: [https://www.parker.mov/tools/editologica/dailies-stringout](https://www.parker.mov/tools/editologica/dailies-stringout) - FSU Film Handbook, assistant editing workflow: [https://fsufilmhandbook.com/assistant-editing-workflow/](https://fsufilmhandbook.com/assistant-editing-workflow/) - Peter Thompson, paper edit method (1989, freeware): [https://www.chicagomediaworks.com/2instructworks/3editing_doc/3docedit_scriptmpl/3editing_docpaperwordedit.html](https://www.chicagomediaworks.com/2instructworks/3editing_doc/3docedit_scriptmpl/3editing_docpaperwordedit.html) --- # How to show a producer or client your selects when they don't have the NLE open URL: https://storyfolder.com/blog/how-to-show-a-client-your-selects-without-the-nle-open Author: StoryFolder Published: 2026-09-02 Tags: Production, Tutorial Reading time: 11 min A producer wants to see the selects and doesn't have the NLE open. Instead of rendering a forty-minute reel, hand them a browsable, numbered shot grid on a link that needs no account. *Last updated: 2 September 2026.* You have watched down the footage, pulled the good moments into a selects sequence, and now a producer wants to see what you are working with. They do not have the NLE open. They are not coming to the suite. So you render the sequence to a file, upload it, and send a link to forty minutes of video that only makes sense if the person watches it end to end in the order you happened to lay it out. There is another way to hand that over: render the reel, import it into StoryFolder, heart the shots you are willing to show, and publish a link the client opens in a browser with no account. They get numbered thumbnails they can scroll, in three layouts, with the labels you created and the transcript you chose to include. They reply with the numbers. **StoryFolder is not a review-and-approval platform.** The published page has no comments, no ticks, no approvals, no search box, and no synced playback. For a board imported from a local `.mov` there is no video player on it at all. The picks come back in an email or a message, the way they did before. Keep the two things apart: **the hosted board is view-only, and the route back to your NLE is a separate export you run yourself.** Once the numbers are in and you have hearted those shots, the Editorial output writes them as a selects timeline — `Selects.edl`, `Selects.xml` (Final Cut Pro 7 XML) and `Selects.fcpxml` — and the Selects reel output renders them as one H.264 `Selects.mp4`. Neither is the shared page, and neither is fed by anything the client does on it. There is no AAF, and nothing reads back in. What changes on the board is the artefact the client is looking at while they decide. ## Why does a flat selects reel make the client do the editor's navigation work? A rendered reel keeps playback and throws away the index. Everything you knew about that footage while you were building the sequence lives in the NLE's bin and in your head: which take this is, who is speaking, where it was shot, whether it is cleared. None of it survives the render. What arrives at the other end is a picture and a clock. Frame.io's own documentation states the mechanism plainly: content metadata does not live with the file, it lives in an NLE or a media asset management system, and copying the media does not bring the logging along with it. That is why a client email comes back saying "the one with the guy in the hard hat, about eleven minutes in" instead of a shot number. They have no other handle to grab. The cost lands on the reviewer, and it scales with your runtime. To compare take three against take seven in a linear reel, they have to remember take three while they scrub to take seven, then scrub back. On a grid they look at both at once. Posting to r/editors in March 2022, u/adnelik described the current best answer: > "Above and beyond, sometimes the producer or creative director will want to see what we are working with, I'll upload the Selects timeline to Frame.io and they can comment on takes they like. With a linked timeline I can then easily grab what they prefer." That is the workflow working as well as it currently can, and it is still one flat video for a decision that is about many separate options. The edit suite used to absorb this problem, because you sat next to the person and drove. u/Martian_Martian32 put the state of that in r/documentaryfilmmaking in August 2026: "You could make the argument for the client to just come to the editing bay and watch it back but today, that's not realistic." Survives the render Discarded at the render Picture and audio, in order Shot boundaries as separate items Burn-ins you baked in Every label, keyword and note in the bin A running clock Any way to compare two options side by side Playback on anything Any handle other than elapsed time ## Why is selects review closer to photo proofing than video approval? Because the question is which options do we want, and photography has built a whole software category around that question. A wedding or commercial photographer finishes a shoot and sends a gallery. The client opens a few hundred frames in a browser, scrolls, compares, and marks the ones they want. ShootProof, Pixieset, PASS, Picflow and Pic-Time are all built around that single act. You would not deliver those frames as a slideshow video and ask the client to call out timestamps. Video review software answers a different question. Frame.io, Dropbox Replay, ftrack Review, Filestage and Wipster all assume a cut exists and ask what should change in it: a comment pinned to 00:04:17, a version compared against the previous one, an approval on the whole. That is the right shape for a rough cut going to a client for notes. It is the wrong shape for forty candidate moments that have not been assembled into anything yet. Selects review sits between the two, and video has no mature convention for it. The closest existing tools present *files*. Frame.io's Grid view and iconik's collections both give you tiles, and each tile is a whole asset. To show a client forty selects as forty browsable items in either of them, you first have to export forty discrete media files out of your sequence. The in-and-out ranges you already marked are not something they ingest. **This is where StoryFolder does the useful half and the honest limit matters.** Detecting shots from the rendered reel gives you the gallery: the clips in the string become individually thumbnailed, numbered, labelled items, and the client scrolls a wall of them instead of scrubbing a timeline. The defining act of a proofing gallery is the client ticking the frames they want, and **the published board has no tick.** We have built the gallery; the picking still happens in an email. Photo proofing gallery Video review platform Selects, in StoryFolder Unit of review One frame One cut, or one version One detected shot Navigation Scroll and compare Scrub the timeline Scroll and compare How the client responds Marks favourites in the gallery Comments pinned to a timestamp Replies with shot numbers, outside the page What comes back to you A selection list A comment thread A message you read and act on ## What should the client actually receive? A reduced set, numbered, with only the labels the decision needs. The reduction is the part editors skip, and it is the same judgement the assistant-editor tradition already encodes: the FSU Film Handbook draws the line between scene stringouts, which stay internal, and dailies stringouts, which are exported for production review. One of those is for you and one is for other people, and they are not the same cut. In a 2024 walkthrough of delivering documentary interview dailies, Joshua Kirk described taking each interview down to only the material he would be comfortable showing a client, with crew chatter and dead air removed before anything went out, and called the result a breakdown or a selects reel. So: cut the reel down before you render it, or heart only the client-safe shots after you import it. Then decide what travels with each thumbnail. A `Location`, a `Take`, a speaker name and a line of transcript is usually enough for someone to say "that one". Your internal `Usable?` checkbox and your notes about the audio problem in take four probably should not go, and the control for that is coarse: "Include notes & data" publishes every shot field that has a value, or none of them. There is no per-field tick list on a publish. Exports do honour a field selection, which is a different mechanism with different behaviour, so do not reason from one to the other. ## How does a stringout become a browsable shot grid? Drag the rendered file in. StoryFolder watches for the moment the picture changes and cuts the video into shots there. Hard cuts come out clean; a dissolve or a slow fade is the case it misses, which is what step one below is for. Every shot gets a thumbnail and a place in the grid, in timeline order. On a long reel that pass takes a while and it scales with duration, so start it and go and do something else. Then, in order: - **Check the boundaries.** Scroll the board rather than watching it. A wrong cut is visible as a thumbnail, and split or join it where you see one; changing detection sensitivity re-runs the pass and keeps every note, split and join you have already made, because your metadata is keyed to frame numbers rather than baked into the shot list. - **Heart the shots you will show.** This is a click on the card. The heart is free and it is the mechanism that matters, for a reason in step 5. - **Add the labels the client needs.** Create the fields you want and write values across a whole selection in one gesture. Custom fields are included on every plan; a new board ships a Tags field and twelve text fields written for someone studying a film, which is not this job. - **Narrow while you work.** Type into the board search and it matches your text, dropdown, tag and number values plus every transcript segment overlapping a shot, and filter chips stack on top in the field's own words: Rating is at least 4. One precedence rule catches people out: **a typed query overrides the favourites-only and show-hidden toggles**. The sibling article on turning a stringout into a searchable shot log carries the search behaviour and the field mechanics in full. - **Publish.** And here is the rule that decides step 2: **only the heart and the hidden flag narrow what gets published.** Your search query does not. Your rating filter does not. You can stare at nine four-star shots on screen, publish, and send the client all 240. A free board caps at 50 shots, and the cap applies before anything else, so a short reel or one scene's selects fits on the free tier; a long stringout does not, so plan on Pro for that. ## What can the client do on the shared page? They open a URL with no account and no software, pick one of three layouts — Storyboard, Thumbnails, Shot List — and read. Each shot is numbered, with a thumbnail, and in the Storyboard and Shot List layouts every metadata label and value you published plus a transcript block. That is the whole interaction. They cannot search it, filter it, comment on it, approve anything, mark a pick, or read a timecode off it. They cannot see which shots you hearted; the server strips each shot's internal state before serving the page. A board built from a local `.mov` has no video player on it, so the thumbnail is what they get. A YouTube-sourced board embeds the player. Three access levels, in the share popover: **Public**, **Unlisted** and **Password**. Unlisted is not authenticated. Anyone holding the URL can open it, and the only thing protecting it is that the URL is not published anywhere and `/b/` links are excluded from crawlers. Password is genuinely gated, stored as a hash and checked server-side, and it is a Pro feature. Whichever you pick, **open the link in a signed-out private window before you send it.** Thirty seconds, and it is the only way to see what the client sees rather than what your logged-in browser shows you. Republishing after you change the board reuses the same URL. You do not resend a link every time you add a shot or fix a label, and an old email keeps working. ## How do the picks get back to the editor? They type numbers at you. Ask for them. The shots on the published page are numbered and stable, so the instruction in your email is one line: *reply with the numbers you want — for example, 12, 18, 31.* That is a shared vocabulary between two people looking at the same page, which is more than a rendered reel gives you. Do not sell it as an approval workflow. When the list comes back, heart those shots and take one of three routes out. - **Editorial — a selects timeline.** Switch it on and StoryFolder writes Selects.edl, Selects.xml (Final Cut Pro 7 XML) and Selects.fcpxml, the hearted shots cut in board order with no gaps, plus a README.txt naming the frame rate and the reel. EDL and FCP7 XML open in Premiere, Resolve and Avid; FCPXML opens in Final Cut Pro and Resolve, and in Resolve you add the source to the Media Pool first. Editorial is Pro. - **Selects reel — a rendered file.** One H.264 Selects.mp4, every hearted shot back to back, encoded from the original source rather than from a preview proxy, so the source has to be online. This is the reference copy for review; it is not what you cut from. It is on every plan. - **Clips or the shot list — documents and media.** Export clips writes one real MP4 per shot cut from the original source, and you drop the folder into a bin. Export the shot list and you get both Shot List.csv and Shot List.xlsx with your chosen field columns and per-shot timings; that same sibling article has the full column list. Know which timings you are reading. In the spreadsheet and on the board they are elapsed from the first frame of the file you imported rather than the source's own timecode, so work from the exact `First Frame` and `Last Frame` integers. The Editorial files are the exception: those carry real `HH:MM:SS:FF` at the source frame rate. One scope line worth saying out loud, because it decides whether this fits your job: the timeline is cut **against the one file you imported**. If that file is the stringout you rendered, the events point at the stringout, not at the camera originals behind it — a rendered video carries none of their filenames, reels or handles. It gets the shape of the selection back into the edit; the conform still keys off the timeline that made the render. ## Use a review-and-approval tool when the job is notes on a cut If what you need is a comment pinned to a frame, a version stacked against the previous one, a sign-off you can point at later, or a session where you and the client watch in sync, use a tool built for that. Frame.io, ftrack Review, Dropbox Replay and Filestage all do it, and StoryFolder does none of it. Check their current pricing at the source; this space moves. Use a published StoryFolder board when the job is to put a set of shot options in front of someone who is not in post, and to refer to them afterwards by number and by label. ## FAQ **Is an Unlisted selects board password protected?** No. Anyone with the URL can open an Unlisted board. Password is the access level with an actual gate on it, and it is a Pro feature. **Will my search query trim the board before it publishes?** Yes. A publish and an export both take the shots your current query and filter chips leave standing, and the favourite and hidden flags narrow them as well. **Can the client see which shots I hearted?** No. The server deletes each shot's internal state, including favourite and hidden, before it serves the page. **Does republishing give the client a new link?** No. The board keeps its id, so a republish updates the same URL and the link you already sent keeps working. **Can the client play the video from a board I made from a local `.mov`?** No. The published page embeds a player only for boards whose source was a YouTube URL. A local-file board shows thumbnails. **Can I password-protect a selects link on the free plan?** No. Public and Unlisted links are free; password-protected links are Pro. **Does the shared page collect the client's picks?** No. There is no tick, no comment field and no approval on it. The picks arrive however the client normally messages you, and you heart them by hand. **Will the shot list export match back to my source timecode?** No. Timecodes are elapsed from the start of the imported file, so use the `First Frame` and `Last Frame` integers if you need exact positions. ## Related help pages - [Import a local stringout or selects reel](https://storyfolder.com/help/importing/from-file) - [Heart the shots you are willing to show](https://storyfolder.com/help/editing/favorites) - [Search a board](https://storyfolder.com/help/editing/search) - [Publish and update a shared board](https://storyfolder.com/help/sharing/publish) - [Choose Public, Unlisted or Password access](https://storyfolder.com/help/sharing/privacy) - [Export one MP4 per shot](https://storyfolder.com/help/exporting/clips) - [Export the shot list as CSV and XLSX](https://storyfolder.com/help/exporting/spreadsheet) --- # Using AI for Storyboarding: A Comprehensive Guide for 2024 URL: https://storyfolder.com/blog/ai-storyboarding-a-comprehensive-guide Author: Jeff Jassky Published: 2023-12-25 Tags: Storyboarding, Storytelling, Production, Video Marketing Reading time: 26 min Learn how to storyboard fast with AI with AI storyboarding software - From cinematic photorealism with MidJourney v6 and Dall-E, to Script to Storyboard conversion with ChatGPT, and even animatics with generative AI video. As a developer of **AI Storyboarding** tools, I'm constantly looking for innovative pre-production methods. Tools like MidJourney, Dall-E, and Stable Diffusion have made a splash in 2023 and are on track to impact video workflows even more in 2024. **AI Storyboarding**, **AI cinematography** and to **Script to Storyboard conversion **are all new techniques that are changing **how to use AI for fast storyboards.** Creators, marketers and filmmakers can create high-quality **storyboards with AI** with an efficiency unimaginable just a year or two ago. Here, I'll share the best tools available including **free AI storyboarding software** that can improve your efficiency without hitting your wallet. ![](/blog-media/ai-storyboarding-a-comprehensive-guide/opening-illustration.png) **Storyboarding with AI** brings new levels of speed and iteration. By **using AI for storyboards**, we have the ability to divert our time from the mechanical aspects of drawing to focusing on the big picture — crafting deeply engaging stories. ### Key Takeaways - **AI Cinematography** is rapidly expanding with technologies like MidJourney, Dall-E and Stable Diffusion. - **Script to Storyboard with AI** with tools like ChatGPT, Bing Chat, and Google's Gemini, can produce storyboards almost instantly. - **AI storyboarding tools** enhance fast-paced creativity, brainstorming, and ideation. - There are a variety of **free AI storyboarding** tools you can use today. ## Storyboarding in the AI Era Traditional storyboarding is changing from the days when meticulous hand-drawing by skilled artists was the norm. I have watched tools like MidJourney begin by creating goofy, confusing images that weren’t much better than random — to now creating beautiful, nearly photorealistic, cinematic images with a high level of creative control. That, combined with **AI script to storyboard** techniques with large language models like ChatGPT, and **Generative AI Video** these new **AI storyboarding tools** simplify and accelerate the preproduction process. > We even have the capacity to **create animatics with AI**. As ai tech develops, the creative community has new leverage to bring their work to life faster than ever. ## Benefits of Using AI for Storyboards: Fast, Enhanced Creativity Whether it's filmmakers wanting to experiment with different angles and sequences or a commercial marketer wanting to visualize a campaign, AI tools are becoming the go-to solution. It enables them to iterate quickly and choose the best visuals to tell their stories most effectively. The rapid speed of AI for storyboarding allows creatives to flesh out multiple storyboard iterations almost instantaneously. This shift isn't just about speed; it's about the resulting creative enhancement that comes from the ability to quickly iterate on visual concepts. > By harnessing AI for storyboarding, it becomes possible to focus more on refining the narrative's core elements and enhancing the overall quality — which is what makes stories resonate with authenticity and impact. With **AI storyboarding**, pre-production gains momentum, shortening the journey from idea to execution. This is critical in the video industry where the pace of content creation is relentless and the need to stay ahead of the curve is constant. But perhaps the most striking advantage is the rapid experimentation with novel visual ideas. - ***Novel Visual Ideas** achieved quickly through fast experimentation.* - ***Faster Production Planning**, leading to shorter turnaround times.* - **More time to focus **on impactful narrative development. ## Storyboarding with MidJourney v6 - The Most Cinematic AI Storyboards Yet **MidJourney** has emerged as one of the most noteworthy tools for generative **ai storyboards**. Its latest version, version 6, is now producing some of the most cinematic AI visuals to date. Version 6 demonstrates a profound understanding of film language, translating prompts into dynamic characters and scenes. **Storyboarding with MidJourney** is by far one of the most popular methods of storyboarding with AI. **Storyboarding With MidJourney 6**, the model understands the relations between objects better, leading to more coherent images. Prompt instructions to place elements like “on top of” or “in front of” are now understood much better than earlier versions. Version 6's new prompt structure significantly improves creative control over the resulting images: ![](/blog-media/ai-storyboarding-a-comprehensive-guide/prompt-structure.png) ### Consistent Characters with MidJourney "Remix" Maintaining **character consistency** across multiple panels was a challenge in previous versions of MidJourney. Distinctive facial features would change from image to image. Now, MidJourney version 6 introduces a new feature: "Remixing". MidJourney "Remixing" is a feature that allows you to use an existing image to inform the output of an entirely new image. By using the "/prefer remix" command, you can toggle this feature on and off. ### MidJourney 6 new "Raw Style" improved photorealism AI generated images before MidJourney v6 have always had a distinct "AI look". Characterized by overly smoothed skin, dramatized lighting, exaggerated facial features, and a highly stylized, illustrative appearance. While compelling, especially for more fantastical visuals, it lacked when it came to photorealism. **Storyboarding with MidJourney v6** takes photorealism to the next level by introducing the "**–style raw**" flag to prompts. By appending this flag to a prompt, significantly more photorealistic skin, lighting, textures, are now achievable. ## AI For Storyboarding Essentials As we delve into the evolving landscape of visual storytelling, it's clear that AI storyboarding is carving out a significant niche for itself. Let’s define some key terms that are relevant around AI-assisted storyboard creation. ### Defining Key Terms: AI Storyboard, AI Animatics, AI Cinematography, Script to Storyboard, and Video to Storyboard ***AI Storyboarding*** generally refers to using generative AI image tools to generate images to depict each shot in a sequence or script. A “**Prompt**”, is basically a set of instructions, effectively acting as description of the desired image, to be provided to the generative ai image tool. These are typically written using natural language, though each tool may have its own best practices when it comes to prompt design, which I’ll cover next. **Prompt Design** is effectively understanding the best practices for writing and structuring prompts. Each tool, whether a generative image tool like MidJourney, or a large language model like ChatGPT, has its own nuances that when understood, can offer users more power and creative control. Effective prompt design encompasses formatting and structure, keywords, commands, flags, and other options depending on the model. Though there is scientific research on this that I personally find fascinating, learning prompt design is more of a trial and error process, and an art form. ***Script to Storyboard*** refers to providing a large language model with a full or partial script, and having it convert that written script into a comprehensive list of shots with descriptions. The descriptions include framing details, lens choice, etc. Once each shot description is generated, the description is used to a prompt a generative image tool like MidJourney to create the final storyboard images. **Video to Storyboard** conversion is a technique that converts an existing video into it’s storyboard counterpart by automatically detecting each shot, and selecting a representative frame, and laying it out on a board. Tools like StoryFolder do this automatically, while providing the ability to take notes manually, or automatically generate relevant notes using AI. The resulting storyboards are be used for research, scene analysis, pitches, presentations, and even blueprints for new video projects. ***AI Animatics***, bring static images to life, offering a preliminary animated sequence that maps out the timing, pacing, and flow of scenes. **How to make AI animatics** can depend on the projects needs. Most commonly, AI Animatics can use the still frames from the storyboard. alternatively, the still images can be converted into motion clips using generative video tools. **AI Animatics** may or may not include preliminary captions, or audio previews made by **AI Text to Speech** tools. ***AI Cinematography***, combines a variety of the above methods, including generative ai still images, and generative video. There are countless projects in 2023 that were made entirely using generative AI images and video, some simulating intricate frame compositions, lighting, and even camera movements. Visual prototyping serves as a necessary bridge between the initial concept and the final product. AI's role in this space offers unprecedented speed and flexibility. Through **AI storyboarding software** like MidJourney and ChatGPT creatives can rapidly visualize scenes, experiment with different visual styles, and refine narrative details, while maintaining the integrity of, and expanding upon the original vision. - Preview narrative flow with **script to storyboard AI** and conversion and **AI Animatics**. - Analyze existing works for research, or using them to inspire your productions with **AI Video to Storyboard conversion**. - Offers a multitude of creative angles swiftly, fostering a broadened perspective To better illustrate these concepts, let's examine a comparative overview of various AI storyboarding tools and their respective strengths: Much like the tools described here, AI storyboarding as a technique is diverse and dynamic. It ushers in a wave of opportunities, equipping us with the facility to swiftly pivot from a **script to storyboard AI** framework, all the way through to detailed **ai animatics**. Yet, it remains a collaborative, evolving craft where the influence of human ingenuity is not only necessary but integral to the creation of meaningful and engaging visual stories. ## ## AI Storyboarding: The Tools & Techniques Embarking on a storytelling journey has never been as exciting and accessible as it is today, thanks to the advent of **AI storyboarding techniques**. Within this innovative field, various AI storyboarding tools are reshaping how creatives develop visual narratives for pitches and presentations. From cinematic visuals to the swift conversion of scripts and videos into storyboards, each tool offers something unique. I’m here to walk you through the forefront of these advancements that promise to enhance the storyboarding process for seasoned artists and novices alike. ### Storyboarding with MidJourney 6 My personal experience with MidJourney 6 revealed its proficiency in creating stunning, cinematic AI visuals that elegantly weave together the various elements of a narrative. This tool allows creators like myself to quickly generate and adjust storyboards, making tangible the most ethereal concepts floating through our imaginations. ### Storyboarding with ChatGPT and Dall-E The duo of ChatGPT and Dall-E brings forth a synergy where textual prompts are transformed into rich storyboards. This combination allows for a flexible approach, accommodating different artistic styles and ensuring that each frame contributes effectively to the overarching story's tapestry. ### Convert Videos to Storyboards with StoryFolder When it comes to converting existing video content into storyboards, StoryFolder.com stands out as a pioneering platform. It's not just about cutting down the time it takes to create a storyboard but also about the depth of understanding it provides through annotations and the ability to use pre-existing storyboards as templates for new stories. Discovering and utilizing these AI storyboarding tools has revolutionized the way I approach narrative visualization. They enable rapid experimentation and iteration, allowing a more dynamic exploration of visual storytelling that was previously limited by more cumbersome, traditional methods. To compare and provide insight into these tools, let’s take a quick look at their capabilities: AI ToolCinematic VisualizationText ConversionVideo ConversionMidJourney 6ExcellentGoodN/AChatGPT + Dall-EVariableExcellentN/AStoryFolder.comGood (template-based)Supports Pre-Existing StoryboardsExcellent In synthesizing the features of these AI storyboarding tools, it's apparent that they offer a distinctive blend of technical ingenuity and artistic liberty. They are not just tools but colaborators in the storytelling process, opening new doors for creativity and depth in narrative development. ## Convert Scripts to Storyboards with ChatGPT As a storyteller in the digital age, I have witnessed remarkable strides in the ability to **convert script to storyboard AI**, and I'm thrilled to share my insights on how ChatGPT has transformed this aspect of narrative creation. This powerful AI platform captures the essence of written scripts and breathes life into them, rendering detailed visual storyboards with an incredible understanding of *scene context*. By adeptly analyzing the intentions behind a script's text, AI like ChatGPT manages to produce storyboards that resonate with the action and tone envisioned by writers and directors. This is not just a step forward; it's a leap into an era where narrative visualization can take place with a swiftness that gives creatives more time to refine and embellish the broader strokes of their stories. ### The Integration of Scene Context in AI Platforms Understanding scene context is the pivotal component that allows AI to faithfully transfer a writer's vision from page to storyboard. I've experienced how the slightest nuances of a scene are picked up by intelligent AI platforms, and how that understanding is translated into sequences that accurately mirror the script's interconnected components, such as character interactions and scene transitions. Let me share an example of this implementation: - I input a script describing an intricate handshake between two old friends who are reuniting after years apart. The subtleties of their hesitant approach and the eventual warmth are critical to the story. - The AI processes this information and presents me with a storyboard capturing not just the characters' positions but their tentative emotions as well, precisely reflecting the delicate situation. - Thus, the concept swiftly evolves from a textual representation to a visual prototype, allowing me to see my narrative take shape and lay the groundwork for the eventual shots. This swift transformation from **scene to storyboard AI** empowers me to focus on refining the overarching narrative and fine-tuning details that resonate with audiences. The efficiency and accuracy of AI-assisted storyboarding shine particularly bright in time-sensitive projects such as advertising campaigns, where the message must be crystal clear and immediately impactful. ChatGPT, armed with its extensive training on numerous scripts and storylines, manages to adeptly navigate the complexities of scripted dialogue and scenic descriptions, providing a storyboard that's a visual echo of the written word. This is what makes AI platforms not just tools but true partners in the creative storytelling journey. While the field of AI storyboarding continues to progress, platforms like ChatGPT are showing us a tantalizing glimpse of the future—one where the gap from script to storyboard is bridged with remarkable grace and speed, allowing us to tell our stories with more depth, detail, and dynamism than ever before. ## How AI Impacts Storyboard Development In my continuous quest to enhance the creative process, I've seen the **AI storyboarding process** make significant strides, particularly in generating characters and scenes, as well as converting static storyboards into dynamic animatics. The integration of programs like MidJourney has underscored the transformative effect of AI on storyboard development. Let's delve deeper into the roles AI is playing in this innovative field. ### AI's Role in Generating Characters and Scenes My experience with AI in storyboarding has been revelatory. It's astonishing how swiftly AI can conjure up diverse characters and intricate scenes that were once confined to the imagination. The ability to visualize individual frames of a storyboard using AI enables us to fine-tune our narratives, even though maintaining character consistency across these frames presents a bit of a hurdle. However, AI effectively captures the mood and thematic essence that breathe life into our creative visions. "Visualize the merging of human creativity and AI technology in the storyboard development process." ### Converting Storyboards to Animatics with AI The notion of animatics – a preliminary version of a film with images displayed in sequence with limited animation – might seem daunting. But that's where AI truly dazzles, transforming storyboard panels into animatics. This offers a glimpse into the timing, pacing, and flow of our stories long before production begins. To *make animatic with AI* is to bridge the gap between concept and live-action or animation, providing a robust previsualization that amplifies the narrative's impact. The potential is immense, and as AI technologies continue to develop, I anticipate even more precise and intuitive ways to animate storyboards, further enriching our storytelling arsenal. Understanding these aspects of AI's involvement in storyboarding illuminates how integral it has become in our quest for more expressive and effective visual narratives. ## Free AI Storyboarding: An Accessible Option for Creatives As a creative, the discovery of *free ai storyboarding* tools has been a game-changer for me. It's like finding a treasure trove that allows me to **storyboard with AI** without having to worry about costs, democratizing access for creatives at all levels. I'm excited to share some of the resources and techniques that have been integral in shaping my visual storytelling workflow. ### Tools to Start Storyboarding with AI for Free Among the many assets I've explored, Canva stands out for its rudimentary yet surprisingly effective text-to-image features. These features serve as a solid foundation for visualizing scenes and story concepts. Another platform I've found useful is **StoryboardThat**, which lets anyone create storyboards using a vast collection of graphics, bypassing the need for sophisticated drawing skills. In the central arena of AI storyboarding, these free resources have been invaluable. They enable creatives to start conceptualizing scenes and edits without any upfront investment, fostering the development of initial storyboards that can later be refined and enriched. This removes barriers for newcomers and offers a low-risk avenue for exploring visual narratives. ### Incorporating StoryFolder for Enhanced Storyboards For those of us looking for a more advanced touch, StoryFolder.com is a robust tool I recommend for its advanced features. It's particularly adept at converting videos to storyboards, which substantially eases the visualization of video content for creatives. This kind of AI assistance enables us to depict sequences more vividly and accurately. StoryFolder.com has the added benefit of allowing creatives to use existing templates as customizable frameworks for new projects, streamlining the storyboard creation process. By using this tool, I can easily bring my ideas to life while tapping into AI's potential to auto-generate key scenes and elements within my narratives. Ultimately, these **free AI storyboarding** tools not only assist in developing my skills but also open the door to innovative storytelling techniques that are redefining the industry. ## Selecting the Right AI Storyboarding Software As I delve deeper into the world of visual storytelling, I recognize that identifying the most suitable AI storyboarding tools is crucial for the success of a project. These powerful platforms offer varying features that address different aspects of storyboarding - from quick visual drafts to detailed motion storytelling. Whether you're working solo or within a team, the right software can radically enhance your workflow. In this endeavor to establish industry standards, I thoroughly analyze how diverse tools stand up to the rigorous demands of modern content creation. ### Comparative Analysis of Industry-Leading Tools Let’s take a closer look at the diverse capabilities and strengths of MidJourney, StoryboardHero, and Krock.io - some of today's leading AI storyboarding platforms: FeaturesMidJourneyStoryboardHeroKrock.ioCinematic Visual GenerationExcellentGood with custom optionsGoodCharacter & Scene ConsistencyLimitedCustomizable with artist inputTemplate-basedReal-Time CollaborationNot AvailableNot AvailableExcellentGraphic Resources AvailabilityHighMedium, with custom design on requestExtensive library Each tool on this list brings distinct possibilities to the table - MidJourney produces high-quality cinematic visuals, whereas StoryboardHero offers the option for artists to custom draw images for unparalleled uniqueness. Krock.io excels in facilitating remote collaboration, providing an extensive graphic library invaluable for team projects. ### The Importance of Experimenting in AI Storyboarding Mastering *AI storyboarding best practices* requires a willingness to experiment with various **AI storyboarding software** to discover their individual features and how they can best enhance the storytelling process. For example, I found that continuous exploration allows us to grasp each tool's nuances, which ultimately guides us in molding our story with precision and flair. This firsthand experience is invaluable for it empowers us to devise methods that leverage AI's full potential while preserving the emotive depth of our narratives. Through this process, I hone in on the best aspects of each tool and amalgamate them into a workflow that’s both efficient and creatively satisfying. Discovering the right mix of AI capabilities and human creativity fosters a nurturing environment for stories to flourish. As we venture forward in this AI-accelerated landscape, let us carry the mandate of quality and authenticity in our storytelling endeavors, appreciating the intricate dance between technology and human skill. ## Practical Examples of AI in Storyboarding Innovations in AI have ushered in new methodologies for transitioning from *script to storyboard AI* and translating *scene to storyboard AI*. I have been experimenting with MidJourney's ability to adopt various artistic styles, such as emulating Vadim Gousmanov's distinctive aesthetic. Although achieving character consistency has proven challenging, the AI's success in capturing the mood and overarching themes of a story suggests a promising direction for the technology's application in storyboarding. Let's consider a practical instance where I recreated a storyboard of a scene evoking the concept of "casual flying," much like that in the dream-like Burberry "Open Spaces" advertisement. The result was a set of images that, while not perfectly consistent in character depiction, conveyed the intended fantastical mood convincingly—the flying characters, though individually unique in each frame, managed to maintain a thematic coherence that underlined the story's fantasy element. Storyboard TestAI Tool UsedArtistic Style EmulationConsistency in CharactersMood and Theme CaptureOverall ResultThe Moodboard TestMidJourneyVadim Gousmanov's StyleVaried across framesSuccessfully representedPassThe Famous Character TestMidJourneyWill's Character from Stranger ThingsImproved familiarityAccurately capturedPass with potential for refinementThe Shootingboard TestMidJourneyN/ANot applicableFailed to conveyFail My tests also included efforts to recreate iconic scenes by referencing well-known characters, like a young boy resembling Noah Schnapp’s portrayal in "Stranger Things." While the character's specific features were varied in MidJourney's interpretation, the familiarity was enough to strengthen the sequence's narrative continuity from one frame to the next. Despite the pitfalls encountered, particularly with high-precision needs such as shooting boards, these tests confirm that **script to storyboard AI** and **scene to storyboard AI** are legitimate and valuable tools in the creative storytelling process. They serve as excellent starting points for ideation and can unequivocally capture a story's essence, as shown in the successful tests above. The capabilities and limitations of AI in storyboarding, as illustrated in these practical examples, indicate a forward trajectory for the technology. There is no doubt AI will continue to refine its understanding of story nuance and character dynamics, opening wider avenues for creatives to narrate and visualize with inspiring innovation. ## Storyboarding with AI: Best Practices Breaking into the potential of AI storyboarding requires a synthesis of technology and traditional narrative techniques. My goal is to ensure the highest quality of visual storytelling by establishing a set of best practices that address the intrinsic complexities of AI-generated visuals. Integrating these practices is vital to overcoming common hurdles and maximizing the creative potential of AI in the storyboard development process. These guidelines focus on maintaining character consistency, enhancing accuracy, and finding equilibrium between AI-generated content and human artistry. ### Character Consistency for AI Storyboards One of the fundamental challenges in AI storyboarding is achieving character consistency across frames. To tackle this, using a well-known reference point during the image generation phase is invaluable. For instance, when I substituted a generic boy character with one inspired by Noah Schnapp from "Stranger Things," AI tools like MidJourney provided visually coherent storyboards that maintained the character's recognizability throughout the scenes, illustrating the effectiveness of this strategy. ### Strategies to Enhance AI-Generated Storyboard Accuracy To bolster the accuracy of AI storyboards, I lean on the precision of language within prompts. Avoiding vague or easily misinterpreted terms significantly reduces the occurrence of unintended results. Precision in language ensures that the AI's vast neural networks generate images that accurately reflect the intended mood, setting, and character dynamics. A group of people gathered around a large AI storyboard, with some pointing and discussing while others take notes and make adjustments. An AI algorithm hovers above, analyzing the storyboard and suggesting improvements in real-time. The room is filled with technology, including screens displaying data and charts, and the atmosphere is one of collaboration and creativity. ### Addressing the Limitations of AI Storyboarding While AI provides a powerful tool for rapid storyboard iteration, it is not without limitations. For instance, creating precise shooting boards has proven challenging, as terms like "arrows" in film language can easily be misconstrued by AI. Recognizing the boundaries of what AI can interpret correctly can circumvent these limitations and guide better storyboard outcomes. ### Finding a Balance Between AI and Human Touch The magic really happens when I combine AI's speed and breadth of creative options with the discerning eye of human artistry. Leveraging AI for initial exploration and concept generation allows me to invest more time in the details that matter—the subtle expressions, the interplay of light and shadows, and the emotional tone—that make a storyboard not just functional, but emotionally resonant. This synergy between AI applications and human creativity is what elevates AI storyboarding to an art form in its own right. ## The Future of Storyboarding and AI Technologies As we forge ahead into the future, I envision a landscape where **AI storyboarding techniques** become even more intricate and integrated into the visual storytelling process. We stand on the brink of witnessing the emergence of AI systems that not only understand but also predict the needs of creatives, reflecting a deeper grasp of narrative nuances and character dynamics. ### Predicting the Advancement of AI Storyboarding Techniques The **AI storyboarding process** of tomorrow is poised to be transformed by advancements that could redefine the current capabilities of existing tools. Imagine machine learning algorithms sophisticated enough to utilize sets of images for training, enhancing the consistency of characters and scenes across storyboards. Such innovations would bring us closer to a seamless translation of written ideas into vivid, accurate visuals, allowing us to imbue each frame with a previously unreachable depth of creativity. These evolving **AI storyboarding techniques** aren't far-off dreams; they're quickly becoming realities as developers push for AI that can analyze a script's emotional undertones or a director's unique style. The impact of these advancements will be a tremendous boon to filmmakers and content creators, saving precious time while expanding the horizons of what's achievable on-screen. ### The Ongoing Collaboration Between Creatives and AI My experience tells me that the key to harnessing the full potential of AI in storyboarding lies in fostering a collaborative relationship between creatives and technology. AI doesn't stand to replace human creativity; instead, it's set to augment and amplify our capabilities, pushing the boundaries of traditional storyboarding. As we experiment and integrate AI into our storyboarding workflows, we contribute to shaping a future where the storyboarding process evolves to become even more dynamic and enriched. This growing partnership is expected to yield storytelling tools that are not only more sophisticated but also more intuitive, serving as seamless extensions of our artistic visions. The idea of AI as a faithful co-creator is exhilarating, offering us opportunities to envision stories with an authenticity and precision that was once unthinkable. I am filled with anticipation for the contributions that AI will continue to make to the art of storyboarding. To me, the promise lies not in technology alone but in the symbiotic dance of human expression and machine learning that will bring forth the next era of storytelling. ## Real-World Success Stories: Storyboarding with AI Stepping into the world of AI storyboarding, I've witnessed first-hand how it's not just a promise for the future—it's a present reality transforming the visual storytelling landscape. By analyzing case studies of successful projects, we can glean insights into how professionals are leveraging AI storyboarding techniques for enhanced creative output and efficiency. ### Case Studies of Effective AI-Enhanced Storyboards Among the myriad of success stories, one that stands out is the use of MidJourney in reinterpreting legendary advertising campaigns. Generative AI storyboarding painted a new layer of creativity on iconic visuals, exercising the potential of *AI storyboarding techniques* to capture an idea's essence in a novel way. For instance, an ad campaign reminiscent of Burberry's "Open Spaces" taps into shared cultural narratives with its dreamlike sequences, allowing audiences to connect on a more profound level. Another compelling case comes from simpler applications of AI in storyboarding, where tools like StoryFolder.com swiftly turn videos into storyboards. This has been particularly advantageous for marketers rapidly prototyping video ads, making evident the viability of AI as a storyboard generator. ![](/blog-media/ai-storyboarding-a-comprehensive-guide/storyboard-board.png) Show a visually stunning image of a group of people collaborating and brainstorming ideas on a digital storyboard interface powered by AI. They are surrounded by vibrant colors and dynamic, futuristic graphics that showcase the limitless possibilities of AI storyboarding. In the foreground, there is a tablet displaying a beautifully crafted storyboard created with AI assistance, while in the background there are several more tablets showcasing previous successful projects. The overall image conveys a sense of creativity, innovation, and excitement about the future of storytelling with AI technology. ### Exploring the Achievements in AI Cinematography My exploration of AI's involvement in filmmaking extended to the achievements in **AI cinematography**. I had the opportunity to observe how AI tools emulate intricate camera movements and shoot planning in storyboards—a testament to the advancement of AI's understanding of cinematic language. These AI-driven storyboards have proven to be invaluable in the pre-production phases, especially when conveying complex camera sequences to crew members and stakeholders. The ensuing discussions, enhanced by AI-generated visuals, triggered a fusion of creative perspectives. Such a collaborative synergy created a storyboard more rich and comprehensive than what one might achieve through traditional means alone. Indeed, the unfurling narrative of **AI storyboarding success stories** has only just begun, with each new application further enriching this exciting chapter in creative technology. ## Wrapping Up the Frames: A Recap on AI Storyboarding Embarking on this deep dive into the evolving world of AI storyboarding, I've unraveled the remarkable ways in which AI is redefining the storyboarding process. The creative freedom afforded by **storyboard with AI** has unlocked a spectrum of possibilities, allowing rapid iterations and expansive visual exploration. While some challenges remain, particularly around the consistency of characters and precise camera movements, the benefits in terms of speed and diversity in options are undeniable. The **AI storyboarding process** equips professionals with a potent arsenal of tools that convert scripts and videos into comprehensive visual storyboards swiftly and efficiently. This advancement is priceless for the narrative craftsman, granting the gift of time—time to delve deeper into the art of storytelling, to refine the delicate nuances that heighten the impact of a narrative arc on its audience. With AI storyboarding, the essence of storytelling is not lost; rather, it is refined and sharpened, ready to captivate viewers with greater potency. As technology marches forward, I remain optimistic about the trajectory of *AI Storyboarding*. The ongoing evolution promises a future where AI does not just mimic human creativity but augments it, allowing storytellers to weave tales with a richness of detail once deemed impossible. In closing, the synthesis of AI and human ingenuity in storyboarding is a frontier of limitless potential, set to indelibly transform the landscape of film and video production for years to come. ## FAQ ### What is AI Storyboarding? AI Storyboarding is the process of creating storyboards using AI apps and software, which transforms scripts, scenes, or video content into visual storyboard sequences quickly and efficiently. ### How has AI changed storyboarding? The integration of AI into storyboarding has transformed the process from a manual and time-consuming task to a faster, more creative approach thanks to AI's ability to quickly generate a wide array of visual ideas and conceptual sketches. ### What are some of the most advanced AI storyboarding tools available? Advanced AI storyboarding tools include MidJourney 6, which is known for its cinematic visuals, ChatGPT combined with Dall-E for comprehensive storyboard creation, and StoryFolder.com, which can convert videos into storyboards with ease. ### How can I make animatics with AI? Generative AI tools like Pika can be used to create animatics by translating storyboards into animated sequences that give an early look at the narrative's timing, pacing, and flow. ### Are there free AI storyboarding options for creatives? Yes, there are free AI storyboarding options available, such as Canva's text-to-image feature and BingChat offering script to storyboard conversion, and StoryFolder, which converts existing videos into storyboards. ### Can AI make a storyboard for my script? Yes. A simple combination of tools like ChatGPT or BingChat can convert your script into a sequence of shots, each with a unique description. Then, using generative image tools like MidJourney, you can generate visual representations of each shot. ### What are the limitations of current AI storyboarding tools? Current limitations of AI storyboarding tools include difficulty in maintaining character consistency across frames and challenges in creating precise shooting boards that accurately capture complex camera movements. ### How can AI impact storyboard development? AI impacts storyboard development by enabling rapid visualization of characters and scenes, generating a variety of frames that align with the creator's vision, and allowing for quicker iterations during the storyboard phase. ### Which platform is recommended for converting videos to instant storyboards? StoryFolder.com is highly recommended for converting videos into instant storyboards, providing a quick and efficient way to visualize and note story details, and even to use pre-existing storyboards as reference. ### Why is it important to experiment with different AI storyboarding software? Experimenting with different AI storyboarding software allows creators to understand each platform's strengths and features, discover innovative ways to integrate AI into their process, and ultimately establish best practices tailored to their creative needs. ### What best practices are recommended for creating storyboards with AI? Recommended best practices for AI storyboarding include working with well-defined character references for consistency, avoiding terms that AI might misinterpret, and using AI for initial concept exploration while refining details with human artistic skills. ### How is AI expected to change the future of storyboarding? AI is expected to revolutionize storyboarding by becoming more intuitive and responsive, with improvements in machine learning algorithms that may enhance image consistency and capture more nuanced story elements, supporting a collaboration that augments human creativity. ### Are there any success stories of AI in storyboarding? Yes, there are numerous success stories showcasing AI's effectiveness in storyboarding, such as the reinterpretation of iconic ad campaigns using tools like MidJourney and the ability to rapidly turn videos into detailed storyboards with platforms like StoryFolder.com. ## Source Links - [https://bettermarketing.pub/storyboarding-with-ai-d1534c4d91d5](https://bettermarketing.pub/storyboarding-with-ai-d1534c4d91d5?ref=blog.storyfolder.com) - [https://www.zebracat.ai/post/top-ai-storyboard-generators](https://www.zebracat.ai/post/top-ai-storyboard-generators?ref=blog.storyfolder.com) --- # Getting Started: A StoryFolder Quick-Start Guide URL: https://storyfolder.com/blog/getting-started-with-storyfolder Author: Jeff Jassky Published: 2023-06-18 Tags: Tutorial, Storyboarding Reading time: 2 min Welcome to StoryFolder, a powerful tool that instantly converts existing videos to storyboards so you can add notes and share your insights with ease. Whether you're learning new techniques, sharing storyboards with clients or planning a video production StoryFolder will streamline the process. In this guide, we'll get started with Welcome to **StoryFolder**, a powerful tool that instantly converts existing videos to storyboards so you can add notes and share your insights with ease. Whether you're learning new techniques, sharing storyboards with clients or planning a video production StoryFolder will streamline the process. In this guide, we'll get started with StoryFolder, from setting up your account to importing your first video, taking some notes, and sharing with a link. Let's dive in! ## Installing the StoryFolder App: - **Create an Account**: Start by heading over to [StoryFolder.com](https://storyfolder.com/?ref=blog.storyfolder.com) and creating your account. It's quick, easy, and free. - **Download the App**: Once you've created your account, download the StoryFolder app for Windows or macOS. This is where all the magic happens! - **Install the App**: Follow the prompts to install the app. - **Connect Your Account**: Open the app and connect it to your account by signing in using the account details you created earlier. ## Importing Your First Video: Now that you've got StoryFolder set up, it's time to import your first video. You can import videos from virtually anywhere, making it easy to start analyzing and storyboarding right away. - Click on the 'Import Video' button in the app. - Choose the video you want to import. This could be a video file on your device, or a video from YouTube, Vimeo, or another platform. - Wait for the video to import. StoryFolder will automatically create a detailed storyboard from your video. ![](/blog-media/getting-started-with-storyfolder/step-1-import.png) ![](/blog-media/getting-started-with-storyfolder/step-2-shots.png) ## Exploring StoryFolder's Features: With your video imported, you're ready to start exploring StoryFolder's features. Here are a few to get you started: - **Add Notes**: Click on any frame in your storyboard to add notes. This is a great way to record your thoughts, ideas, and observations as you analyze the video. - **Publish an Instant Share Link**: Want to share your storyboard with others? Simply click the 'Share' button to create an instant share link. - **Export PDFs, Spreadsheets, and More**: Need a hard copy of your storyboard or want to analyze it further? You can easily export your storyboard as a PDF, spreadsheet, or other formats. ![](/blog-media/getting-started-with-storyfolder/step-3-notes.png) ![](/blog-media/getting-started-with-storyfolder/step-4-export.png) ## Tips for Getting the Most Out of StoryFolder: As you start using StoryFolder, keep these tips in mind: **Have Your Goal in Mind**: Whether you're studying a video, creating a storyboard to share with your team, or something else, keep your goal in mind. This will help you focus your analysis and get the most out of StoryFolder. **Continue learning StoryFolder**: Once you're comfortable with the basics, don't forget to explore StoryFolder's advanced features. We have detailed guides on various use-cases: Mastering Cinematography with StoryFolderLearning Video Strategy with StoryFolderBrand and Marketing Video StoryboardsPlanning Productions with StoryFolderPitching and Planning with StoryFolder ## Conclusion: Congratulations, you're now ready to start using StoryFolder! With the ability to quickly view a storyboard from an existing video, take notes, and easily share your insights, you're well on your way to mastering video analysis and storyboarding. Happy analyzing! --- # Convert Videos to Storyboards Automatically with StoryFolder URL: https://storyfolder.com/blog/video-to-storyboard-converter-free Author: Jeff Jassky Published: 2023-06-18 Tags: Storyboarding, Tutorial, Production Reading time: 4 min StoryFolder is an app that automatically converts videos to storyboards using AI. Here's how to use StoryFolder to convert videos to storyboards. ![](/blog-media/video-to-storyboard-converter-free/lead-storyboard.png) Ever wished you could see the storyboard of an existing video? What if there was a free storyboard app that helps you reverse-engineer any video in seconds by automatically converting it back into a storyboard? Well, that's exactly what we're looking at today. Ready? Let's dive in. You'll learn how to convert any video from YouTube, Vimeo, or a video file on your computer, into an accurate, shot-for-shot storyboard. All automatically, all for free, leveraging an AI-powered desktop software tool called StoryFolder. ## Why Video to Storyboard Conversion? Imagine you're a creative director tasked with creating a compelling ad for a client. You've found several competitor's ads that performed exceptionally well. Now, you want to understand their structure, messaging, pacing, and shot composition. Manually pausing the video, taking notes, and sketching out the storyboard is an option, but it's hardly efficient or accurate. ![](/blog-media/video-to-storyboard-converter-free/feature-length-film.png) Or maybe you're a student studying video production or a director studying the great filmmakers. Just drop in a feature film, and in no time you'll have the entire storyboard for each and every scene. After that, you can take notes on lighting, cinematography, narrative or anything else. ## AI-Powered Video to Storyboard Converter Manual methods of scrubbing through video, identifying frames, capturing screen shots, etc - well that's over. AI can analyze a video, identify every unique shot, and generate an accurate, shot-by-shot storyboard with more speed and accuracy than a human ever could. With the speed of AI, we can quickly build a catalog of key reference material to learn from, discover, and even use as starting points to inspire our own productions. We can quickly analyze large amounts of video content, discovering deeper insights into the techniques used in successful videos, helping them improve their own work. In the next section, we'll introduce you to StoryFolder, a free storyboard software app tool that uses AI to convert video into storyboards, and guide you through the process step-by-step. [Try the App](https://storyfolder.com/?ref=blog.storyfolder.com) ## Introducing StoryFolder - Your AI-Powered Video to Storyboard Converter StoryFolder is a cutting-edge tool that uses advanced AI algorithms to convert videos into detailed storyboards. It's designed to be user-friendly, making it a perfect fit for both beginners and seasoned professionals. StoryFolder is more than just a video to storyboard converter. It's a comprehensive platform for converting videos into useful insights including, notes, presentations, production plans, and pro. Whether you're learning for yourself, presenting to a client, or pitching to your team, StoryFolder is a tool that not only saves you time but also enhances your creative process by providing a deeper understanding of the videos you're studying. ## How The StoryFolder App Works: A Step-by-Step Guide Ready to start using StoryFolder? Here's a step-by-step guide on how to convert your videos into detailed storyboards using this powerful, free storyboarding software: **Step 1: Upload Your Video:** Start by uploading the video you want to convert into a storyboard. StoryFolder supports a wide range of video formats, so whether you're working with a YouTube video, a Vimeo video, or a video file, you can easily upload it to the platform. **Step 2: Let the AI Do Its Magic:** Once you've uploaded your video, StoryFolder's advanced AI algorithms will get to work. The AI will analyze your video, identify unique shots, and create a detailed storyboard. This process is quick and efficient, saving you hours of manual work. **Step 3: Review and Edit Your Storyboard:** After the AI has created your storyboard, you can review and edit it to suit your needs. You can add notes, highlight key shots, and even re-arrange the**Step 4: Export and Share Your Storyboard:** Once you're happy with your storyboard, you can easily export it and share it with your team or clients. StoryFolder supports multiple export formats, making it easy to share your work in a way that suits you best. [Try Storyfolder Yourself Free](https://storyfolder.com/?ref=blog.storyfolder.com) ## Benefits of Using StoryFolder for Video to Storyboard Conversion Using StoryFolder for video to storyboard conversion comes with a host of benefits. Here are just a few: **Efficiency:** StoryFolder's AI-powered technology makes the process of converting videos into storyboards quick and efficient. You can save hours of manual work, allowing you to focus more on the creative aspects of your project. **Accuracy:** The AI algorithms used by StoryFolder are designed to be highly accurate. They can identify unique shots and create detailed storyboards that accurately represent your video. **Insight:** By converting your videos into storyboards, you can gain a deeper understanding of the videos you're studying. This can help you identify key elements and techniques that you can apply to your own work. **Collaboration:** StoryFolder makes it easy to share your storyboards with your team or clients. This can enhance collaboration and ensure everyone is on the same page. **Versatility:** Whether you're working with YouTube videos, Vimeo videos, or video files, StoryFolder can handle it. It's a versatile tool that can adapt to your needs. In conclusion, StoryFolder is a powerful tool that can revolutionize the way you work with videos. When you use a software app to convert video to storyboards, you can enhance your creative process, save time, producing better videos in less time . So why wait? Start using StoryFolder today and see the difference it can make in your video production workflow. [Get the StoryFolder App Free](https://storyfolder.com/?ref=blog.storyfolder.com) --- # New Video Notes Editor adds AI Assistant & Custom Note Fields URL: https://storyfolder.com/blog/new-ai-powered-video-notes Author: Jeff Jassky Published: 2023-06-05 Tags: Development Blog Reading time: 3 min Are you ready to take your video planning to new heights? Introducing our video notes editor packed with awesome features including personalized note fields, and an AI-powered assistant using GPT technology. After months of research, user feedback, and countless hours of development, we overhauled the video notes editor with advanced Are you ready to take your video planning to new heights? Introducing our video notes editor packed with awesome features including personalized note fields, and an AI-powered assistant using GPT technology. After months of research, user feedback, and countless hours of development, we overhauled the video notes editor with advanced functionality that’ll revolutionize the way you learn from videos. Let’s dive in and cover all the new goodies  → ## Enhanced interface that’ll improve your video research, planning, and strategies The first thing you’ll notice is the revamped interface which allows you to easily add notes to any section or shot in your video. And that’s just the beginning. Here are our favorite new features that will bring advanced functionality to your video analysis and a smile to your face. ![](/blog-media/new-ai-powered-video-notes/notes-by-category.png) 👉"When it came down to designing the new notes editor, the main goal was to create something powerful, yet straightforward and uncomplicated for users." - Jeff Jassky, founder StoryFolder ### 🐇 Take better notes, faster Mark up videos with your notes and details with lightning speed like never before. The new notes panel lets you detail your notes, discoveries, and insights on each section faster than ever. Apply your notes to one, multiple, or all sections simply by selecting the ones you want, and editing the details in your notes panel. ### 🕵️ Discover deeper insights Make deeper discoveries by personalizing your note fields to focus on what matters to you. There's no limit to what you can take notes on now. Whether it's marketing, cinematography, budget planning, aesthetics or virality - you have full control. ### 🎨 Uncover fresh ideas Tap into a vast well of possibilities, unveiling concepts and suggestions that you might not have otherwise considered. The AI discover assistant can suggest ideas you didn't think of. Let the AI assistant be your muse, fueling your imagination and propelling your creativity to new heights. ![](/blog-media/new-ai-powered-video-notes/ai-discover-fields.jpg) 👉New to AI tools? To get the best results, provide clear and concise prompts. Great examples include: - "I want to learn brand storytelling." - "What makes videos like Dollar Shave Club so funny?" ### 1. Notes in multiple formats Adapt your notes to the way you think and work. Our updated note-taking feature lets you use text, dropdowns, tags, and checkboxes. Want to jot down a quick thought? Use the text field. Need to categorize your observations? Dropdowns and tags are at your service. Keen on creating a to-do list or tracking progress? Checkboxes have got you covered. ![](/blog-media/new-ai-powered-video-notes/field-types.png) ### 2. Personalized Note Categories Say goodbye to disorganization and hello to customization. Our new video notes editor allows you to group note fields into custom categories. Name them as per your needs and bring a higher level of organization to your observations and ideas. Your creativity deserves a personalized home. ![](/blog-media/new-ai-powered-video-notes/naming-category.png) ### 3. Notate Multiple Shots Simultaneously StoryFolders editor now lets you take notes on multiple shots at once. Simply click and drag to select multiple shots or use common keyboard shortcuts. Out with the repetition, and in with the efficiency. ![](/blog-media/new-ai-powered-video-notes/multi-shot-select.png) ### 4. Customize Your Sharing You decide what to share. Our enhanced publishing feature allows you to customize which notes are included when you publish your storyboard. Want to keep some insights for your eyes only? No problem. Feel like sharing all your thoughts? You can do that too. Your notes, your rules. ![](/blog-media/new-ai-powered-video-notes/publish-fields.png) ## Unleash Your Creativity Today We're thrilled about these changes and believe they will reshape the way you analyze and learn from videos. Our mission has always been to empower creatives like you by offering innovative tools to simplify and enhance your process. We're confident that these new features – from personalized note fields to AI-powered insights – will do just that. [Get Started Free](https://storyfolder.com/signup?ref=blog.storyfolder.com) Create a free account today and explore the dynamic capabilities of our new video notes editor. Unleash your creativity, and let our AI assistant guide you to deeper insights and fresh ideas. At StoryFolder, your creativity deserves a personalized home. Start writing your success story with us today! ## Try the new editor. ### Download the app for free. [Get Started Now](https://storyfolder.com/download?ref=blog.storyfolder.com) --- # Brand Breakdown: The hidden genius of the Dollar Shave Club ad URL: https://storyfolder.com/blog/the-hidden-genius-of-the-dollar-shave-club-ad Author: Jeff Jassky Published: 2023-06-05 Tags: Video Marketing, Production, Storytelling Reading time: 4 min Buckle up, marketers and video enthusiasts! We're on a quest to dissect a pop culture mammoth that took the advertising industry by storm. Yes, you've guessed it right! It's the Dollar Shave Club commercial that hit the scene back in 2012. This isn't just your everyday advertisement, but a game-changer Buckle up, marketers and video enthusiasts! We're on a quest to dissect a pop culture mammoth that took the advertising industry by storm. Yes, you've guessed it right! It's the Dollar Shave Club commercial that hit the scene back in 2012. This isn't just your everyday advertisement, but a game-changer that threw traditional marketing norms out the window. How, you ask? Let's delve right in and deconstruct this commercial, revealing key takeaways for brand storytellers and marketers alike. So, grab a cup of joe, and let's get this show on the road! ### Part 1: The CEO as the Brand's Mascot *The Unpolished Diamond* Picture the typical sleek corporate commercials with their glass-wall offices and sophisticated CEOs. Now, toss that image aside. The Dollar Shave Club ad introduces us to Mike, the CEO who personifies the brand's no-nonsense, value-for-money promise. His real and relatable portrayal is a breath of fresh air, injecting a healthy dose of authenticity that deeply resonates with viewers. ![](/blog-media/the-hidden-genius-of-the-dollar-shave-club-ad/shot-01.jpg) *Key Takeaway: Make Authenticity Your Brand's Superpower* The casual, somewhat disorganized setting isn't a mere gimmick for laughs or just a quirk to grab attention. Rather, it's a well-orchestrated, deliberate marketing strategy designed to echo the brand's promise—delivering high-quality results at a fraction of the cost. In a nutshell, their approach isn't just for show—it's a masterful reflection of their relatable, down-to-earth, money-saving strategy that powerfully amplifies their unique selling proposition. ### Part 2: Comedy: The Many Flavors of Humor *The Comedy Buffet* While most commercials play it safe with one or two styles of humor, the Dollar Shave Club ad takes us on a comedic tour, deftly blending a smorgasbord of humor styles into a delightful feast of fun. ![](/blog-media/the-hidden-genius-of-the-dollar-shave-club-ad/shot-10.jpg) *Key Takeaway: Inject Variety into Your Humor* The main insight here? Merging various types of humor can yield a universally engaging, hilarious narrative. Make your audience laugh, chuckle, and grin their way through your content—because humor is the universal language. ### Part 3: Dynamic Action, Dynamic Impact *Steady River Vs. White-Water Rapids* Contrary to the calm flow of traditional commercials, the Dollar Shave Club ad feels like a white-water rafting trip packed with unforgettable, humor-infused action that leaves a lasting impression. ![](/blog-media/the-hidden-genius-of-the-dollar-shave-club-ad/shot-03.jpg) *Key Takeaway: Embrace Action to Surprise and Delight* The learning from this section? Action can be your secret ingredient, creating unexpected moments that keep your audience engaged and yearning for more. ### Part 4: Props as Brand Amplifiers *From Set Pieces to Comic Heroes* In most commercials, props play the silent role of scene-setters. Not in the Dollar Shave Club ad. Ordinary props are transformed into memorable elements that add to the humor and bolster the brand message. ![](/blog-media/the-hidden-genius-of-the-dollar-shave-club-ad/shot-07.jpg) *Key Takeaway: Let the Ordinary Create Extraordinary Impact* The takeaway? Don't underestimate the power of simple things. When creatively used, they can inspire laughter, reinforce your message, and create unforgettable moments. ### Part 6: The Camera as a Storyteller *From Plain to Artistic Visions* Many commercials stick to vanilla camera techniques. In contrast, the Dollar Shave Club ad uses the camera as an artist uses a brush, creating a visually appealing narrative that draws viewers into the hilarious world of Mike's office. ![](/blog-media/the-hidden-genius-of-the-dollar-shave-club-ad/shot-04.jpg) *Key Takeaway: Use Visuals to Weave Your Tale* The golden nugget from this section? Creatively using visual storytelling can hook viewers and keep them engaged. Your camera is your paintbrush—use it to paint a memorable picture. ### Part 7: The Element of Surprise *Predictability Vs. The Unexpected* Many commercials stick to a predictable narrative arc. The Dollar Shave Club ad, on the other hand, is a roller-coaster ride filled with unexpected humorous moments. ![](/blog-media/the-hidden-genius-of-the-dollar-shave-club-ad/shot-08.jpg) *Key Takeaway: Let Surprise Be Your Secret Weapon* The wisdom we glean here? Use surprises to create memorable narratives that captivate your audience. In storytelling, the element of surprise can be a potent tool for engagement. ### Part 8: The Power of Fun in Brand Differentiation *From Serious to Seriously Memorable* When brands try to set themselves apart, they often resort to serious strategies highlighting superior features or value propositions. The Dollar Shave Club ad, however, uses humor to differentiate itself in a way that's unforgettable. ![](/blog-media/the-hidden-genius-of-the-dollar-shave-club-ad/shot-12.jpg) *Key Takeaway: Let Humor Set You Apart* Our final pearl of wisdom? Harness the power of humor to carve out a unique brand identity. When you make your audience laugh, they'll remember you—for all the right reasons. ## Read the Full Notes ### Explore the notes and storyboard from this breakdown for a whole new level of understanding and appreciation for this ad's brilliance. [See the full breakdown](https://storyfolder.com/b/646feaea6276ac594213adf5?ref=blog.storyfolder.com) What a ride, right? We hope this deep dive into the Dollar Shave Club commercial has sparked some ideas and stirred your creativity. But, the journey doesn't stop here. It's time to apply these insights to your own brand storytelling. In this ever-evolving landscape of brand storytelling, tools like StoryFolder are indispensable for marketers and creators. StoryFolder is more than just an app—it's a powerful tool that can help you decode the genius of high-caliber videos. Infuse your work with these key insights to reach new creative peaks. Ready to take your brand storytelling to the next level? Don't just read about these groundbreaking strategies—put them into action! So why wait? Start your journey with StoryFolder today. It's time to tell your story, your way! --- # StoryFolder 0.2.7 Released URL: https://storyfolder.com/blog/storyfolder-0-2-7-released Author: Jeff Jassky Published: 2023-06-04 Tags: Development Blog Reading time: 3 min Hello StoryFolder Community, We're thrilled to announce the release of StoryFolder 0.2.7! This update is packed with new features, improvements, and bug fixes designed to make your video analysis experience smoother, faster, and more intuitive. Let's dive in and explore what's new. Major Fixes 1. Initial Open Error Hello StoryFolder Community, We're thrilled to announce the release of StoryFolder 0.2.7! This update is packed with new features, improvements, and bug fixes designed to make your video analysis experience smoother, faster, and more intuitive. Let's dive in and explore what's new. ### Major Fixes - **Initial Open Error on macOS**: We've squashed a bug that caused a notice to display when opening the app for the first time on macOS. - **Activation on Windows**: Clicking "connect my account" is now working perfectly on Windows. ### Introducing Your Power-Packed Default Fields Get ready to supercharge your note-taking with our all-new default fields! They're designed to help you capture the essence of every video, every shot, every moment. Here's what's new: ![](/blog-media/storyfolder-0-2-7-released/default-fields.png) - **Key Takeaways**: Instantly capture the heart of the matter. What are the golden nuggets in each shot or section? - **Interpretation**: Your perspective matters. Share your unique interpretation of each shot or section. - **Story**: Unearth the narrative. What's the underlying plot in each shot or section? - **Action**: Highlight the pivotal moments. What actions are driving the story forward? Keep track of them all. - **Messaging**: Decode the message. What are the key brand/product messages or themes? - **Emotional Tone**: Feel the vibe. What specific feelings does each shot or section evoke? Capture the emotional essence. - **Visuals / Cinematography**: Appreciate the art. What standout visual styles or techniques are used? Uncover the beauty in every shot. - **Performance**: Applaud the talent. What aspects of the performance shine? - **Sound & Music**: Hear the story. How does the sound or music enhance the narrative? Tune into the auditory experience. - **Symbolism**: Unravel the hidden. What symbols or metaphors are tucked away in each shot or section? Discover the deeper meaning. - **Other Notes**: Your space for everything else. Got more to say? We've got you covered. - **Tags**: Organize with ease. Add tags to categorize and make shots easier to find. With these new fields, you're not just taking notes, you're creating a comprehensive analysis, a deeper understanding, a richer learning experience. Dive in and discover the power of truly insightful video analysis! ### Other New Features - **Video-Level Notes**: We understand that some insights apply to the entire video, not just specific shots or sections. That's why we've introduced video-level notes, allowing you to capture overarching observations and ideas. - **Undo + Redo Text Editing**: Everyone makes mistakes, and now you can easily correct them. Our new undo/redo feature ensures your note-taking process is as seamless as possible. - **Favorite/Hidden Switches to Metadata Panel**: Manage your shots with ease. With our new favorite/hidden switches, you can quickly hide or favorite multiple shots at once. - **Optional Descriptions to Note Fields**: Add more context to your notes with optional descriptions. This feature allows you to provide additional information or clarification to your notes. ### Improvements - **Speed of Generating Frame Stills**: We've turbocharged our frame exporting feature. Now, you can get the frames you need faster than ever. This also applies to exporting storyboards. - **Onboarding Tour**: We want you to feel at home in our new video notes editor interface. Our improved onboarding tour walks you through the interface step-by-step, ensuring you know exactly how to make the most of our tools. - **Dropdown Styling on Windows**: We've polished our dropdown styling on Windows, providing a cleaner, more streamlined look. ### Bugfixes - **Custom Frame Exporting**: We've fixed an issue with exporting frames, ensuring that your custom poster frames are respected. - **Column Resizing Bug**: We've addressed a minor interface bug related to column resizing. - **New Lines in Note Fields**: Your notes can now have multiple lines, providing more flexibility in how you write and structure your thoughts. - **Startup Timeout**: We've resolved an intermittent bug that sometimes prevented the app from opening. We're confident that these updates will enhance your StoryFolder experience, making it easier for you to analyze videos, capture insights, and share your findings. So, what are you waiting for? Dive in and discover the power of StoryFolder 0.2.7! As always, we're here to support you on your video analysis journey. If you have any questions, feedback, or need assistance, don't hesitate to reach out. Happy analyzing! Jeff Jassky --- # Instant Share Links: Publish and Share Video Analysis Notes + Storyboards in a click. URL: https://storyfolder.com/blog/instant-share-links-publish-and-share-video-analysis-notes Author: Jeff Jassky Published: 2023-06-03 Tags: Development Blog Reading time: 2 min Hello StoryFolder Community, With our brand-new feature, One-Click Publishing, you can instantly create sharable links from your notes and storyboards Now, you can quickly turn your insights into action, communicate your vision with your team, and impress your clients with your attention to detail and depth of industry knowledge. Let's Hello StoryFolder Community, With our brand-new feature, One-Click Publishing, you can instantly create sharable links from your notes and storyboards Now, you can quickly turn your insights into action, communicate your vision with your team, and impress your clients with your attention to detail and depth of industry knowledge. Let's get into these all-new capabilities. ![](/blog-media/instant-share-links-publish-and-share-video-analysis-notes/share-link.png) ### One-Click Publishing: Turn insight into action, fast. In the fast-paced world of video production, speed and efficiency are key. With One-Click Publishing, you can now share your insights instantly, accelerating your workflow and enabling faster decision-making. Just click a button, and your storyboard and notes are ready to be shared with your team, clients, or anyone else you choose. ## 👀 See a share link in action ### Check out these notes + storyboard on the Dollar Shave Club ad. [Open the Link](https://storyfolder.com/b/646feaea6276ac594213adf5?ref=blog.storyfolder.com) ### Beautiful Presentation The links generated by One-Click Publishing provide a comprehensive view of your video analysis. If you're working with a YouTube video, the page will include an embedded video for easy reference. You'll also find video-level notes for overarching insights, and a beautifully presented storyboard and notes. ![](/blog-media/instant-share-links-publish-and-share-video-analysis-notes/comprehensive-view.png) ### Multiple Views Viewers can easily switch between multiple presentation modes including Storyboard View, Thumbnail View, or a List View. This provides a complete, detailed, and interactive view of your analysis. ![](/blog-media/instant-share-links-publish-and-share-video-analysis-notes/view-switch.png) ### 🔒 Privacy Your Way We understand the importance of privacy and control when it comes to your work. That's why we've made it possible for you to choose the level of privacy that suits your needs. You can make your storyboard public, keep it private, or safeguard it with a password. You have full control over who sees your notes. ### 📱 Links are Mobile-Friendly In today's digital age, we know that you and your team are always on the go. That's why we've ensured that the links generated by One-Click Publishing are mobile-friendly. Whether you're in the office or on the move, you can access and share your storyboard and notes with ease. ## Here's another link. ### Check out this cinematic breakdown from Game of Thrones. [View the Notes + Storyboard](https://storyfolder.com/b/647269155473255d1351bfa7?ref=blog.storyfolder.com) In Conclusion One-Click Publishing is more than just a new feature — it's a new way of working. It empowers you to share insights faster, and work more efficiently. It's just one of the many ways we're working to make StoryFolder the best tool for video analysis. So, are you ready to transform your insights into action? Try One-Click Publishing today and experience the difference. Happy analyzing! Jeff Jassky --- # 10 Storytelling Takeaways from Game of Thrones: The Sept of Baelor Wildfire Attack URL: https://storyfolder.com/blog/10-storytelling-takeaways-from-a-game-of-thrones-sept-of-baelor-wildfire-attack Author: Jeff Jassky Published: 2023-05-27 Tags: Storytelling, Production Reading time: 7 min In this article we dive into the narrative devices and cinematic methods that contributed to one of 'Game of Thrones' most impactful scenes: the wildfire explosion at the Sept of Baelor. This HBO gem, beloved for its complex characters and detailed plot lines, offers a treasure trove of inspiration for In this article we dive into the narrative devices and cinematic methods that contributed to one of 'Game of Thrones' most impactful scenes: the wildfire explosion at the Sept of Baelor. This HBO gem, beloved for its complex characters and detailed plot lines, offers a treasure trove of inspiration for storytellers and filmmakers alike. We'll unravel the intricacies of this scene from the Season 6 finale using the StoryFolder video note taking app, and provide actionable tips to improve our own stories. Let's get into it. ![](/blog-media/10-storytelling-takeaways-from-a-game-of-thrones-sept-of-baelor-wildfire-attack/shot-01.jpg) **The Setup: Innocence and Naivety** The scene opens with Tommen, the boy king, wearing the royal crown. The crown, signifying power, symbolically opposes to his reality of innocence and naivety. In our own stories, we can use symbolism to highlight our characters strengths, or weaknesses. The irony of symbolic contrast can help amplify our characters and help audiences better their circumstances. ![](/blog-media/10-storytelling-takeaways-from-a-game-of-thrones-sept-of-baelor-wildfire-attack/shot-02.jpg) **Calm Before the Storm** As the sept fills with people, the tension subtly builds up. The blind trust of the populace in their religious leaders, their ignorance of the imminent danger, is sharply contrasted with the somber piano music that underscores the scene. This dramatic irony effectively heightens the tension and anticipation. When creating our narratives, we can consider using juxtaposition and dramatic irony to add depth and complexity. ![](/blog-media/10-storytelling-takeaways-from-a-game-of-thrones-sept-of-baelor-wildfire-attack/shot-04.jpg) **Cersei's Transformation** Cersei's transformation from her regular attire to her black dress signals a shift in her character - from a manipulative queen to a ruthless warrior. It's a clear example of foreshadowing, hinting at the major plot twist about to unfold. In our stories, use visual cues and character transformations to keep the audience engaged and curious. ![](/blog-media/10-storytelling-takeaways-from-a-game-of-thrones-sept-of-baelor-wildfire-attack/shot-07.jpg) **The Realization of Danger** Margaery's realization of impending danger due to Cersei's absence is an excellent example of foreshadowing through a character's intuition. Her growing suspicion amplifies the suspense and anticipation of the catastrophe about to unfold. As a storyteller, remember to use characters' intuitions and suspicions to subtly hint at forthcoming plot twists. ![](/blog-media/10-storytelling-takeaways-from-a-game-of-thrones-sept-of-baelor-wildfire-attack/shot-10.jpg) **The Ticking Time Bomb** The shot of a small candle amidst the bright green wildfire under the sept is a classic "ticking clock" plot device. The seemingly innocent object now becomes a ticking time bomb, symbolizing impending chaos. As the music swells into a crescendo, the tension becomes almost unbearable. Use such plot devices in our own work to keep the audience on the edge of their seats. ![](/blog-media/10-storytelling-takeaways-from-a-game-of-thrones-sept-of-baelor-wildfire-attack/shot-11.jpg) **The Explosion: A Moment of Horror and Disbelief** The inevitable finally happens as the Sept of Baelor explodes into a massive fireball. The horrified screams of the victims, the destruction of the sept, all create a profound impact on the audience. When you reach the climax of your story, ensure it's been properly built up and executed to create a similar effect. ![](/blog-media/10-storytelling-takeaways-from-a-game-of-thrones-sept-of-baelor-wildfire-attack/shot-13.jpg) **The Aftermath: Triumph Amidst Chaos** Following the explosion, we witness Cersei's cold-hearted triumph. The bright green flames of the explosion contrasting with the darkness of her quarters highlight the stark contrast of her victory amidst the destruction. Remember, the aftermath of your story's climax should resonate with its preceding events and leave a lasting impression on the audience. ## View the Storyboard ### Game of Thrones - Cersei's wildfire attack on the Sept of Baelor [View Storyboard](https://storyfolder.com/b/647269155473255d1351bfa7?ref=blog.storyfolder.com) ## Using these techniques in our own productions: ![](/blog-media/10-storytelling-takeaways-from-a-game-of-thrones-sept-of-baelor-wildfire-attack/shot-03.jpg) ### 1. Use Inverse Symbolism This technique uses symbols contrary to a character's reality to highlight their vulnerability. Like the crown on the young and naive king Tommen, which signifies power but instead, emphasizes his vulnerability in "Game of Thrones". - *Lord of the Rings*: The "One Ring", a symbol of ultimate power, ironically, becomes a burden and source of corruption for those who bear it. - *The Lion King*: The thorny crown that Scar puts on emphasizes his illegitimate claim to the throne. - *The Great Gatsby*: The grandeur of Gatsby's mansion, representing his wealth and social status, inversely symbolizes his loneliness and unfulfilled desires. - *Citizen Kane*: The opulence of Xanadu contrasts with Kane's personal unhappiness and loneliness. ### 2. Use Contrasting Music with Themes Using music that contradicts the scene's theme can evoke tension and anticipation. The somber music played over scenes of justice and divinity during the trial in "Game of Thrones" serves as a prelude to the impending doom. - *A Clockwork Orange*: The cheerful rendition of "Singing in the Rain" during a violent scene creates a chilling contrast. - *Jaws*: The light beach music contradicts the impending danger signaled by the iconic two-note motif. - Breaking Bad and Better Call Saul - These guys are known for ironically juxtaposing music. ### 3. Use Transformation To Move Plot Forward Transforming a character, like through a change in attire, can help to set up plot shifts. Cersei's transformation in "Game of Thrones" is a good example. - *The Dark Knight*: Bruce Wayne's transition to Batman via his costume change hints at his journey towards becoming Gotham's savior. - *The Matrix*: The characters' transition from everyday clothes to black attire marks their awakening to the true reality. ### 4. Use Social Issues To Connect Character actions and dialogues can be used to mirror larger societal issues. Loras's confession in "Game of Thrones" reflects misuse of religious authority. - *Black Mirror*: The show uses technology-driven plots to reflect societal issues related to dependence on technology. - *Parasite*: The entire film reflects societal issues like class discrimination and wealth disparity. ### 5. Use Mysterious Locations Mysterious locations can symbolize threats and increase suspense, like Lancel discovering the catacombs in "Game of Thrones". - *Lost*: The discovery of the hatch on the island hints at the series' deeper mysteries. - *Indiana Jones*: The unveiling of the Ark's resting place sets the stage for the film's climactic scene. ### 6 Use Contrast Contrast, like between characters and setting, can highlight differences and enhance storytelling, as seen in Cersei's silhouette against the brightly-lit Baelor in "Game of Thrones". - *Breaking Bad*: The contrast between Walter White's suburban life and his meth cooking alter ego, Heisenberg. - *Schindler's List*: The contrast between Schindler's initial selfishness and his eventual selflessness. ### 7. Sensing danger before others Suspense can be built by having one character sense danger before others, particularly when the character is known for their intelligence, similar to the way Margaery senses danger before others in "Game of Thrones". - *The Sixth Sense*: The young boy being the only one able to see ghosts builds suspense throughout the film. - *Alien*: Ripley's realization of the alien threat before others builds suspense and heightens tension. ### 8. Use The "Ticking Clock" Device This common, but effective plot device creates urgency by giving characters limited time to solve a problem, like the candle burning down amidst the wildfire in "Game of Thrones". - *Inception*: The use of a 'kick' to exit different dream levels gives the audience a sense of impending urgency. - *Dunkirk*: The race against time to evacuate the British troops heightens the tension. ### 9. Use Dramatic Revelation A dramatic revelation, when properly foreshadowed and executed, can leave a profound impact, like the explosion of the Sept of Baelor in "Game of Thrones". - *Fight Club*: The climactic revelation of the protagonist's split personality dramatically alters the audience's perception of preceding events. - *The Sixth Sense*: The climactic twist revealing that the protagonist himself is a ghost reshapes the entire narrative. ### 10. Use Symbolic Actions Symbolic actions can illustrate a character's mindset and convey a sense of conclusion or finality, as Cersei sipping wine overlooking the chaos she caused in "Game of Thrones". - *The Godfather*: Michael Corleone closing the door on his wife, symbolizing the end of his old life. - *Inception*: The spinning top at the end leaves the audience in suspense about Cobb's reality. ### Bonus: Use Silence During Emotional Performances Using silence during emotional scenes can help viewers empathize more deeply with the character, as seen in King Tommen's scene following the explosion in "Game of Thrones". - *Gravity*: The silence of space amplifies the isolation and desperation of the stranded astronaut. - *A Quiet Place*: The use of silence throughout the film heightens the tension and the emotional performances of the characters. The power of storytelling lies in the hands of those who master various techniques like symbols, music, foreshadowing, and more. Mastering these techniques, as demonstrated in "Game of Thrones", "Fight Club", and "The Sixth Sense", can truly elevate your storytelling craft. And one tool that can truly elevate your storytelling craft is StoryFolder. With features that allow you to meticulously dissect your favorite scenes, gain insights from successful productions, and apply these lessons to your own projects, StoryFolder is a comprehensive platform for aspiring storytellers. And the best time to start? It's now. With StoryFolder's current offering of exclusive features and tutorials, there's no better time to dive into the intricate world of storytelling. So don't just be a spectator of stories. Engage with them, dissect them, and become the master storyteller you're meant to be. Unleash your storytelling potential with StoryFolder today. Your narrative masterpiece awaits. --- # StoryFolder Opens Public Beta + New Pricing URL: https://storyfolder.com/blog/open-public-beta-plus-lower-pricing Author: Jeff Jassky Published: 2023-05-24 Tags: Development Blog Reading time: 1 min Open Public Beta  🎉 We're thrilled to announce that StoryFolder is now officially in public beta! Now anyone can install the app and access all of the features of StoryFolder. This marks a significant milestone in our journey, and we are grateful for your support along the way. Download the App ## Open Public Beta  🎉 We're thrilled to announce that StoryFolder is now officially in **public beta**! Now anyone can install the app and access all of the features of StoryFolder. This marks a significant milestone in our journey, and we are grateful for your support along the way. Download the App Our team has worked tirelessly to refine and improve our platform based on your valuable feedback during the private beta. As we transition to public beta, we look forward to welcoming more users and continue improving our services. ## New, lower pricing 💰 To make StoryFolder more accessible, we're rolling out a **new, lower pricing** structure! Now, you can access StoryFolder's basic features for **as low as $6 per month**. We're also offering new Pro and Business tiers that include advanced features. All tier levels are offering a **free trial for 7 days.** Whether you're a seasoned production professional or a newbie in the video world, StoryFolder provides tools designed to help you bring your creative visions to life. There's more on the horizon, so stay tuned for more updates on new features and improvements coming to StoryFolder soon. We'll be diving into these in detail in our upcoming emails. Thank you once again for your continued support in StoryFolder. We're committed to helping you create your best work and can't wait to see what you will create next. Best,Jeff Jassky --- # Behind the launch of the StoryFolder Desktop App URL: https://storyfolder.com/blog/behind-the-launch-of-the-storyfolder-desktop-app Author: Jeff Jassky Published: 2022-05-01 Tags: Development Blog Reading time: 3 min In this post I'll share some behind-the-scenes details on turning the StoryFolder web application into a native app for desktop users — It starts with feature voting system and results in the debut of a desktop app. During this time I implement features requested by users,  try to balance a software In this post I'll share some behind-the-scenes details on turning the StoryFolder web application into a native app for desktop users — It starts with feature voting system and results in the debut of a desktop app. During this time I implement features requested by users,  try to balance a software launch with a cross-country move, and experience the excitement of launching my first paid software product. ## The Feature Voting Experiment After launching the web-based version of StoryFolder I introduced a feature voting system, enabling users to vote on potential enhancements for the application. Presented in a survey format, users could request new features, or upvote other features they wanted to see developed. After several months of gathering data, the results were in. Although I can't recall the exact ranking of the features, I distinctly remember that the most upvoted individual feature was a desktop version of the app. This really made sense and the comments made it even more clear as the primary pain point for users seemed to be how long it took to upload their videos to the site. So, with the results in, I knew what I had to do. ## Venturing into Desktop App Development Admittedly, I am not a native app developer; my experience is more in developing web technologies. However, in my previous company, I gained experience in creating a desktop app using web-based technologies, specifically the Electron framework; the same framework companies like Slack and Spotify use for their desktop apps. Before development, I identified a handful of other features from the feature voting survey that would substantially enhance its utility. These features included adjusting shot discovery sensitivity, visualizing output as a storyboard, making adjustments as necessary, adding notes to shots, and previewing the storyboard prior to exporting. I planned to incorporate these features before releasing the app publicly. I got to work and started focusing on developing the brand new desktop app. Simultaneously, I was planning a cross-country move from Brooklyn, New York, to Tampa, Florida. As time crept forward, I realized that launching such a relatively ambitious product in the middle of moving wasn't the right move. Ultimately, I scheduled the StoryFolder Desktop's release for a week after moving in to my new place in Clearwater. ## The Launch A few weeks after settling in Florida, I updated the website, uploaded the app, and dispatched the inaugural batch of emails to those who had previously utilized the web-based application. The reception was encouraging, resulting in a handful of paid customers on the first day alone. This marked my debut as a paid software product creator and instilled a profound sense of pride and accomplishment. As ecpected, a handful of bug reports came in. They were squashed pretty quickly and uneventfully, releasing new patches and a few minor versions of the app. ## Summary The launch of StoryFolder Desktop has been a fun and enriching experience. It's helped me put my values of embracing user feedback into practice in a practical way that's created more value for my users. It's also given me the thrill of successfully launching my first paid software product — which is a deeply meaningful milestone in my life and career as a software developer. I'd also like to express my gratitude to my customers and users for their support and enthusiasm for StoryFolder, and give a special thank you to the talented open-source team behind Electron JS, whose efforts made it possible for StoryFolder Desktop to exist. Together, we will continue to enhance and expand StoryFolder, ensuring it remains an indispensable tool for storytellers and creatives alike. ## Like this story? ### Learn about StoryFolder's beginnings [Read the story](https://blog.storyfolder.com/the-idea-behind-storyfolder/) --- # StoryFolder's Beginnings: Developing and launching a web app in 48 hours URL: https://storyfolder.com/blog/the-idea-behind-storyfolder Author: Jeff Jassky Published: 2022-01-01 Tags: Development Blog Reading time: 3 min Having breakfast in a coffee shop, tasked with producing a Kickstarter video for a hardware product I was working on at the time, I was ready to start storyboarding. As a software engineer, I'm not a storyboard artist - But I have some of experience in video production. I figured, Having breakfast in a coffee shop, tasked with producing a Kickstarter video for a hardware product I was working on at the time, I was ready to start storyboarding. As a software engineer, I'm not a storyboard artist - But I have some of experience in video production. I figured, why storyboard from scratch when there are already so many amazing, effective kickstarter videos? After all, a lot of them share a lot of the same format, or at least similar elements. At the time, Wazer's Kickstarter video introducing the all-in-one desktop waterjet, was a major inspiration. Considering they raised over $1 million and the fact that I knew some of the guys, I wanted to create a storyboard based on their video. Sipping coffee and scrubbing through the video I began marking frames and sections that had elements that I liked. Something I'd done many times in the past. But today, I had a new thought: 🤔... I bet I could quickly write some code to automatically identify the shots in this video and show me a storyboard! ## The Prototype With my past experience, I was pretty familiar with a variety of video processing tools. Years ago I'd used OpenCV and Python to detect motion in video – and I figured I could use the same ideas to detect cuts. I went home, prototyped some code in about 20 minutes. And... **It worked! **I had the entire Wazer Kickstarter video split into individual shots. I just needed a few more lines of code to create a printable PDF of the storyboard. ## Testing the market My proof of concept worked for me, but who else might want something like this? I knew that film students, film makers, and professors might always analyze iconic film scenes and inspiration material... And I knew brand marketers and content creators were always analyzing competition and looking for an edge. So, I joined several Facebook groups for indie filmmakers and posted the idea to gather feedback. The next morning, I woke up to hundreds of replies from people eager to try it. ## The MVP Now, if this many people were interested - there needed to be a interface. I wanted to keep it simple. Avoid over-engineering. The requirements were straightforward: - MP4 files only - 50MB or less - One single button. ![](/blog-media/the-idea-behind-storyfolder/one-button-mvp.png) The interface would be a single button labeled "Select MP4 file." No user accounts or paywalls, just one button that converts an MP4 file into storyboard assets. Now, I needed to get the code working online. I knew that analyzing video with OpenCV would be processor-intensive, so I leveraged my experience with CI/CD pipelines, Docker, and AWS to create a scalable deployment system. The front end and API were created using Vue, Express, NodeJS, and hosted on a private GitHub repo. ![](/blog-media/the-idea-behind-storyfolder/infrastructure.png) ## Then, I sent it! I replied to **hundreds of comments** and sent **hundreds of DMs** sharing the tool with the Facebook users who showed interest. Within a week, over 600 users had tried StoryFolder. > Within a week, over 600 people had tried StoryFolder. ## Now, I need to get feedback - and fast To gather user feedback quickly, I set up a Facebook ChatBot using ManyChat. This provided an easy way for users to share their thoughts on the tool, sign up for a product newsletter, and even make donations to support server costs. ## What's the future of StoryFolder? With enough interest, I'm currently working on a paid version of StoryFolder, offering more developed features to help video makers get the most out of their inspiration material. I've already released some improvements, thanks to the help of some dedicated users who have been testing various videos and sharing their insights. Is the launch a success? Commercially, no. Personally however, it's been a valuable experience in launching a product quickly and embracing the "launch early" and "fail fast" mindset. 👉**Spoiler Alert: **StoryFolder has grown a lot since this post. Follow the story on the [StoryFolder development blog](https://blog.storyfolder.com/tag/development-blog/). ## In Conclusion The experience of creating and launching StoryFolder has been fulfilling and enlightening. I've learned the value of acting on inspiration, simplifying the development process, and embracing the power of social media. As StoryFolder continues to evolve, I'm excited to see how it will empower filmmakers, content creators, and educators to transform their creative vision into reality more efficiently. Thank you to everyone who has supported and tested StoryFolder so far. Your feedback and encouragement have been invaluable. Let's continue to build and shape the future of storyboarding together! Stay tuned for more updates and improvements to come. - Jeff Jassky --- # Hello from Jeff Jassky, the developer behind StoryFolder 👋 URL: https://storyfolder.com/blog/hello-from-jeff-jassky Author: Jeff Jassky Published: 2022-01-01 Tags: Development Blog Reading time: 2 min My name is Jeff Jassky. I live in New York City with five great roommates, my girlfriend, and my adorable pet turtle Francine. Recently, I was working on some of the biggest projects of my career. I was poached by a premium video streaming service to move to New York My name is Jeff Jassky. I live in New York City with five great roommates, my girlfriend, and my adorable pet turtle Francine. Recently, I was working on some of the biggest projects of my career. I was poached by a premium video streaming service to move to New York and write code for their streaming video platform. The projects were interesting. There were millions of users, the team was talented, and I got to work in a fancy Midtown Manhattan office. It was considered to be a great job. Especially for being a home schooled, self-taught engineer. The problem was - I didn't actually like it. I kinda hated it. Every day began feeling the same. Creativity was generally frowned upon. My ideas didn't matter and weren't considered - which is fair enough considering the size of the company, but it didn't make me like it any better. Nights and weekends ended up being my creative time. I worked hard on side projects that inspired and excited me. I worked late into the nights, sometimes overnight, doing I loved - collaborating with friends and experimenting with new technologies. One day in my office cubicle I felt a change. It was time to leave. I had more energy to dedicate to the creative people and projects that I cared about. I left the company to work on creative projects full-time. StoryFolder was born in that time out of a love of filmmaking, production, and storytelling. With your support we can make all-new tools that make production workflows more joyful, more creative, and let you and your team focus on doing what you love. There are big ideas in the works for StoryFolder. You can help keep the beta online and free for everyone as I develop and release new feature requests from the community by [Joining me on Patreon](https://patreon.com/storyfolder?ref=blog.storyfolder.com) or consider upgrading to [StoryFolder Pro](https://storyfolder.com/original?ref=blog.storyfolder.com#). With the support of you and the rest of the Beta community, we'll build something great together. I appreciate you being part of it, - Jeff Jassky ![](/blog-media/hello-from-jeff-jassky/portrait.jpg)