How I Used ChatGPT (and Its Vision Tools) to Design, Build, and Ship a Mac App That Solves a Real Editing Problem
If you’ve ever worked with proxy workflows in Adobe Premiere Pro, you might’ve run into this frustrating issue:
You relink your proxies to the original footage, and suddenly…
“The audio channels don’t match.”
And Premiere just won’t let you relink.
There are a few forum posts, some Reddit threads, a lot of swearing — but unless you’re comfortable running FFmpeg in a terminal, there’s no clean, fast, reliable tool for batch-converting video files to match a specific number of audio channels without re-rendering your files.
So I decided to fix it.
🧠 Step 1: Mocking Up the App (with ChatGPT Vision)
I started by mocking up a very simple UI:
A dark, minimalist macOS app where you could:
- Select an input folder of
.mp4
or.mov
files - Select an output folder
- Choose the number of audio channels you want (e.g., 2, 6, or 8)
- Click a button, and have FFmpeg process all the files in a batch
I uploaded the mockup to ChatGPT and asked:
“Can you make an app with UI that looks exactly like this?”
I also explained the functionality I wanted, and within seconds, it generated the full code — and I was running a working app locally in minutes.
🛠 Step 2: Adding the Smart Logic
I wanted this app to be effienct and smart. I wanted it to:
- Detect how many channels each file currently had
- Only reprocess if the channel count didn’t match
- Add silent channels if needed, or downmix if there were too many
ChatGPT helped me tweak the Python logic using ffprobe
to inspect each file before processing.
It even streamed the FFmpeg logs to a styled console inside the app.
🎨 Step 3: Refining the UX
With a few more prompts, I added:
- A slim, modern progress bar
- A real-time console window
- A custom icon (designed using ChatGPT’s image generation!)
🚧 Step 4: Handling Real App UX
Then came the finer polish:
- Disabling the “Start” button while processing
- Adding a prompt if the output folder wasn’t empty
- Making the layout match my mockup exactly
- Embedding FFmpeg and FFprobe binaries for full offline use
I didn’t have to look up PyQt docs or dive into Stack Overflow — I just asked ChatGPT for what I needed in plain English, and it gave me working, styled code every time.
🧳 Step 5: Packaging It for Distribution
When I was ready to share the app with my team, I had ChatGPT walk me through:
- Using PyInstaller to bundle the app as a macOS
.app
- Including all necessary files (like the binaries and assets)
- Creating a zipped, self-contained version I could share
- Signing and notarizing it so it wouldn’t trigger security warnings
I didn’t even know where to begin with Apple’s notarytool
, but ChatGPT generated the full step-by-step process and even explained the terminology along the way.
🧩 The Problem This Solves (And Why It Matters)
This app solves a specific, annoying problem in editing:
When proxies are rendered with the wrong number of audio channels, you can’t relink to the originals in Premiere Pro.
There’s no quick fix in Media Encoder without re-encoding all the files. No way to patch or remap the files.
This little tool does exactly what you need:
Select folder → Set correct audio channels → Done
It removes a friction point that causes real pain in creative workflows.
🤖 Why This Workflow Was So Powerful
This wasn’t just “using AI to code.”
It was:
- Designing with ChatGPT Vision (UI mockup to production)
- Writing code collaboratively (like a pair programmer)
- Getting help debugging, polishing, and shipping
- Learning best practices along the way
I still wrote code, made creative decisions, and designed the experience — but ChatGPT made the process 10× faster and way more fun.
🧰 Tools Used
- ChatGPT 4 with Vision (for UI mockup understanding + code)
- PyQt5 (for the app interface)
- FFmpeg + FFprobe (for audio stream processing)
- PyInstaller (for bundling into a
.app
) - Apple’s codesign / notarytool (for distribution)
🚀 Wrapping Up
If you’re a filmmaker, editor, or assistant editor — and you’ve ever been stuck re-rendering proxies just to match audio channels — this little app can save you hours.
And if you’re a builder, designer, or creative who’s been curious about using AI to go from mockup → working app → distributed build — I highly recommend trying it.
You’ll be amazed how far you can go with a single idea, a rough sketch, and ChatGPT.