ChopShop documentation
The everyday audio + video editor for Mac, iPhone and iPad. Open a clip, chop it, ship it. This page walks through every feature in the order you'd actually meet it: install, drop a clip, edit, export. It describes the Mac app; On iPhone and iPad covers what's different on a touchscreen.
Installation
ChopShop comes three ways on the Mac. The download from bendansby.com/apps/chopshop is a standard .dmg — open it and drag ChopShop.app to your Applications folder. The Mac App Store version installs and updates the usual way. The Setapp version is a one-time purchase, not part of a Setapp Membership subscription; it installs through the Setapp client, with no separate license key and no trial.
Requires macOS 15 Sequoia or later, on Apple Silicon or Intel. The direct-download build auto-updates via Sparkle; you can also check anytime via ChopShop → Check for Updates…. The Mac App Store and Setapp builds update through their own channels. See License for the differences between the three.
There's also a native iPhone and iPad app on the App Store. It's the same purchase as the Mac App Store version — buy it once and it's on all three. See On iPhone and iPad.
Supported formats
ChopShop opens any media file macOS reads natively — MP4, MOV, M4V, M4A, MP3, WAV, AIFF, AAC — plus four formats it converts on import:
- Matroska (
.mkv) - WebM (
.webm) - Ogg (
.ogg,.ogv,.oga,.opus) - FLAC (
.flac)
The conversion runs in the background the first time you import a given file and is cached, so re-opening the same source is instant. MKV files that already contain H.264 or HEVC video and AAC audio are repacked without re-encoding — no quality loss, no wait. Everything else is re-encoded via Apple's hardware video and audio encoders, which means full speed on Apple Silicon.
Conversion is powered by a bundled LGPL build of FFmpeg. Corresponding source is at bendansby.com/apps/chopshop/ffmpeg-source/; the LGPL v3 notice is in the About ChopShop window.
Quick start
- Open ChopShop. Either click Choose Files… or drag any media file from the Finder onto the window.
- The video appears in the preview area at the top; the timeline shows the clip on its rails at the bottom — video on top, audio underneath.
- Press Space to play, again to pause.
- Move the playhead to where you want to cut and press ⌘K. The clip splits in two — drag the half you don't want off the timeline, or press ⌫ to delete it.
- Press ⌘E to export. Pick a format, pick a location, done.
To add more media later, pick File → Import Media… (⌘I) — the file picker slides down from the project window — or drop more files onto the window. New clips go on the end of the timeline. When you add several files at once, they line up by name the way the Finder sorts them, so Clip 2 comes before Clip 10 and a camera's numbered files land in the order you shot them.
The .chop file
Your project saves as a .chop file. It's small — kilobytes — because it doesn't contain any of your media; it just remembers which files you imported, where they sit on the timeline, and how you trimmed them. You can move .chop files around, email them, keep them in any folder.
If you move one of the source clips out from under it, ChopShop will ask you to point to the new location the next time you open the project. See Missing media.
To take a project to another Mac, an iPhone or an iPad, use Export Project, which packs the media in with it.
Layout
The window has two parts:
- Preview area at the top — your video plays here.
- Footer panel at the bottom — the play button, timecode, the Split / Set In / Set Out buttons, the timeline, and Crop & Flip / Export live here.
Hover the empty strip across the top of the window to see the document name; click it to drop a Finder-style path menu. Drag anywhere in the preview area to move the window around your screen.
View → Fit Window to Video (⌘⇧0) sizes the window so the video fills the preview area exactly — no black bars.
Audio + video tracks
The timeline has two rows: a video row on top (film-strip icon in the gutter on the left), an audio row underneath (waveform icon). A clip with both video and audio sits on both rows by default and moves as one.
Each video clip shows a thumbnail of its own in-point rather than the start of the file, so two clips cut from one movie don't look alike — and a movie that opens on black doesn't show a black card.
Hover a linked clip and click the link button in its middle — or right-click → Unlink Audio, or press ⌘⌥L — to separate the two halves so you can slide one without the other. Useful for J and L cuts. Right-click either half → Re-link Audio to reattach them.
Selecting clips
Click any clip to select it. ⇧-click extends the selection to a range; ⌘-click adds or removes single clips from the selection. You can mix-and-match across both rows in one selection.
Click an empty gap between clips — or the empty space before a row's first clip — to select the gap. With a gap selected, press ⌫ to collapse it — every later clip slides left to close the hole. The button in the footer flips between Delete Clip and Collapse Gap so you can tell what ⌫ will do.
Scrubbing and playback
Space plays and pauses. Drag the round playhead handle above the timeline to scrub by hand; playback pauses automatically while you drag.
The turquoise LCD readout in the footer shows the current time and (for video projects) the current frame number.
The arrow keys move the playhead one frame at a time. Hold modifier keys to step farther or to slide the selected clip instead:
| Key | Action |
|---|---|
| ← / → | Nudge playhead 1 frame |
| ⇧← / ⇧→ | Nudge playhead 10 frames |
| ⌥← / ⌥→ | Nudge selected clip 1 frame |
| ⌥⇧← / ⌥⇧→ | Nudge selected clip 10 frames |
Moving clips
Drag a clip along the timeline to move it. Drop it onto other clips and it slots in at the nearest join, with the clips after it moving along to make room — no hole is left where it came from. Drop it in empty space and it stays exactly where you let go.
Drop a clip into a gap between two clips and the gap closes up: the clip sits right after the first one, and the rest of the timeline moves up to meet it. If the clip is longer than the gap, the clips after it move along instead. With several clips selected, the whole selection moves as one block.
Trimming
Hover any clip — small chevrons appear at the left and right edges. Drag an edge to trim. While you drag, the preview shows the source video at the new in/out point so you can see exactly where you're landing.
Release to commit. ⌘Z undoes.
On a looped clip, the right edge marks where the repeats stop rather than the out-point, so dragging it adds or removes repeats. It snaps to whole passes as you go. Set Out does the same from the playhead.
You can also mark in/out from the playhead. With a clip selected, position the playhead and press I for Set In, O for Set Out — or click the two arrow buttons beside the scissors in the transport bar, which do the same thing. They dim when no clip is selected, since there’d be nothing to trim.
Splitting
K (or the scissors in the transport bar, or Clip → Split at Playhead) splits the clip under the playhead in two. ⌘K still works if that’s what your hands know. When more than one clip overlaps the playhead, the split prefers your selected clip; without a selection, it splits the topmost clip.
Crossfades
Where two clips meet, hover the join. The two trim handles part, opening a gap with a crossfade button in it — the parting is also what makes each handle easier to grab, since the two otherwise sit shoulder to shoulder.
Click the button and the clips overlap by half a second and dissolve into one another, picture and sound together. Click it again to pull them back to a straight cut.
Neither clip loses any of its own footage. The incoming clip simply starts half a second earlier, and everything after it slides left by the same amount — so the project gets half a second shorter and nothing else moves relative to anything else.
The overlap is marked on the timeline with two crossing ramps, so you can see at a glance which joins dissolve and which are hard cuts. Hover it and the button turns into an ✕ to take the dissolve away again.
A dissolve shortens itself rather than breaking if you edit around it: drag the clips apart and it quietly becomes a plain cut, drag them back together and it returns. Clips of different sizes crossfade correctly too — each is fitted into the export frame exactly as it is either side of the dissolve.
Crossfades rule out a lossless export, since the overlapping frames have to be blended and written out. See Lossless vs re-encode.
Deleting and collapsing
⌫ deletes the selected clip. If multiple clips are selected, they all go in a single undo step. If a gap is selected instead, ⌫ collapses the gap — every later clip on both rows slides left to close it. The audio and video halves of any unlinked pairs stay aligned with each other through the slide.
The empty space before a row's first clip collapses the same way, pulling that row back to the start of the timeline. When the video and audio rows both start at the same moment, collapsing either moves both, so they stay in sync.
Link / Unlink audio
A video clip with sound starts linked — the audio and video halves move together. ⌘⌥L toggles the link state:
- Linked. Drag, trim, or split affects both halves in lockstep.
- Unlinked. The two halves move independently. Use this for J cuts (audio leads the video by a beat) and L cuts (audio trails into the next shot).
A linked clip shows a link button in its middle when you hover it or select it; click it to unlink. Once the halves are apart, reattach them from the menu: right-click either half → Re-link Audio, or Clip → Re-link Audio.
Retime and loop
Select one or more clips and pick Clip → Retime and Loop…, or right-click a clip. The switch at the top of the sheet picks what you're changing:
- Retime changes the playback speed. Presets run from 0.25× to 4×, and the field takes any exact rate in that range.
- Loop plays the clip back to back as many times as you like — 2×, 3×, 4×, 6× and 8× presets, or any count in the field. Partial counts work too: 2.5 plays the clip twice and then its first half, so a loop can end exactly where you need it.
With a single clip selected, the sheet shows its length on a mini-timeline. Drag the end and ChopShop works out the speed, or the number of repeats, that fits. The end snaps to the clip's original length, to the gap before the next clip — fill it exactly without pushing anything along — and to the end of the rest of the timeline, which is handy for stretching a video over its soundtrack. In Loop mode it also snaps to whole passes.
Speed and looping combine: the rate applies within each pass, and the loop repeats the pass. Switching between the two modes keeps whatever you've set in the other, and Apply changes only what you actually touched, so a selection of clips at different speeds keeps its speeds when you only loop it. One Apply is one undo step. A lengthened clip pushes the clips after it along rather than overlapping them, and a clip's audio and video stay in sync even if you'd previously unlinked them.
On the timeline, a looped clip repeats its filmstrip or waveform once per pass, with a thin line where each repeat begins. Looping doesn't cost you a lossless export: the repeats are plain copies of the same footage, so a looped clip still copies straight through when the rest of the project allows it.
Reverse
Select clips and pick Clip → Reverse. Reversing video is heavy work, so ChopShop quietly renders a reversed copy in the background while you keep editing. A spinning indicator in the clip body lets you know it's working; you can still scrub the forward version in the meantime. When the render finishes, playback flips to reversed.
Reversed copies are kept on hand, so toggling reverse off and back on is instant. If you save and reopen the project later, the reversed copy re-renders in the background and the result is the same.
Export
Press ⌘E to open the export sheet:
- Format. MP4 or MOV for video projects; M4A or WAV for audio-only.
- Filename. Defaults to the first clip's name with - chopped appended.
- Width and height. Export at any size in pixels. With the lock closed, the height follows the width so the picture keeps its proportions; open it to set the two independently. Reset puts both back to the project's own frame size. Video projects only.
- Frame rate. Original keeps each clip's own frame timing. Pick 24, 25, 30, 50 or 60 fps instead for a file that runs at one steady rate — useful when a retimed clip, or footage shot at different rates, would otherwise leave the export's frame rate wandering from one clip to the next. A fixed rate always re-encodes. Video projects only.
- Clips. Tick Export each clip as its own file to write every clip on the timeline out separately instead of stitching them into one. You choose a folder rather than a filename, and the files are numbered in timeline order so they sort correctly in the Finder. Each file starts at its own first frame and keeps its own size, rather than being letterboxed into the project's largest frame. Offered when the project holds more than one clip and they're all video or all audio-only.
- Output. A short status line showing how many clips, the total duration, and whether the export will be lossless or re-encoded — see below.
Where the project holds videos of different sizes, the export frame is the largest of them (after any crop) and the rest scale into it. See Crop and flip.
Every video export carries a sound track. If nothing in the project has sound, ChopShop writes a silent one, so upload sites that insist on an audio track don't turn the file away as broken.
Click Save…, pick a destination, and ChopShop runs the export. When it finishes, the Finder reveals the file. If something goes wrong, ChopShop tells you why instead of failing silently.
Switch to another app mid-export and ChopShop notifies you the moment it's done, so a long re-encode doesn't need watching. Click the notification to come back to the app. Nothing is posted while ChopShop is frontmost — you get the Finder reveal instead.
Export Project
File → Export Project… (⌘⌥E) saves your project in a new folder together with a copy of every media file it uses:
Beach Edit/
Beach Edit.chop
Media/
Beach.mov
Voiceover.m4a
Move that folder to another Mac, an iPhone or an iPad and the project opens with its media in place, instead of asking you to relink each clip. If ChopShop can't read the Media folder on its own, it asks you once to choose the project's folder.
Each file is copied once, however many clips you cut from it. A file ChopShop converted on import (MKV, WebM, Ogg) is copied as the converted movie, so it opens anywhere. Your open project is left as it was. If any clips are missing when you export, ChopShop tells you how many couldn't be copied, so you can relink them in the exported project.
Crop and flip
Click Crop & Flip… in the footer — or pick Clip → Crop & Flip…, or right-click a clip on the timeline. The sheet opens on the first file in its list.
Framing belongs to the file, not the clip. Crop one movie and every clip you cut from it is framed the same way — including halves you split off later, and copies you paste. That's the point: chopping one source into six pieces shouldn't mean cropping six times.
The file drawer
When a project holds more than one video file, a Files list runs down the left of the sheet — one row per file, with a thumbnail of the frame shown on the canvas, its cropped size, and a small crop or flip badge once you've framed it. A file that's been cut into several clips is still a single row, labelled · 3 clips so you can see how much a change is about to move. Click a row to frame that file.
Setting the crop
The canvas shows a real frame from the file with the crop box drawn on it; everything outside the box is dimmed. For a file with a clip under the playhead, that's the frame you're looking at in the preview; for any other file, it's the middle frame of its clip. Vertical video gets its own layout, with the size controls beside the picture rather than under it. Drag inside the box to move it, or drag any of its eight handles to resize. Below the canvas:
- X and Y. The output size in pixels, if you'd rather type it than drag it. The arrow keys nudge a field by 1, ⇧ with them by 10.
- Maintain proportions. Keeps the source's aspect ratio while you resize, on the handles as well as in the fields.
- Origin grid. The 3×3 grid pins the crop window to a corner, an edge, or the middle of the source frame. It also reports: no cell is lit when you've dragged the box somewhere in between, rather than claiming an anchor the crop doesn't have. An axis with nothing trimmed off it reads as centred, since the window fills it.
Typing a new size keeps the window where it is — a centred crop stays centred, a hand-placed one keeps its place.
Flipping
The two buttons at the top right of the sheet mirror the file horizontally or vertically, and the canvas shows the flip as you set it. Clip → Flip Horizontally and Flip Vertically do the same thing from the menu bar without opening the sheet. Like crop, a flip belongs to the file.
The export frame
With one video, the cropped size is the exported size. With several, the export frame is the largest cropped file and the rest scale into it — the note under the canvas names which file is setting the frame and what the current one will scale to, so you're not guessing.
Back in the main window
The preview keeps showing the uncropped frame, with a translucent red overlay marking what will be trimmed. The overlay follows whatever clip is under the playhead, mirrors along with a flipped file, and skips stretches of the timeline that are audio-only, where there's nothing to crop.
Reset This File at the bottom of the sheet clears that file's crop and flips together; other files keep theirs.
Lossless vs re-encode
The status line below the timeline tells you which kind of export is queued up:
- Lossless ✓ — every clip shares the same format, nothing is cropped or flipped, and no clips overlap or crossfade. ChopShop can stitch them together without re-encoding, so the export finishes in seconds and the picture is identical to the source. Retiming rules this out, but looping doesn't.
- Re-encode — at least one of those conditions doesn't hold. ChopShop re-encodes the output once and names the reason in parentheses: crop, flip, crossfade, overlap, mixed formats, the trial watermark, resize if you set a width in the export sheet, or frame rate if you picked a fixed one.
Copy current frame
Right-click the preview area → Copy Current Frame, or pick Edit → Copy Current Frame. Captures the current frame to the clipboard as a PNG — without the red crop overlay. Disabled when the playhead is over an audio-only section.
Missing media
If you open a project whose source files have been moved or deleted, the missing clips appear on the timeline as hatched warning bars labeled Missing: filename.mov. Click Locate… on the bar (or right-click → Locate File…) to pick the file from a Finder dialog.
The relinked clip keeps its trim, timeline position, link state, playback rate and loop. If the new file happens to be shorter than the old trim, the trim shrinks to fit.
Media changed elsewhere
If you change, trim or replace a clip's file in another app while the project is open, ChopShop picks up the new version when you switch back to it. Every clip cut from that file keeps its edits; if the file got shorter, trims shrink to fit. If the file was deleted, its clips turn into missing bars, ready to relink — and if it comes back, they reload.
On iPhone and iPad
ChopShop is a native iPhone and iPad app as well — the same editor, adapted to the screen rather than cut down. The two-track timeline, trim handles, split, link/unlink, retime, reverse, crop and export are all here, and it reads and writes the same .chop file, so a cut you start in one place opens in the other.
- iPad keeps the Mac's proportions: preview on top, transport and timeline together in one footer.
- iPhone splits that transport across two rows in portrait, and tightens every measurement in landscape, where the whole screen is shorter than the iPad's footer alone. Same controls either way.
- Clip actions live behind the … button on the clip itself — Split at Playhead, Set In, Set Out, Re-link Audio, Reverse, Retime, Cut/Copy/Paste and Delete Clip. A missing clip shows Locate File… there instead.
- Crop is a simpler sheet here: it frames the file under the playhead, with the same X/Y size fields, proportions lock and origin grid, but without the Mac's file drawer and drag-handle preview. Flips are honoured — a project flipped on the Mac exports flipped here — but there's no control to set one on iOS.
- Projects exported on the Mac with Export Project open here with their media. Open the
.chopinside the exported folder, and when asked, choose that folder so ChopShop can read its Media folder. Export Project itself is Mac-only. - Import from Files or from your photo library. Files you pick together line up by name; photos keep the order you tapped them in. Export hands the finished file to the system save sheet, so it lands wherever you keep things.
- Projects open and save through the system document browser, so they can live in iCloud Drive or anywhere else.
- With a hardware keyboard attached, the common shortcuts work: Space, I, O, ⌘K, ⌫, ⌘I, ⌘E, ⌘Z.
- Export writes one stitched file at the clips' own frame rate — the Mac's Frame rate menu and per-clip export aren't here.
- Loops made on the Mac play and export looped here, and dragging a looped clip's end changes how many times it repeats. There's no control to start a loop on iOS — set that up on the Mac.
- No export notifications here. If an export finishes while you're in another app, the save sheet is waiting the moment you come back.
The iPhone and iPad app is a single App Store purchase shared with the Mac App Store version. There's no trial, no license key, and no Setapp build on iOS.
Keyboard shortcuts Mac
| Keys | Action |
|---|---|
| Space | Play / pause |
| I / O | Set In / Set Out |
| K | Split at playhead (⌘K also works) |
| ⌫ | Delete clip / Collapse gap |
| ⌘⌥L | Link / Unlink audio |
| ← / → | Nudge playhead 1 frame |
| ⇧← / ⇧→ | Nudge playhead 10 frames |
| ⌥← / ⌥→ | Nudge clip 1 frame |
| ⌥⇧← / ⌥⇧→ | Nudge clip 10 frames |
| ⌘= / ⌘− / ⌘0 | Zoom in / out / fit timeline |
| ⌘⇧0 | Fit window to video |
| ⌘O | Open project |
| ⌘I | Import media |
| ⌘E | Export |
| ⌘⌥E | Export Project |
| ⌘X / ⌘C / ⌘V | Cut / Copy / Paste clips |
| ⌘Z / ⌘⇧Z | Undo / Redo |
The single-letter shortcuts (K, I, O, ⌫, arrow keys, Space) pause themselves whenever a text field has focus — so typing in the Crop, Retime and Loop, or Export dialogs always types letters, not commands.
Languages
ChopShop is localized into English, Deutsch, Español, Français, Italiano, 日本語, 한국어, Português (Brasil), Українська, Русский, and 简体中文. It picks the right language automatically based on your System Settings → General → Language & Region preferences.
To pin ChopShop to a specific language without changing system preferences, open System Settings → General → Language & Region → Applications, click the + button, and pick ChopShop.
License
ChopShop ships through three channels on the Mac — pick the one that fits how you like to pay for software:
- Direct download. 7-day free trial with every feature unlocked, no watermark, no reminders. A one-time license then unlocks unlimited clean exports. Buy via ChopShop → Buy License… in the menu bar; activate via Enter License…. Activation needs the internet briefly, then works offline; ChopShop revalidates quietly in the background so refunded or revoked keys stop working. Once the trial ends (and only until a license is entered):
- Every other export shows a quick license reminder.
- Video exports get a translucent "Cut with ChopShop" stamp across the centre of each frame.
- Audio-only exports get a brief spoken "Cut with ChopShop" tag mixed in every twenty seconds.
- Mac App Store. Paid through Apple's standard pipeline — buy it once, no separate license key, no trial. The same purchase covers the iPhone and iPad app.
- Setapp. A one-time purchase through Setapp — bought outright, not part of a Setapp Membership subscription. No separate license key; Setapp handles the purchase and delivers updates automatically. The app runs through the Setapp client, so keep it installed and your Setapp account active.