Smart, not stubborn
Only re-encodes what your device can't play. HEVC stays HEVC. AAC and EAC3 pass through. AC3 → AAC because the iPad TV app silently drops AC3 from its audio switcher.
A native macOS app that transcodes and syncs your video library straight into the built-in iOS/iPadOS TV app. No iCloud round-trip. No browser uploader. No "watch on the laptop" workaround.
# Requires macOS 14+ · iOS / iPadOS 15+
// film → handoff → device
drag ~/Movies/Anime → "iPad Pro" # → 24 episodes, posters, sort order, audio switcher fixed
Every feature here exists because we found a specific way the iPad TV app fails when fed arbitrary video. See changelog for the full trail.
Only re-encodes what your device can't play. HEVC stays HEVC. AAC and EAC3 pass through. AC3 → AAC because the iPad TV app silently drops AC3 from its audio switcher.
Pulls metadata from TMDb, writes the full TV-app field set (sort titles, episode_sort_id, artwork via Airlock). Episodes group correctly. No "0." prefix bug.
Detects sequential episodes, handles burned-in episode numbers, deduplicates against what's already on the device. Works with fan-subbed releases.
Files appear in the TV app as they finish uploading — not after a long "finalizing" wall. Mid-sync disk-space checks. Cmd-Q guard while syncing.
Built in Swift. Dark by default. Quits cleanly. Sits in the dock, not in your menu bar — unless you ask.
We don't collect data. Not anonymous, not aggregated, not "for product improvement." The app talks to your device, and to TMDb for posters. That's it.
MediaPorter watches your library, plans what to do, and shows you the receipts before a single byte moves. You stay in control.
Probe codecs, audio tracks, subtitles. Match titles to TMDb. Detect anime episode numbers. Skip files already on the device.
Per file: keep as-is, remux, or transcode. Audio: pass-through or convert. Disk space check. You approve before anything runs.
Transcode in parallel. Upload to the device over USB or Wi-Fi. Register each file with the TV app as it lands — not after a 30-minute wait.
MediaPorter doesn't ship with bundled API keys — they'd get extracted from the binary and rate-limited for everyone within days. Instead, you grab your own free keys from TMDb (posters and metadata) and OpenSubtitles (subtitles). Five minutes, no credit card.
Step-by-step: get any anime release — single episodes, full seasons, fan subs — into the native TV app, with correct episode numbers, posters, and subtitles. No jailbreak.
Drag a folder of .mkv files — single episodes, full seasons, fan subs — into MediaPorter. Watch each episode appear in the TV app with the right poster, season, and episode number as the upload completes. Dual audio is preserved; AC-3 is converted to AAC so the iPad TV app's audio switcher actually shows your tracks.
Drop a movies folder. MediaPorter probes each file, looks up the right TMDb poster, decides per-file whether to remux or re-encode, and shows you the plan before anything runs. Movies land in Library → Movies on the device.
S01E01 — S05E22 in a single drop. Sort titles and episode_sort_id are filled correctly, so episodes line up by season instead of alphabetically. No "0. Show Name" drift at the top of the list.
If your file has multiple audio tracks but the iPad TV app's audio switcher only shows one, AC-3 is the culprit. MediaPorter converts AC-3 to AAC and sets disposition correctly so every track is selectable. Walks you through the fix step-by-step.
MediaPorter detects HEVC and remuxes in place — no quality loss, no waiting on ffmpeg. Files that need rewrapping for the TV app (.m4v container, hvc1 tag) get handled automatically.
SRT, ASS/SSA, mov_text, and PGS soft subs are remuxed into the output when the TV app can render them. Where the TV app can't (heavy ASS styling), MediaPorter degrades gracefully to plain text instead of silently dropping the track.
Install MediaPorter on a Mac, plug in (or pair over Wi-Fi) the iPhone or iPad, drag your anime folder into the app, and click sync. Episodes appear inside the built-in TV app under Library → TV Shows, with posters and correct episode order. Works with .mkv, .mp4, .m4v, .avi, subtitled or dubbed releases.
Yes. MediaPorter talks directly to the device using Apple's on-device sync protocol (ATC). Nothing is uploaded to iCloud. iTunes / Apple Music is not involved.
Yes. MediaPorter detects movies vs. TV shows vs. anime automatically. Movies land under Library → Movies; series and anime land under TV Shows with seasons and episode numbers.
Only what your device can't already play. HEVC video is kept as-is. AAC and E-AC-3 audio pass through. AC-3 (Dolby Digital) is converted to AAC because the iPad TV app silently hides AC-3 tracks from the audio switcher.
Yes. MKV with H.264, HEVC, AAC, AC-3, E-AC-3, or DTS is handled. Video is remuxed without re-encoding when possible; audio is converted only when the TV app would otherwise fail to play it.
Soft subtitles (SRT, ASS/SSA, mov_text, PGS) are remuxed into the output file when the TV app can render them. Burned-in subtitles stay in the picture.
No. MediaPorter uses public Apple sync protocols on a stock device. macOS 14+, iOS / iPadOS 15+.
No analytics inside the app. No crash beacons, no usage stats. The macOS app talks only to your device and to TMDb (for posters).
MediaPorter uses two free third-party services — TMDb for posters and metadata, and OpenSubtitles for downloading missing-language subtitles. Both require your own free account (5 minutes, no credit card). Bundling shared keys in the app isn't viable: they'd get extracted from the binary and rate-limited within days. See the Setup page for step-by-step instructions. Skipping them still works — you'll just get fallback posters and only the subtitles already inside your files.
// v0.6.1 · 2026-05-14
Signed and notarized by Apple. Pick the build that fits — both ship the same app, the only difference is whether ffmpeg comes inside the bundle.
Works out of the box. ffmpeg is inside the app — no Homebrew, no command line. Pick this if you're not sure.
Download .dmgSmaller download. Bring your own ffmpeg via `brew install ffmpeg` (or any compatible binary on $PATH).
Download .dmg# Requires macOS 14+ · Apple Silicon · Compare builds → · View source on GitHub