# THE MPVIEWER 1.5 BIBLE ### The Definitive, Unabridged Technical Authority, Survival Manual & Field Guide for Digital Photographers, Retouchers, and Virtual Tour Architects *By Mladen Popović & The DeepMind Advanced Agentic Coding Team* *Dedicated to the Golden Age of 1,000-Page Printed Computer Software Bibles (Sybex, Que & Wiley)* *Featuring the Unfiltered Philosophy of Bill Burr, Ricky Gervais, Dave Chappelle & George Carlin* *Calibrated for macOS Sequoia, Apple Silicon Metal Architecture & High-End Studio Production* --- ``` ┌────────────────────────────────────────────────────────────────────────────┐ │ │ │ ███╗ ███╗██████╗ ██╗ ██╗██╗███████╗██╗ ██╗███████╗██████╗ │ │ ████╗ ████║██╔══██╗██║ ██║██║██╔════╝██║ ██║██╔════╝██╔══██╗ │ │ ██╔████╔██║██████╔╝██║ ██║██║█████╗ ██║ █╗ ██║█████╗ ██████╔╝ │ │ ██║╚██╔╝██║██╔═══╝ ╚██╗ ██╔╝██║██╔══╝ ██║███╗██║██╔══╝ ██╔══██╗ │ │ ██║ ╚═╝ ██║██║ ╚████╔╝ ██║███████╗╚███╔███╔╝███████╗██║ ██║ │ │ ╚═╝ ╚═╝╚═╝ ╚═══╝ ╚═╝╚══════╝ ╚══╝╚══╝ ╚══════╝╚═╝ ╚═╝ │ │ │ │ ★ VERSION 1.5 TECHNICAL BIBLE & FIELD GUIDE ★ │ │ │ └────────────────────────────────────────────────────────────────────────────┘ ``` --- ## Detailed Table of Contents - **Foreword: The Death of the Bloated Catalog (or: Why We Need an Intervention)** - **Introduction: Welcome to the Workstation** - Conventions Used in This Bible - The Digital Tech's Golden Creed - **PART I: THE FORTRESS OF INGEST & ASSET PRESERVATION** - **Chapter 1**: The Cardinal Sin: Why You Never Format a Memory Card Without SHA-256 (The Bill Burr Doctrine) - **Chapter 2**: The Ingest Engine: Simultaneous Dual-Destination Mirroring (The Hotel Room Myth) - **Chapter 3**: Cryptographic Verification: Hardware SHA-256 vs. Speed Passes - **Chapter 4**: Surviving the Kicked Cable: The Resumable Ingest State Machine - **Chapter 5**: The Ingest Audit Trail: Shutting Down Agency Producers with `MPViewer Import.log` - **Chapter 6**: Dynamic Token Renaming & Chronological `YYYY-MM-DD` Sub-Folder Trees - **Chapter 7**: Ingest Payloads: Keeping RAW, Sidecars, Voice Memos & Subtitles in One Family - **PART II: ARCHITECTURAL FOUNDATIONS & DIRECT FILE-SYSTEM CONTROL** - **Chapter 8**: The Zero-Catalog Revolution: Direct File-System Power vs. SQLite Cults - **Chapter 9**: Touring the Command Center: Panels, Tabs, and the Interactive Breadcrumb Path Bar - **Chapter 10**: The Multi-Folder Tab Architecture (`⌘T` / `⌘1`–`⌘9`) & Startup Memory - **Chapter 11**: Boolean Matrix Filtering, Saved Presets & Smart Collections (The Vulnerable Doorknob) - **Chapter 12**: Hierarchical Pipe-Delimited Keyword Trees (`Country|City|Street`) - **Chapter 13**: RAW+JPEG Atomic Pairing & External Editor Handoffs (`⌘E`) - **Chapter 14**: Handling Massive Deep Trees (100,000+ Files Without Fan Noise) - **Chapter 15**: Custom Key Remapping & The Instant Shortcut HUD (`?` / `⌘/`) - **PART III: HIGH-VELOCITY CULLING & FORENSIC OPTICAL INSPECTION** - **Chapter 16**: The Immersive Viewport, The Tri-State EXIF HUD (`I`) & The Rendering Source Line - **Chapter 17**: The Cinema Filmstrip (`F`) & The Floating Navigation Mini-Map - **Chapter 18**: Precision Optics: The 320px Loupe (`M`), Custom Zoom Steps & The Temporary 100% Peek - **Chapter 19**: Metal-Accelerated Focus Peaking: Micro-Contrast Edge Detection (`⇧P`) - **Chapter 20**: Exposure Forensics: Clipping Warnings & The RGB Levels Parade (The Chernobyl Highlight Rule) - **Chapter 21**: Unlocking Camera MakerNotes: Real-World EVF Reticle Overlays (`A` / `⊙`) - **Chapter 22**: Smart Face Zoom: Single-Key Subject Cycling (`Z` / `C`) - **Chapter 23**: The Art of One-Hand Speed Culling: The WASD / JKOP Protocols (Coffee in the Other Hand) - **Chapter 24**: Taming Continuous Fire: Auto-Burst Stacking & The AI Best Shot Crown (`👑`) - **Chapter 25**: The Opt-In Intelligence Philosophy: Eye & Blink Analysis Without Battery Vampires - **Chapter 26**: The Arena: Multi-Frame Split Screen Shootouts (2×2 Grid / `X`) - **Chapter 27**: Video Playback, High-Res Frame Grabbing (`S`), and A/B Trimming (`T`) - **PART IV: THE NON-DESTRUCTIVE DIGITAL DARKROOM** - **Chapter 28**: Perceptual Tone & Color: OKLab Math, Curves, & Bradford Adaptation (No More Radioactive Blue Skies) - **Chapter 29**: Surgical Hue Sculpting with the 8-Channel HSL Color Tuner (De-Neoning the Grass) - **Chapter 30**: Vignette Dynamics & Atmospheric Optical Effects - **Chapter 31**: The Geometry Workshop: Crop Dynamics, Straightening & Golden Spirals (`C`) - **Chapter 32**: Vector Markups, Architectural Calipers & Legal GDPR Privacy Redaction (`D`) - **Chapter 33**: Scientific Histograms, RGB Waveforms, and the Vectorscope (The Cooked Shrimp Skin Rule) - **Chapter 34**: The Sidecar Blueprint: Decoding the Open `.xmp` Architecture - **PART V: 360° SPHERICAL & INTEGRATED TOUR STUDIO** - **Chapter 35**: Stepping Inside the Sphere: Equirectangular & Little Planet Physics (Stopping Viewer Nausea) - **Chapter 36**: Three-Axis Gimbal Leveling: Pitch, Roll, and Yaw Horizon Correction - **Chapter 37**: The Tour Studio Blueprint: Visual Nodes, Doorway Portals & Hotspot Curation - **Chapter 38**: Architectural Wayfinding: Multi-Floor Maps, Room Drag-and-Drop & Document Photo Cleanup - **Chapter 39**: Immersive Audio: Per-Room Voice Narration & Ambient Soundtracks (Hands-Free Living Audio) - **Chapter 40**: Publishing Without Shackles: Client Banners, Multi-Resolution Output & 1-Click Deploy (Saying Goodbye to Cloud Rent) - **PART VI: STUDIO OUTPUT, PRINTING & PRODUCTION PIPELINES** - **Chapter 41**: ColorSync Precision, Wide Gamuts & Soft Proofing (`S`) - **Chapter 42**: The Tokenized Print Studio: Dynamic EXIF Typography (`⌘P`) - **Chapter 43**: Optical Character Recognition: Instant Live Text Extraction (`⌘⇧O`) - **Chapter 44**: Burst Motion Sequences: The High-Speed Animated GIF Engine - **Chapter 45**: The Forensic Clipboard: Instant EXIF Metadata Copy - **Chapter 46**: The Pro Export Studio: Lanczos Resampling, AVIF, OpenEXR, WebP & JPEG XL - **Chapter 47**: Atomic Export Safety & The Sacred Law of Sidecar Cohesion - **Chapter 48**: Press-Ready Metadata & Speed Tagging with Code Replacements - **Chapter 49**: Geotagging Mastery: Interactive Apple Maps & GPX Track Synchronization - **Chapter 50**: Perceptual Hash Duplicate Hunting & Time-Shift Synchronization - **PART VII: PERFORMANCE, CACHING & HARDWARE HARNESSING** - **Chapter 51**: The Two-Tier Decoding Engine: Embedded RAW Previews vs. 90% Thresholds - **Chapter 52**: Disk Cache Tuning, Multi-Monitor Workstations & Zero-Telemetry Privacy - **PART VIII: EXTERNAL STORAGE PROFILING & HIGH-SPEED FIELD WORKFLOWS** - **Chapter 53**: The Hardware Benchmark: Active Storage Profiling, Speed Badges & Latency Tiers (The $5 Parking Lot Drive) - **Chapter 54**: High-Latency Network Shares & Rugged Field Drives: Conquering 2,500+ RAW Directories in One Second (Bypassing IT Lanyards) - **PART IX: APPENDIXES** - **Appendix A**: The Master Keystroke & Shortcut Compendium - **Appendix B**: Camera MakerNote Compatibility Matrix - **Appendix C**: Web 360 Server Headers & Apache / Nginx Configuration - **Appendix D**: Troubleshooting, Memory Allocation & Diagnostics - **Appendix E**: Changelog of This Edition (September 11, 2026) --- ## Foreword: The Death of the Bloated Catalog (or: Why We Need an Intervention) Let's cut the corporate marketing garbage right here on page one. You just bought a $4,000 camera body milled from magnesium alloy, attached an optical marvel with fifteen fluorite elements that costs more than a 2008 Honda Civic, and you plugged your memory card into a machine containing an M-series chip capable of trillions of floating-point operations per second. And what does your traditional "industry standard" software do? It sits there spinning a beachball. It insists on creating a proprietary 85-gigabyte `.lrcat` SQLite database file that corrupts itself if a cloud backup daemon sneezes at it. It takes forty-five minutes to "import" photos that are already physically sitting on your lightning-fast NVMe drive. It syncs telemetry about your coffee intake back to corporate headquarters while forcing you into a perpetual $30/month subscription model just so you can look at the photos *you* took with *your* camera on *your* computer. As **Ricky Gervais** would put it: > *"Oh, bless your little heart. You think you bought software. You didn't buy software. You rented a digital landlord who charges you rent to enter your own living room, and every time you turn the light on, he wants an administrative fee. And you thank him for it! 'Oh, thank you, sir, thank you for letting me pay thirty quid a month so I can adjust the contrast on a picture of my dog. You're so innovative!'"* And don't get **Bill Burr** started on database catalogs: > *"WHY DO I HAVE TO 'IMPORT' SOMETHING THAT'S ALREADY ON MY HARD DRIVE?! It's right there! I can see it in Finder! Look at it! Why does this bloated piece of crap have to build an internal miniature replica of the universe before I can see if Uncle Bob's eyes are open?! What kind of lunatic designed this?! 'Oh, we're building 1:1 previews for your catalog...' I DON'T WANT YOUR PREVIEWS! I want to look at the picture! Just read the card, you psychopath!"* And **Dave Chappelle** would lean back, exhale a cloud of smoke, and say: > *"Listen, man. The game is the game. They got you paying monthly rent on your own talent. They tell you it's 'The Cloud.' There ain't no cloud, brother. It's just somebody else's computer in a warehouse in Utah that takes ten bucks out of your pocket every thirty days while your client is blowing up your phone texting: 'Where the photos at?' Keep it real. If you don't have the file in your hand, you don't own it."* And finally, **George Carlin** would deconstruct the entire racket: > *"Have you noticed the language they use? 'An integrated, cloud-first digital asset management ecosystem.' Bullshit! It’s corporate bullshit designed to separate you from your money while giving you more headaches! In the old days, you took a picture, you had a negative. You owned it. Nobody could come into your darkroom and turn off your enlarger because your subscription expired. Now, they've invented seventy new words for 'looking at a file.' It’s not an ecosystem; it’s an electronic prison camp run by accountants in fleece vests who never took a picture of anything more interesting than their quarterly earnings report!"* **Welcome to MPViewer 1.5.** MPViewer is built on an unapologetic engineering premise: **Your filesystem is your catalog.** There is no database to corrupt. There are no background sync daemons siphoning your upload bandwidth. There is zero telemetry. When you click a folder, MPViewer talks straight to the APFS file system, feeds raw bytes directly into Apple Silicon Metal compute shaders, and gives you instant 60fps throughput. You own your files. You own your edits (stored in open standard `.xmp` sidecars). You own your standalone 360° virtual tours. And this Bible is the 100% technical, zero-BS guide on how to operate it like a seasoned studio master. --- ## Introduction: Welcome to the Workstation Grab a fresh mug of high-octane dark roast, prop open this hefty volume next to your dual studio displays, and make yourself comfortable. If you lived through the golden era of computing—when software packages arrived in massive glossy cardboard boxes accompanied by an authoritative 900-page printed Bible published by Sybex, Wiley, or Que that could double as an engine block or a weapon in a bar fight—you know why this book exists. High-performance software is not an ephemeral smartphone toy where you swipe left and put a dog snout on your face. It is a precision surgical instrument designed to bend photons, optical physics, and massive streams of binary data to your artistic will. ### Conventions Used in This Bible Throughout this book, you will encounter distinctive callout blocks designed to steer you clear of disaster and elevate your daily studio throughput: > [!NOTE] > **Technical Underpinnings**: Deep dives into byte layouts, Metal compute kernels, Core Image memory allocation, and IEEE floating-point color science. > [!TIP] > **Pro Secret / Studio Shortcut**: Speed tricks discovered on the front lines of high-volume commercial, wedding, architectural, and sports photography. > [!CAUTION] > **Data Integrity Warning**: Critical alerts designed to prevent catastrophic card wipeouts, color space truncation, or metadata loss. > [!IMPORTANT] > **In the Real World (The War Room)**: Concrete studio war stories, cynical reality checks, and case studies showing how working professionals navigate high-stress production deadlines without losing their minds. ### The Digital Tech's Golden Creed 1. **If data does not exist in three distinct physical places, it does not exist at all.** 2. **Never format a memory card because 'the progress bar finished.' Computers lie; SHA-256 checksums do not.** 3. **The client does not care how artistic your out-of-focus blur is. Sharpness is forensic.** 4. **Never trust an operating system's drag-and-drop copy on a high-stakes shoot.** --- # PART I: THE FORTRESS OF INGEST & ASSET PRESERVATION ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ THE FORTRESS OF INGEST PIPELINE │ │ │ │ CFexpress / SD / NAS Source │ │ │ │ │ ├──▶ [Read Stream] ──▶ Hardware SHA-256 Engine │ │ │ │ │ │ ▼ ▼ │ │ ┌───────────────────┐ ┌───────────────────┐ │ │ │ Primary Fast SSD │ │ Secondary Storage │ (Simultaneous) │ │ │ (e.g. OWC / M.2) │ │ (NAS / Cold HDD) │ │ │ └─────────┬─────────┘ └─────────┬─────────┘ │ │ │ │ │ │ ▼ ▼ │ │ [SHA-256 Match] [SHA-256 Match] │ │ │ │ │ │ └───────────────┬───────────────┘ │ │ │ │ │ ▼ │ │ [Safe Auto-Eject Signal] │ │ │ │ │ ▼ │ │ MPViewer Import 2026-09-08.log (Written) │ └─────────────────────────────────────────────────────────────────────────────┘ ``` ## Chapter 1: The Cardinal Sin: Why You Never Format a Memory Card Without SHA-256 (The Bill Burr Doctrine) Every digital tech has experienced that cold, sinking feeling in the pit of their stomach: you drag 1,200 commercial raw files from a CFexpress card into a folder, the macOS progress bar finishes with a happy chime, you format the card in-camera because you're in a rush, and three hours later you discover that file number 842 cuts off halfway down the frame in a glitch of neon magenta static. **Why did this happen?** Standard operating system drag-and-drop operations perform opportunistic filesystem copies. If a flash memory cell experiences an electrical stutter, if a cheap card reader overheats, or if a PCIe bus drops a packet, macOS may write a file of the *exact same byte size* that contains corrupted, unrecoverable data payloads. The OS thinks everything went great. The OS doesn't care about your career. As **Bill Burr** would explain it: > *"Listen to me, you animal! When you drag and drop files in Finder, Finder isn't your friend. Finder is that buddy who borrows your truck, brings it back on an empty tank with a dent in the bumper, and goes: 'Hey man, it's parked outside, we're good!' No, we're not good! Half the engine is missing! You just formatted the bride walking down the aisle because you trusted a blue progress bar! Now you're standing in front of an angry father-in-law who paid thirty grand for a wedding, trying to explain that 'Finder told me it was done.' YOU DESERVE TO BE PUNCHED IN THE MOUTH! Use the SHA-256 ingest, let the computer check the math down to the last electron, and wait for the green light before you touch that format button!"* MPViewer treats camera card ingest not as a casual file move, but as a forensic archival pipeline. --- ## Chapter 2: The Ingest Engine: Simultaneous Dual-Destination Mirroring (The Hotel Room Myth) Under **File > Import Photos**, MPViewer presents a dedicated hardware offloading console: ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ IMPORT PHOTOS │ │ │ │ Source: [ /Volumes/EOS_DIGITAL (CFexpress Type B) ] [Browse]│ │ Photos Found: 1,482 RAW + JPEG Pairs (64.2 GB) │ │ │ │ Primary: [ /Volumes/Fast_Work_SSD/2026-Shoots/Studio-A ] [Browse]│ │ Backup (2nd):[ /Volumes/Synology_NAS/Raw_Vault/2026-Shoots ] [Browse]│ │ │ │ [✓] Verify Integrity: (*) SHA-256 Checksum (Recommended) ( ) File Size │ │ [✓] Eject card automatically when 100% verified │ │ [✓] Auto-create YYYY-MM-DD subfolders │ │ │ │ Renaming: [ Custom Template: {date}_{name}_{seq4} ▼ ] │ │ Preview: 20260908_IMG_4912_0001.CR3 │ │ │ │ Metadata: Creator: [ Mladen Popovic ] Rating: [ ★★★★☆ ] │ │ Copyright: [ (C) 2026 All Rights Reserved ] │ │ │ │ [Cancel] [Start Verified Ingest]│ └─────────────────────────────────────────────────────────────────────────────┘ ``` ### 2.1 Simultaneous Redundant Cloning Never write to your working drive with the intention of "backing it up later tonight at the hotel." That "later tonight" is a myth. You'll have three beers, fall asleep with your shoes on, and your laptop will get stolen from the rental car. True data security requires **Dual-Destination Mirroring**: 1. **Primary Destination**: Point this to your fastest local NVMe working drive (e.g., your internal Mac Studio SSD or a Thunderbolt 4 scratch disk). 2. **Secondary Backup Destination**: Point this simultaneously to a network share (NAS via 10GbE SMB), a secondary cold-storage rugged SSD, or an external archive vault. 3. MPViewer forks the read stream, writing to both targets in parallel. It calculates hashes on the fly and eliminates the need for a secondary copy pass at the end of the day. --- ## Chapter 3: Cryptographic Verification: Hardware SHA-256 vs. Speed Passes In the Import console, you are offered two distinct verification methods: ### 3.1 SHA-256 Cryptographic Checksum (The Gold Standard) - As bytes stream off the silicon of your memory card, MPViewer feeds them through an optimized Apple Silicon hardware-accelerated SHA-256 hashing engine. - Once the file is written to the primary and secondary destinations, MPViewer reads back the written bytes, generates their cryptographic hash, and compares them: $$\text{Hash}_{\text{Card}} \equiv \text{Hash}_{\text{Primary}} \equiv \text{Hash}_{\text{Backup}}$$ - If even a single bit has flipped due to an overheating card reader, the checksum fails, the corrupt file is purged, and the transfer is automatically retried. - **Safe Auto-Eject**: Only when every single byte passes SHA-256 validation does MPViewer send the unmount signal to macOS. If the card ejects, you know with 100% mathematical certainty that your card is safe to format. ### 3.2 File-Size Verification (The Emergency Deadline Pass) When you are on the sidelines of an NFL stadium with 45 seconds until halftime ends and the wire editor is screaming for files, calculating SHA-256 hashes across 80 gigabytes may exceed your transmission window. The *File-Size Only* pass verifies byte length instantaneously, allowing rapid turnaround while still preventing truncated file writes. But remember: use this only when your job is on the line, not because you're impatient to check your Instagram notifications. --- ## Chapter 4: Surviving the Kicked Cable: The Resumable Ingest State Machine In commercial production environments, accidents happen. An art director trips over a tether cable, a catering cart bumps a power strip, or an assistant violently unseats an external drive mid-transfer. ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ THE RESUMABLE INGEST STATE MACHINE │ │ │ │ Transfer Interrupted at File 842 of 1,482 (Cable Disconnect) │ │ │ │ │ Re-connect Card & Launch File > Import Photos │ │ │ │ │ MPViewer Detects: .mpviewer_ingest_state.json │ │ │ │ │ Files 001 – 841: ────▶ [Bypassed / Cryptographically Verified Intact] │ │ File 842: ────▶ [Purged Truncated Fragment & Freshly Re-Copied] │ │ Files 843 – 1482:────▶ [Normal Ingest Resumes Seamlessly] │ └─────────────────────────────────────────────────────────────────────────────┘ ``` ### 4.1 Resumable Ingest Architecture Unlike standard OS file dialogs that force you to guess which files copied and present stupid modal popups asking whether you want to *"Skip, Replace, or Keep Both (1)"*, MPViewer maintains an atomic transaction state: - When an import is interrupted, MPViewer stores a hidden progress manifest (`.mpviewer_ingest_state.json`). - When you reconnect the card and click **Import**, MPViewer checks existing destination files against source checksums. - Completed files are verified and skipped in milliseconds. - The single file that was writing when the cable snapped is scrubbed clean and re-transferred from scratch. - Zero duplicate files, zero fragmented orphan files, zero human guesswork. --- ## Chapter 5: The Ingest Audit Trail: Shutting Down Agency Producers with `MPViewer Import.log` Beside every destination folder, MPViewer automatically writes an immutable plain-text audit record: ```text ================================================================================ MPVIEWER VERIFIED INGEST AUDIT LOG Session Date: 2026-09-08 16:42:11 +0200 Hardware Volume: /Volumes/CF_EXPRESS_B [Sony CEB-G512 512GB] Primary Target: /Volumes/Studio_NVMe/2026-Shoots/Villa-Sunset Secondary Target: /Volumes/Studio_NAS/Backup_Vault/2026-Weddings/Villa-Sunset Verification Mode: SHA-256 Cryptographic Hash (Apple Silicon HW Accelerated) ================================================================================ [16:42:12] [PASS] _R5_0001.CR3 (48,291,048 bytes) -> SHA256: e3b0c44298fc1c14... [16:42:13] [PASS] _R5_0002.CR3 (51,902,412 bytes) -> SHA256: 7f83b1657ff1fc53... ... [16:54:02] [PASS] _R5_1482.CR3 (49,112,880 bytes) -> SHA256: d41d8cd98f00b204... -------------------------------------------------------------------------------- SUMMARY: 1,482 Files Transferred | 64.2 GB | 0 Corrupted | 0 Skipped | EJECTED ================================================================================ ``` This log is legal-grade documentation. When an agency producer calls you three weeks later claiming you "lost file 412," you don't argue with them. You email them the cryptographic SHA-256 audit log showing that file 412 was verified, written, and delivered intact. Case closed. --- ## Chapter 6: Dynamic Token Renaming & Chronological `YYYY-MM-DD` Sub-Folder Trees Naming files `IMG_0001.CR3` is an open invitation to chaos. If you have three photographers shooting an event, camera A's `IMG_0001.CR3` will overwrite camera B's `IMG_0001.CR3` the second someone drops them into the same directory. ### 6.1 Renaming Token Protocols In the Ingest Console, configure flexible naming rules using dynamic metadata tokens: - `{name}`: Original filename stem (e.g., `IMG_4912`). - `{date}`: Capture date extracted from EXIF MakerNotes (`YYYYMMDD` or `YYYY-MM-DD`). - `{time}`: Capture timestamp (`HHMMSS`). - `{camera}`: Camera body model name (e.g., `EOSR5`). - `{creator}`: Ingest photographer code (e.g., `MP`). - `{seq4}`: Zero-padded four-digit sequence counter (`0001`, `0002`). *Example Formula*: `{date}_{creator}_{camera}_{seq4}` *Outputs*: `20260908_MP_EOSR5_0001.CR3` ### 6.2 Chronological Folder Sorting Enable **Organize into YYYY-MM-DD subfolders**. If a three-day festival spans Friday night through Sunday evening, MPViewer reads the embedded hardware clocks of each raw file and automatically routes them into clean daily directories: ``` Summer_Festival/ ├── 2026-09-07/ (Day 1 - Acoustic Stage) ├── 2026-09-08/ (Day 2 - Main Stage Headliners) └── 2026-09-09/ (Day 3 - Afterparty) ``` --- ## Chapter 7: Ingest Payloads: Keeping RAW, Sidecars, Voice Memos & Subtitles in One Family Modern cameras capture much more than static raw files: - **Audio Voice Memos (`.WAV`)**: Sports and press shooters record verbal captions describing subjects (e.g., "Number 7, knee injury, second quarter"). - **Embedded XMP Sidecars (`.XMP`)**: In-camera star ratings and copyright tags. - **Companion Video Clips (`.MOV`/`.MP4`)**: 4K motion snaps. - **Subtitle Streams (`.SRT`)**: Speech-to-text voice transcriptions. When MPViewer executes an ingest pass, it detects associated companion files sharing the same stem name and transfers them together as an unbreakable atomic package. If a tool leaves your `.WAV` voice memo behind on the card, that tool is garbage. MPViewer keeps the family together. --- # PART II: ARCHITECTURAL FOUNDATIONS & DIRECT FILE-SYSTEM CONTROL ## Chapter 8: The Zero-Catalog Revolution: Direct File-System Power vs. SQLite Cults ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ THE ZERO-CATALOG DIRECT PIPELINE │ │ │ │ Finder / NAS Storage MPViewer Memory Export │ │ ┌───────────────────────┐ ┌───────────────────┐ ┌───────────┐ │ │ │ DSC09481.ARW (Locked) │──────▶│ Metal Raw Decode │──────▶│ 8K WebP │ │ │ │ DSC09481.ARW.xmp │◀─────▶│ Perceptual Sliders│ │ Print │ │ │ │ │ (Live)│ Vector Markups │ │ TIFF/JPEG │ │ │ └───────────────────────┘ └───────────────────┘ └───────────┘ │ │ │ │ • Original camera pixels remain 100% read-only and immutable │ │ • Sidecar metadata is synchronized live and readable by other open tools │ └─────────────────────────────────────────────────────────────────────────────┘ ``` The fundamental thesis of MPViewer is simple: **Your filesystem is your catalog.** Let's dissect why the traditional catalog database is an architectural scam: 1. **The SQLite Bottleneck**: When you have a 300,000-photo catalog in a single SQLite file, any disk write locks the database table. That's why your UI freezes when you rate three photos in rapid succession. 2. **File Deletion Lies**: In catalog-based apps, hitting `Delete` pops up an existential philosophical crisis: *"Do you want to remove this photo from the Catalog, or Delete it from Disk?"* Half the time people click "Remove from Catalog," and their hard drive remains 100% full of trash they thought they deleted six months ago! 3. **The Synchronization Desync**: You rename a folder in Finder, open your catalog app, and suddenly every thumbnail has a blinking question mark `[?]` over it like the software just suffered severe head trauma. **The MPViewer Way:** - Folders are real directories on disk. - Moving a file in MPViewer moves the file on disk. - Deleting a file moves it safely to the native macOS Trash (where you can restore it instantly with `⌘Z`). - If you rename a folder in Finder, MPViewer reflects it immediately. Zero question marks. Zero indexing wait times. --- ## Chapter 9: Touring the Command Center: Panels, Tabs, and the Interactive Breadcrumb Path Bar ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ [📁 Open Folder] [◀] [▶] Pictures / Commercial / 2026-Lookbook [+]│ ├───────────────────┬─────────────────────────────────────────────────────────┤ │ 📂 FOLDERS │ [Sort: Date ▼] [Burst: ⊞] [AI Crown: 👑] [Compare: ⧉] │ │ ├─ Favorites │ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ │ │ Studio NAS │ │ RAW │ │ ⊞ 12 │ │ ★★★★★ │ │ 360° │ │ │ │ Desktop │ │ LOOK_01 │ │ BURST │ │ PICK ✓ │ │ PANO_04 │ │ │ └─ Volumes │ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │ │ │ │ │ 🏷️ TAGS & FILTERS │ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ │ ├─ ★★★★★ (18) │ │ LOOK_02 │ │ LOOK_03 │ │ REJECT │ │ LOOK_05 │ │ │ ├─ Sony α1 (480) │ │ 1/1000s │ │ 1/1250s │ │ ✗ TRASH │ │ 1/800s │ │ │ └─ 85mm f/1.4 │ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │ │ │ │ │ 📍 LOCATION │ 1,420 Photos · 84.6 GB · 4 Selected · 128 Filtered │ └───────────────────┴─────────────────────────────────────────────────────────┘ ``` ### 9.1 The Interactive Breadcrumb Path Bar Running across the top of your gallery viewport is the **Interactive Path Bar**. It doesn't just passively report where you are; it is an active navigation highway: - **Click Any Segment**: Clicking `Volumes`, `Rugged_Extreme`, or `2026_Commercial` immediately transports your gallery to that directory level without expanding and contracting fifteen nested trees in the left sidebar. - **Contextual Right-Click**: Right-click any single crumb in the path bar to reveal an immediate power menu: - **Reveal in Finder** (`⌥⌘R`) - **Copy Path as String** (essential for terminal pipelines and bash scripts) - **Add to Favorites** - **Set as Folder Tree Root** (instantly pruning the sidebar view so your workspace stays focused on the active job). - **Deep History Navigation**: The Back (`⌥←`) and Forward (`⌥→`) buttons beside the path bar don't just remember your last click. Right-clicking or Control-clicking either arrow reveals your entire chronological folder history stack. Jump ten folders back with a single click instead of hammering the back arrow like a woodpecker on espresso. ### 9.2 Sidebar Folder Shortcuts & Root Anchoring The left sidebar represents your physical drive geometry. Right-clicking any directory inside the tree, Favorites, or Recent folders reveals the **Folder Shortcuts Menu**: - **Make Root**: Isolates a massive nested client project so you don't accidentally click into family vacation photos from 2018 while a corporate art director is breathing down your neck. - **Refresh Folder**: Forces an immediate file-system poll, re-indexing newly added shots if you just ingested files via an external background terminal script. - **Dynamic Grid Sizing**: Press `⌘+` and `⌘-` to smoothly rescale thumbnails from tiny contact sheet squares to massive, high-detail previews. > [!TIP] > **George Carlin on Digital Hoarding & Folder Naming**: > *"Have you ever looked at a photographer’s hard drive? It’s not an archive; it’s an open-air landfill of digital crap! People have folders called 'New Folder (2) FINAL_v3_reallyFINAL_edit'. What the hell is a 'really final edit'?! Either it’s finished, or it’s not! You’re taking eight thousand pictures of a fire hydrant because storage is cheap. In the old days, you had thirty-six frames on a roll, and if you shot like an idiot, you went broke. Now, people hoard forty terabytes of blurry garbage they’ll never look at until the day they die, leaving their children to sort through sixty thousand photos of a medium-rare cheeseburger. Use the Path Bar, name your directories like an educated adult, set your startup folder, and throw away the junk!"* --- ## Chapter 10: The Multi-Folder Tab Architecture (`⌘T` / `⌘1`–`⌘9`) & Startup Memory Studio digital technicians often shuttle selects between hot ingest folders, retouching sub-folders, and client approval bins. - Press `⌘T` to open a new tab. - Switch tabs instantly with `⌘1` through `⌘9`. - Press `⌘W` to dismiss the active tab. - Drag thumbnails directly onto another tab's header to move or duplicate files in a single motion. ### 10.1 Startup Memory Architecture Under **Settings > General**: 1. **Remember Last Folder**: Re-opens MPViewer exactly where you left off when you shut your MacBook lid at 3:00 AM. 2. **Specific Custom Startup Folder**: Perfect for studio tethering carts or ingest stations where every session begins in `/Volumes/Ingest_Drop`. 3. **Clean Start**: Disabling both presents a distraction-free zero-state workspace ready for drag-and-drop. --- ## Chapter 11: Boolean Matrix Filtering, Saved Presets & Smart Collections (The Vulnerable Doorknob) A studio photographer doesn't have time to visually hunt through 4,000 photos for a vertical shot taken with an 85mm lens at ISO 100 on a specific rainy Tuesday. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ SIDEBAR MATRIX FILTERS │ │ │ │ [✓] RAW (340) [✓] 85mm f/1.4 (180) [✓] ★★★★★ (42) │ │ [✓] JPEG (340) [ ] 24-70mm (160) [ ] Flagged (95) │ │ ─────── OR ─────── ─────── OR ──────── ─────── AND ────── │ │ │ │ RESULT: (RAW OR JPEG) AND (85mm) AND (5 Stars) = 28 Matching Frames │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 11.1 Boolean Matrix Logic: Within-Group OR, Across-Group AND MPViewer’s sidebar filtering engine operates on strict, deterministic mathematical logic: - **Within the Same Group (OR Logic)**: If you select **RAW** and **HEIF**, the gallery displays photos that are *either* RAW *or* HEIF. If you select **Canon** and **Sony**, it shows cameras from *either* maker. - **Across Different Groups (AND Logic)**: The moment you cross filter boundaries, the engine switches to strict intersection. Selecting **RAW** (Format) + **85mm** (Lens) + **★★★★** (Rating) + **Edited** (Status) means the viewport *only* renders frames satisfying *all four criteria simultaneously*. - **Live Badge Counts**: Every filter row displays the exact tally of matching files in real time. ### 11.2 Persistent Saved Filters When you frequently audit catalog deliveries using complex multi-parameter queries: 1. Configure your sidebar matrix (e.g., `RAW + 5 Stars + Flagged + Geotagged`). 2. Click **Save Current Filter…** located immediately below the Status section. 3. Name your preset (e.g., `Editorial Best Selections`). 4. Your preset is permanently stored in the **Saved Filters** panel. One click instantly reapplies the entire matrix across any folder you browse in the future. Right-click any saved preset to delete or rename it. ### 11.3 Cross-Folder Smart Collections While sidebar filters operate on the *currently open directory*, **Smart Collections** break the physical boundary of single folders: - **How It Works**: A Smart Collection executes a persistent, live query across **every folder ever opened in MPViewer** using the local on-device catalog search index (`⌘⇧F`). - **Creating a Collection**: Choose **New Smart Collection…** in the sidebar. Enter your search terms (e.g., `Architectural Facade Glass`). All entered words must match. - **Rating Threshold**: Select a minimum star threshold from the integrated star dropdown (`★1 and up` through `★5 and up`). - **Zero-Cloud Privacy**: The index is compiled strictly in the background using local XMP data. Not a single byte of your file names, lens models, or ratings is ever uploaded to a remote server. > [!NOTE] > **Ricky Gervais on Client Approval Filters**: > *"The only reason Smart Collections exist is to protect you from the client. The client will sit there sipping a six-pound oat-milk macchiato, looking you dead in the eye, and say: 'Do you remember that moody shot of the doorknob you took three weeks ago in Bristol? I think that doorknob really captured our brand’s vulnerability.' Without a Smart Collection, you’re spending the next two hours clicking through 400 gigabytes of unrated corporate sludge while pretending to be an artist. With a Smart Collection, you tap one button, the doorknob appears, the client nods solemnly, and you can go back to contemplating your life choices."* --- ## Chapter 12: Hierarchical Pipe-Delimited Keyword Trees (`Country|City|Street`) Flat keywords are for children. If you tag 10,000 architectural photos with "Paris," "Texas," and "France," flat tags will turn your metadata into an unusable swamp. In the Inspector, assign keywords using standard pipe delimiters: ``` Location|Europe|Croatia|Dubrovnik|OldTown Client|FashionCorp|Fall2026|Editorial|Lookbook ``` MPViewer automatically constructs an expandable tree in the sidebar. When you filter by `Croatia`, it automatically includes `Dubrovnik` and `OldTown`. When you write to XMP, it serializes both the hierarchical tree and flattened tags for complete compatibility with press wire systems. --- ## Chapter 13: RAW+JPEG Atomic Pairing & External Editor Handoffs (`⌘E`) ### 13.1 The Honest RAW+JPEG Protocol Many programs "hide" the JPEG behind the RAW. You think you're looking at the RAW, but you're actually looking at a processed 8-bit JPEG preview. When you adjust a slider, the colors suddenly jump because it finally decoded the raw sensor data. In **Settings > Browsing**, toggle *Handle RAW+JPEG pairs together*: - **The Golden Rule**: The JPEG is **never hidden** from your view—both appear in the grid so you can verify individual frames if you shoot separate looks. - However, when atomic pairing is engaged, moving, copying, or deleting either file automatically carries its matching twin along. You will never leave an orphan JPEG or RAW behind. ### 13.2 External Editor Hand-Off (`⌘E`) Select any image and press `⌘E`: - Instantly launches your designated heavy-lifter. - MPViewer establishes a file-system watch kernel (`FSEvents`). The moment you hit Save in your external editor, MPViewer re-renders the thumbnail on the canvas with zero lag. --- ## Chapter 14: Handling Massive Deep Trees (100,000+ Files Without Fan Noise) Point standard software at a corporate archive containing 120,000 high-resolution images, and your Mac's fans will spin up like a jet engine preparing for takeoff. **How MPViewer achieves flat memory consumption:** - **Lazy Directory Enumeration**: MPViewer does not scan subdirectories until you physically expand them or request recursive filtering. - **Ephemeral Descriptors**: File metadata is loaded in streaming chunks. Memory consumption stays strictly below 150 MB regardless of whether your folder holds 100 or 500,000 files. --- ## Chapter 15: Custom Key Remapping & The Instant Shortcut HUD (`?` / `⌘/`) A professional software tool must mold itself to the physical ergonomics of the operator’s hands—not force you into contorting your fingers into arthritis pretzels. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ KEYBOARD SHORTCUTS OVERLAY [? / ⌘/] │ ├─────────────────────────────────────────────────────────────────────────┤ │ Filter: [ culling ] │ │ │ │ Action Assigned Key Scope │ │ ─────────────────────────────────────────────────────────────────────── │ │ Pick / Flag Photo W Gallery / Full │ │ Reject Photo S Gallery / Full │ │ Clear Flag / Unflag U Gallery / Full │ │ Smart Face Zoom Z Fullscreen │ │ Toggle Split Comparison X Gallery │ │ Focus Peaking ⇧P Fullscreen │ │ │ │ [ Reset to Factory Defaults ] [ Open Full Editor… ] │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 15.1 The Visual Shortcut Editor Under **Settings > Keyboard > Customize Shortcuts** (or via **Photo > Shortcut Editor**): - **Remapping Any Command**: Click any action's key column, press your desired key combination on your physical keyboard, and the application immediately adopts the new mapping across all menus and contextual viewports. - **Hardware Conflict Detection**: If you attempt to assign a key that is already claimed by another function, MPViewer highlights both actions with an amber conflict warning, showing you exactly what will be overwritten. - **Protected Structural Keys**: To prevent unrecoverable viewport lockout, a strict core of fundamental navigation keystrokes remains permanently anchored in the event pipeline: - `Esc` / `Return` / `F`: Toggle and exit fullscreen. - `0` / `1`–`9`: Reset fit-to-screen and direct fractional zoom levels. - `M`: Loupe magnification tool. - `Space`: Quick Look / Playback toggle. - **Reset to Defaults**: One click restores the factory-calibrated ergonomics. ### 15.2 The Contextual Shortcut HUD (`?` or `⌘/`) You don't need to consult a 50-page printed manual in the middle of a shoot just to remember a shortcut: - Press **`?`** (`Shift+/`) or **`⌘/`** anywhere in the application. - A translucent frosted-glass HUD appears over your viewport. - **Context-Sensitive Display**: If you are in the Gallery grid, it displays gallery sorting, selection, and batch keys. If you are in Fullscreen mode, it automatically switches to optical zoom, culling, split-comparison, and video transport controls. - **Live Search Field**: Type any fragment (e.g., `exif`, `zoom`, `burst`) to isolate the exact keystroke in milliseconds. Press `Esc` or click outside the HUD to dismiss it and continue shooting. > [!TIP] > **Bill Burr on Default Shortcuts**: > *"Why does every software company assign the three most important keys to Control-Option-Shift-F11?! What do they think my hand looks like, an octopus?! I have five fingers, and two of them are busy holding a taco! Put 'Next' on D, put 'Pick' on W, put 'Reject' on S, and let me rip through the folder like a buzzsaw! If I have to look down at the keyboard to find a key, the software developer failed at his job!"* --- # PART III: HIGH-VELOCITY CULLING & FORENSIC OPTICAL INSPECTION ## Chapter 16: The Immersive Viewport, The Tri-State EXIF HUD (`I`) & The Rendering Source Line Press `Space`, `Return`, or `F` to leave the grid and immerse yourself in full-screen inspection. ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ 142 / 1200 _R5A8291.CR3 · 8192 × 5464 (44.8 MP) · 52.4 MB │ │ Canon EOS R5 · RF50mm F1.2 L USM · ISO 100 · 1/8000s · f/1.2 · EV -0.3 │ │ Display P3 · Adobe RGB Daylight · Metering: Multi-Segment · Shutter: Mech │ │ Rendering: Embedded Preview (Instant 1ms) · 360° Sphere Available │ │ │ │ [IMAGE AREA] │ │ │ └─────────────────────────────────────────────────────────────────────────────┘ ``` Cycle the Heads-Up Display (HUD) by pressing `I`: 1. **State 1: Pure Cinema (Off)**: Zero on-screen clutter. Just pure pixels on pitch-black background. 2. **State 2: Compact HUD**: Clean floating translucent bar showing frame index, filename, megapixels, shutter speed, aperture, and ISO. 3. **State 3: Detailed Forensic HUD**: Adds lens focal length, color space profile, flash firing status, camera serial number, battery voltage if recorded in MakerNotes, and the **Rendering Source Forensic Line**: - `Embedded Preview`: Instant sub-millisecond playback extracted directly from RAW container metadata. - `RAW Developed (100%)`: Indicates that the full-resolution demosaic engine has loaded floating-point sensor pixels into memory. - `360° Sphere Available`: Notifies the operator that the current frame contains equirectangular spherical metadata ready for 3D navigation. --- ## Chapter 17: The Cinema Filmstrip (`F`) & The Floating Navigation Mini-Map Evaluating images at 100% or 400% magnification should never cause you to lose your geographical bearings within either the photo or the folder. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ FULLSCREEN VIEWPORT │ │ │ │ ┌──────────────┐ │ │ │ MINI-MAP │ │ │ │ ┌──────┐ │ [ ACTIVE HIGH-RES IMAGE VIEWPORT ] │ │ │ │ VIEW │ │ │ │ │ └──────┘ │ │ │ └──────────────┘ │ │ │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ [Thumb 1] [Thumb 2] [Thumb 3 ACTIVE] [Thumb 4] [Thumb 5] [Thumb 6] │ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ ▲ CINEMA FILMSTRIP (Auto-hides; slider adjusts thumbnail scale) │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 17.1 The Cinema Filmstrip (`F` / Bottom Hover) When viewing full-resolution images in Fullscreen mode, context is everything: - **Instant Toggle & Auto-Hide**: Move your cursor to the bottom edge of the display, or press **`F`** to summon the Cinema Filmstrip. The strip hovers cleanly above the viewport without obscuring your primary image center. - **Dynamic Thumbnail Scaling Slider**: A dedicated sizing slider located at the edge of the strip lets you smoothly scale filmstrip thumbnails from compact micro-bars (maximizing screen real estate) to large, high-clarity previews. - **Burst Focus Integration**: When navigating into a grouped burst sequence, pressing **`B`** instantly narrows the filmstrip to reveal *only* the frames belonging to that active burst, displaying mini status badges (`✓` Pick / `✗` Reject) directly on the strip frames. - **Three-Second Fade**: During active video playback or still examination, the filmstrip and all transport controls cleanly fade to 0% opacity after three seconds of mouse inactivity, restoring pure black zero-distraction viewing. ### 17.2 The Floating Navigator Mini-Map Panel When zooming past 100% into a 60-megapixel medium-format file to inspect eyelash focus or textile weave, you are viewing a tiny fraction of the total frame: - **The Mini-Map**: The Navigator panel displays an interactive miniature rendering of the entire composition. - **The Viewport Bounding Box**: A high-contrast rectangular wireframe delineates your exact current viewport position. - **Direct Panning Drag**: Click and drag inside the Navigator mini-map box to smoothly glide across the gigapixel canvas with zero lag, bypassing the need for repetitive, wrist-straining canvas hand-dragging. --- ## Chapter 18: Precision Optics: The 320px Loupe (`M`), Custom Zoom Steps & The Temporary 100% Peek ### 18.1 The Temporary 100% Peek (The Click-Hold Reflex) You are viewing a wide-angle shot of twenty people. You want to check if the person on the far left blinked. - Do NOT double-click, zoom in, pan across the screen, zoom out, and repeat. That takes five seconds per frame. - Instead: **Click and hold the left mouse button**. The area directly under your cursor instantly punches in to 100% actual sensor pixels! - Drag to inspect; release the button to snap back to full screen. Total elapsed time: 0.4 seconds. ### 18.2 The 320px Focus Loupe (`M`) Press `M` to summon the circular 320px magnifying glass: - Floats over your image like a jeweler's monocle. - Tracks your cursor smoothly across the frame. - Right-click or scroll to alter magnification between 150% and 800%. - **Direct Zoom Keys (`1`–`9`)**: Press `1` for 100%, `2` for 200%, up to `9` for 900%. Press `0` to snap back to Fit. --- ## Chapter 19: Metal-Accelerated Focus Peaking: Micro-Contrast Edge Detection (`⇧P`) ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ METAL COMPUTE FOCUS PEAKING SHADER │ │ │ │ RGB Raw Buffer ──▶ [3x3 Sobel/Laplacian Kernel] ──▶ High-Pass Frequency │ │ │ │ │ Render Canvas ◀── [Composite Highlight Mask] ◀── Threshold Filter │ │ (Emerald / Yellow / Red) │ └─────────────────────────────────────────────────────────────────────────────┘ ``` Press `Shift+P` (⇧P) to turn on hardware focus peaking. Cinematographers have used focus peaking for decades on field monitors. Why did still photo viewers ignore it? Because their rendering pipelines were too slow. - MPViewer compiles a dedicated **Metal compute kernel** directly on your Apple Silicon GPU. - It applies a 3×3 high-frequency Sobel/Laplacian convolution filter across the uncompressed frame in under 2 milliseconds. - High-contrast edges snap into electric neon outlines (*Emerald Green, Vivid Red, Electric Yellow, Cyan, Magenta, or Pure White*). - **Why this saves your life**: You can see whether the camera focused on the bride's eyelash or on the tip of her nose *without zooming in at all*. --- ## Chapter 20: Exposure Forensics: Clipping Warnings & The RGB Levels Parade (The Chernobyl Highlight Rule) Relying purely on uncalibrated monitor brightness to evaluate shadow detail and specular highlights is an amateur trap. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ EXPOSURE FORENSICS │ │ │ │ SHADOW CLIPPING (Pure Black #000000) --> Blue Neon Zebra Pattern │ │ HIGHLIGHT CLIPPING (Pure White #FFFFFF) --> Red Neon Zebra Pattern │ │ │ │ RGB LEVELS PARADE: │ │ R: [████████████░░░░░░░░] Peak: 242 │ │ G: [██████████████░░░░░░] Peak: 218 │ │ B: [████████████████████] CLIPPING ALERT: 255 │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 20.1 Real-Time Highlight & Shadow Clipping Indicators The human eye constantly adapts to ambient room lighting, fooling you into thinking an underexposed wedding tuxedo still has texture. MPViewer’s clipping engine provides objective truth: - **Shadow Underflow Alert**: Any pixel whose luminance value drops to true zero (`RGB 0, 0, 0`) is immediately overlaid with a vivid **Electric Blue Zebra Pattern**. If the groom's jacket turns solid blue, your shadow data is crushed beyond recovery. - **Specular Highlight Overflow Alert**: Any pixel hitting absolute sensor saturation (`RGB 255, 255, 255`) is painted in a pulsating **Crimson Red Warning Pattern**. If a bride's silk dress flashes crimson, your highlight details are blown out to pure paper white. - **Instant Toggle**: Enable or disable clipping alerts instantly via the View menu or inspector toolbar, keeping your preview pristine until forensic inspection is needed. ### 20.2 The Triple RGB Levels Parade While a standard composite histogram blends red, green, and blue into a deceptive gray heap, the **RGB Levels Parade** in the Inspector panel separates the color channels: - **Channel Saturation Detection**: Frequently, a red rose or a blue neon sign will violently clip the red or blue channel while the composite histogram falsely claims the exposure is balanced. The RGB Parade shows individual signal amplitudes across Red, Green, and Blue. - **Brightness Mode**: Switch the inspector between standard composite luminance and true perceptual **Brightness Mode** to isolate exposure values without color-saturation bias. > [!TIP] > **Bill Burr on "Artistic" Blown-Out Highlights**: > *"Look at this! The guy has an eight-thousand-dollar camera, a four-thousand-dollar lens with glass ground by monks in Germany, and the entire sky is a solid slab of blinding fluorescent white! And what does he tell you? 'Oh, Bill, that’s my artistic style. I was going for an airy, ethereal look.' No, you weren’t, you idiot! You blew the exposure because you didn't check the clipping indicators! You don't have an 'ethereal style'; you have an expensive paperweight and the technical competence of a golden retriever! Look at the red zebra pattern! If the forehead of your subject is glowing like Chernobyl reactor number four, hit the minus exposure button! It’s not complicated!"* --- ## Chapter 21: Unlocking Camera MakerNotes: Real-World EVF Reticle Overlays (`A` / `⊙`) When you miss focus on a shot, the camera manufacturer usually blames you. But did you miss focus, or did the camera's autofocus algorithm lock onto a microphone stand behind the subject? Press `A` to illuminate the true camera autofocus points directly over the photo: ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ │ │ ┌──────┐ │ │ │ [ ] │ ◀── Corner brackets: AI Eye/Face Detected │ │ └──┬───┘ │ │ │ │ │ ┌─────┴─────┐ │ │ │ ┌───┐ │ │ │ │ │ ✛ │ │ ◀── Solid Emerald Box: Sensor Point Locked│ │ │ └───┘ │ │ │ └───────────┘ │ │ ▲ │ │ └──── Frosted White Frames: Available AF Grid │ └─────────────────────────────────────────────────────────────────────────────┘ ``` - **What you see**: MPViewer parses the proprietary camera manufacturer MakerNotes (Canon, Nikon, Sony, Fujifilm, Lumix, OM System). - It extracts the exact sensor pixel coordinates where the autofocus system locked during exposure. - If the green reticle is on the subject's ear, you know instantly why the eyes are soft. Zero guesswork. --- ## Chapter 22: Smart Face Zoom: Single-Key Subject Cycling (`Z` / `C`) You're reviewing a corporate board of directors portrait with eight people standing in a row: - Press `Z` or `C`. - MPViewer's Vision Neural Engine detects all human faces in the frame and jumps immediately to Person #1 at 100% pixel magnification. - Tap `Z` again: snaps directly to Person #2. - Tap `Z` again: snaps to Person #3. - In five seconds, you have verified sharpness and eye state across all eight subjects without touching a scroll wheel or panning slider. --- ## Chapter 23: The Art of One-Hand Speed Culling: The WASD / JKOP Protocols (Coffee in the Other Hand) If you cull 3,000 photos by clicking buttons with a mouse, you will have carpal tunnel syndrome before you're thirty-five. Professional culling is done entirely on the keyboard. ``` [LEFT HAND: WASD CLUSTER] [RIGHT HAND: JKOP CLUSTER] ┌───┐ ┌───┐ ┌───┐ │ W │ = Pick (Green Flag) │ O │ │ P │ = Pick (Green Flag) ┌───┼───┼───┐ ┌───┼───┴───┼───┘ │ A │ S │ D │ │ J │ K │ └───┴───┴───┘ └───┴───────┘ │ │ │ │ │ │ │ │ └── Next Photo │ │ └── O = Reject (Red Flag) │ └────── Reject (Red Flag) │ └──────── Next Photo └────────── Prev Photo └────────────── Prev Photo ``` - **The Left-Hand WASD Protocol**: - `A`: Previous Photo - `D`: Next Photo - `W`: Pick (Green Flag) + Auto Advance - `S`: Reject (Red Flag) + Auto Advance - `Q`: Toggle 100% Zoom - `Z` / `C`: Cycle Faces - `X`: Toggle Split Comparison - *Keep your right hand on your coffee mug.* - **The Right-Hand JKOP Protocol**: - `J`: Previous Photo - `K`: Next Photo - `P`: Pick - `O`: Reject - `L`: 100% Zoom - `U`: Clear Flag / Unflag (`⇧P` for Focus Peaking) - **The 150ms Pacing Safeguard**: MPViewer introduces a calibrated 150 ms visual hold when auto-advancing on a rating key, ensuring your brain registers the confirmation badge before the next frame slides into view. --- ## Chapter 24: Taming Continuous Fire: Auto-Burst Stacking & The AI Best Shot Crown (`👑`) Sports, wildlife, and wedding photographers shoot 30 frames per second. At the end of an afternoon, you have 600 photos of the exact same basketball dunk. ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ ⊞ 8 FRAMES [STACK EXPANDED: PRESS B] │ │ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────┐ │ │ │ 91% │ │ 94% │ │ 99% 👑 │ │ 88% │ │ 72% │ │ 65% │ │ │ │ Eyes: ✗ │ │ Eyes: ✓ │ │ Eyes: ✓ │ │ Eyes: ✓ │ │ Eyes: ✗ │ │ Blink │ │ │ │ IMG_01 │ │ IMG_02 │ │ IMG_03 │ │ IMG_04 │ │ IMG_05 │ │ IMG_06 │ │ │ └─────────┘ └─────────┘ └─────────┘ └─────────┘ └─────────┘ └─────────┘ │ │ ▲ │ │ └──── AI Best Shot Winner: Promoted to Cover Card │ └─────────────────────────────────────────────────────────────────────────────┘ ``` 1. **Auto-Burst Stacking (`B` / `⊞`)**: Groups photos captured within 1–20 seconds into a single clean visual deck. Your gallery cleans up from 2,000 items to 150 distinct moments. 2. **AI Best Shot Crown (`👑`)**: - Calculates Laplacian variance across the eyes and faces in each frame of the burst. - Detects eye blinks (`Blink ✗`) and smiles (`Smile ✓`). - Mathematically crowns the sharpest, best-composed frame with the **Gold Crown (`👑`)** and promotes it to the cover thumbnail of the stack! --- ## Chapter 25: The Opt-In Intelligence Philosophy: Eye & Blink Analysis Without Battery Vampires Every modern software company wants to shove machine learning down your throat 24 hours a day, setting your MacBook’s fans screaming and draining your battery before lunch. MPViewer takes a radically different stance: **Machine Intelligence is strictly OPT-IN.** ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ THE OPT-IN TOGGLE MATRIX │ │ │ │ [ Menu: Photo > Check Eyes ] [ Toolbar: Stack / Eye Icons ] │ │ │ │ STATE: OFF (Default) STATE: ON (Opt-In) │ │ ────────────────────────────── ──────────────────────────────────── │ │ • 0% Neural Engine Load • Parallel Apple Vision Execution │ │ • Pure Zero Battery Drain • Green [✓ Face Count] Badge │ │ • Clean Unmarked Thumbnails • Red [⚠️ Blink] Warning Overlay │ │ • Instant 1ms Directory Lists • Smart Face Zoom Prioritizes Blinks │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 25.1 The Zero-Footprint Default State By default, **all automatic face, blink, and smile analyses are completely OFF**. - When these features are off, MPViewer behaves as if they do not exist. There are no background daemons eating 80% CPU, no hidden temporary files bloating your SSD, and no random visual clutter plastered across your thumbnail grid. - Your directories open with pure raw speed, and your laptop runs completely silent and cool in the field. ### 25.2 Engaging the Engine: Three Explicit Opt-In Switches When you are ready to triage a 500-shot corporate group session or a fast wedding party series, you engage the Apple Vision Neural framework explicitly: 1. **The Toolbar Eye Icon**: Click the dedicated Eye icon in the gallery toolbar. 2. **Contextual Right-Click**: Select any batch of photos > Right-click > **Check Eyes & Blinks (AI)**. 3. **Settings Panel**: Enable or disable automated burst and culling analysis under **Settings > AI Culling & Best Shot**. ### 25.3 Visual Badges & Smart Face Cycling The moment you run the analysis across your selection: - **Green `✓` Badge**: Confirms all detected subjects have their eyes open, annotated with the exact face count (e.g., `✓ 4`). - **Red `⚠️ Blink` Badge**: Flags frames where one or more subjects blinked or squinted during exposure. - **Smile `✓` Indicator**: Identifies frames where open smiles were detected, factoring directly into the AI Best Shot score. - **Instant Culling Sync**: When viewing a flagged group photo in Fullscreen, pressing **`Z`** (Smart Face Zoom) or **`Tab`** skips open eyes and **automatically zooms directly onto the blinking person first**, allowing you to reject the shot in half a second without searching the frame. - **Persistent Local State**: Analysis scores are cached in a lightweight `.mpviewer-folder.json` sidecar inside the directory. Re-opening a folder with 3,000 analyzed shots reloads all green and red badges in 1 millisecond. > [!NOTE] > **Dave Chappelle on Modern AI Nonsense**: > *"Everybody’s selling you AI now. You buy a toothbrush, it’s got AI. You buy a toaster, it wants to connect to the Wi-Fi and give you life advice. 'Hey Dave, your toast is ready, and by the way, you look depressed.' Man, get out of here! I don't need my computer analyzing my photos while I’m trying to drink my coffee. When I want you to look for blinks, I’ll press the button. When I don't, sit there, be quiet, and show me the pictures. That’s what MPViewer does. It doesn't run its mouth until you tell it to speak. Keep it real."* --- ## Chapter 26: The Arena: Multi-Frame Split Screen Shootouts (2×2 Grid / `X`) ``` ┌───────────────────────────────┬───────────────────────────────┐ │ [✓ Pick] [★★★★☆] 1: _R5_0102 │ [✓ Pick] [★★★★★] 2: _R5_0103 │ │ │ │ │ Pane 1 │ Pane 2 [ACTIVE] │ │ │ │ ├───────────────────────────────┼───────────────────────────────┤ │ [✗ Reject] [★★★☆☆] 3: _R5_0104│ [✓ Pick] [★★★★☆] 4: _R5_0105 │ │ │ │ │ Pane 3 │ Pane 4 │ │ │ │ └───────────────────────────────┴───────────────────────────────┘ ``` When you have three or four frames that look nearly identical: 1. Select them in the grid and press `X` (or click **Compare**). 2. MPViewer splits the canvas into 2-up side-by-side or 4-up 2×2 quadrants. 3. **Synchronized Panning & Zoom**: Zooming into the subject's left eye in Pane 1 zooms to the *exact same relative coordinates* across Panes 2, 3, and 4 simultaneously! 4. Rate and flag winners directly on the individual pane headers. --- ## Chapter 27: Video Playback, High-Res Frame Grabbing (`S`), and A/B Trimming (`T`) Modern cameras shoot 8K and 4K video clips alongside raw stills: - **J-K-L Shuttle Navigation**: Industry-standard editing controls (`L` = Forward 1x/2x/4x/8x, `K` = Pause, `J` = Reverse). - **Lossless Frame Grab (`S`)**: Hit `S` during video playback. MPViewer immediately extracts the current frame at native uncompressed sensor resolution (e.g. 3840×2160 or 7680×4320) and writes a pristine 16-bit TIFF or JPEG into your folder. - **Lossless A/B Video Trimming (`T`)**: Set In point (`I`), set Out point (`O`), press `T`. MPViewer trims the video file at stream keyframes **without re-encoding**, saving hours of rendering time. --- # PART IV: THE NON-DESTRUCTIVE DIGITAL DARKROOM ## Chapter 28: Perceptual Tone & Color: OKLab Math, Curves, & Bradford Adaptation (No More Radioactive Blue Skies) ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ OKLAB PROCESSING PIPELINE │ │ │ │ Linear sRGB / P3 │ │ │ │ │ ▼ │ │ [Bradford Matrix] ────▶ Accurate Chromatic Adaptation (Kelvin + Tint) │ │ │ │ │ ▼ │ │ [Cube-Root M1/M2] ────▶ Non-Linear LMS Cone Representation │ │ │ │ │ ▼ │ │ [OKLab L, a, b] ────▶ Perceptual Lightness, Red/Green, Yellow/Blue │ │ │ │ │ ▼ │ │ Outputs smooth, uniform lightness shifts with zero hue discoloration │ └─────────────────────────────────────────────────────────────────────────────┘ ``` Why do traditional photo editors turn bright blue skies into ugly cyan splotches when you boost exposure? Because they calculate color math in dumb sRGB or legacy CIELAB color spaces. MPViewer processes tone and color inside the **OKLab perceptual color space**: - **Perceptual Uniformity**: Adjusting exposure affects lightness without shifting hue angles. Blue skies stay blue; skin tones don't turn into plastic yellow masks. - **Bradford Chromatic Adaptation**: Extreme White Balance shifts (2000K to 12000K) preserve natural spectral response without crushing mid-tone saturation. - **Parametric Tone Curve**: Manipulate global Luminance or individual Red, Green, and Blue channels with smooth cubic splines. --- ## Chapter 29: Surgical Hue Sculpting with the 8-Channel HSL Color Tuner (De-Neoning the Grass) In the Inspector, access 8 discrete spectral bands (*Red, Orange, Yellow, Green, Aqua, Blue, Purple, Magenta*): - **Skin Tone Mastery**: Isolate Orange and Yellow to refine portrait luminescence without touching background foliage. - **Vegetation De-Neoning**: Shift harsh fluorescent green grass toward warm organic olive tones. - Every adjustment is non-destructive and tracked inside your `.xmp` sidecar. --- ## Chapter 30: Vignette Dynamics & Atmospheric Optical Effects Not every shot requires surgical color correction; sometimes a composition simply needs subtle edge falloff or optical vignetting to guide the viewer’s eye directly toward the emotional center of the frame. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ QUICK ADJUST: VIGNETTE & EFFECTS │ │ │ │ Vignette Amount: [ ───●────────────────── ] -35 (Darken Edges) │ │ Midpoint: [ ──────────●─────────── ] 50 │ │ Feather / Round: [ ────────────────●───── ] 75 (Smooth Diffusion) │ │ │ │ * Stored in .xmp sidecar * Zero raw data modification * Instant GPU │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 30.1 Non-Destructive Optical Vignetting Inside the **Quick Adjust** inspector panel: - **Amount Slider**: Slide left for a classic dark optical edge falloff (drawing focus inward toward portraits or central architectural subjects); slide right for a high-key clean white vignette (ideal for high-fashion or clean product catalog staging). - **Midpoint & Feather Sliders**: Control the physical reach of the vignette curve. Feathering guarantees a continuous, smooth perceptual gradient with zero color banding across 10-bit and 16-bit color spaces. - **Sidecar Blueprint**: Like all MPViewer adjustments, your vignette parameters are written directly to the standardized `.xmp` sidecar. Your raw camera sensor data remains pure and pristine. > [!TIP] > **George Carlin on "Atmospheric" Effects**: > *"When a photographer doesn't know how to light a room, what does he do? He slaps a vignette on it! 'Oh, George, it adds atmosphere; it creates mood.' No, it creates darkness! It looks like you're peering down a dirty cardboard mailing tube! But if you're gonna use it, at least feather the damn edges so it doesn't look like you dropped a black dinner plate on the bride’s head!"* --- ## Chapter 31: The Geometry Workshop: Crop Dynamics, Straightening & Golden Spirals (`C`) ``` ┌───────────────────────────────────────────────┬─────────────────────────────┐ │ │ Aspect Ratio Presets: │ │ ┌───────────────────┐ │ [ 3:2 (35mm Standard) ▼ ] │ │ │ \ | / │ │ │ │ │ \ Golden / │ │ Orientation: │ │ │ ─── Spiral ────── │ │ [ ● Landscape ] [ Portrait] │ │ │ / | \ │ │ │ │ │ / | \ │ │ Horizon Straighten: │ │ └───────────────────┘ │ [─────●────────] +3.2° │ │ │ │ │ │ Composition Grid Overlay: │ │ │ (*) Rule of Thirds │ │ │ ( ) Golden Ratio (Phi) │ │ │ ( ) Golden Spiral (Fib) │ │ │ ( ) Dynamic Diagonals │ │ │ ( ) Center Crosshairs │ │ │ │ │ │ [Reset] [Apply (Enter)] │ └───────────────────────────────────────────────┴─────────────────────────────┘ ``` Press `C` to engage the Geometry Studio: - **Sub-Pixel Horizon Straightening**: Drag the angle slider from −15° to +15° with live, butter-smooth OpenGL/Metal canvas updates. - **AI Auto-Leveling**: Click the magic wand to automatically detect dominant horizontal sea lines or vertical architectural pillars and level the frame in one click. - **Composition Guides**: Switch between *Rule of Thirds, Golden Ratio (Phi Grid), Fibonacci Golden Spiral, Dynamic Diagonals*, and *Architectural Crosshairs*. --- ## Chapter 32: Vector Markups, Architectural Calipers & Legal GDPR Privacy Redactions (`D`) ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ GDPR REDACTION ENGINE (POLYGON) │ │ │ │ 1. Draw Polygon Mask ──▶ 2. Select Style: │ │ ├─ [Gaussian Blur] (Smooth radius) │ │ ├─ [Pixel Mosaic] (Block pixelation) │ │ ├─ [Solid Mask] (Opaque black/white) │ │ └─ [Invert Mask] (Hides entire background) │ │ │ │ 3. Quick Export (⇧⌘E) ──▶ Baked permanently into client deliverables │ └─────────────────────────────────────────────────────────────────────────────┘ ``` Press `D` to open the Annotation Studio: - **Architectural Calipers**: Draw dimension lines with arrowheads, set a reference scale, and display exact distances in meters, feet, or inches for real estate surveys. - **Legal GDPR Redaction**: - Draw custom polygon masks over vehicle license plates, house numbers, or pedestrian faces. - Choose between *Gaussian Blur, Pixel Mosaic*, or *Solid Opaque Mask*. - When exporting client proofs, redactions are permanently baked into pixels, protecting you from crippling European GDPR fines. --- ## Chapter 33: Scientific Histograms, RGB Waveforms, and the Vectorscope (The Cooked Shrimp Skin Rule) Ditch the basic luminance mountain. MPViewer gives you true broadcast-grade diagnostics: - **RGB Waveform**: Plots Red, Green, and Blue intensity across the horizontal screen axis. You can immediately identify whether a white wedding dress is clipping in the red channel while retaining green/blue detail. - **Broadcast Vectorscope**: Circular color-wheel display showing hue direction and saturation amplitude, complete with an integrated **Skin Tone Reference Line (I-Line)**. If the subject's face doesn't align with the skin-tone axis, your white balance is wrong and they look like cooked shrimp. - **Linear RAW Sensor Histogram**: Toggle to inspect pre-gamma sensor data before camera tone curves are applied. --- ## Chapter 34: The Sidecar Blueprint: Decoding the Open `.xmp` Architecture MPViewer will never trap your hard work inside an encrypted proprietary file format. Your ratings, color tags, crops, and tone adjustments are saved into open-standard Adobe-compatible `.xmp` sidecars: ```xml 5 Green 3.24 +0.35 -24 +18 ``` If you decide to open your shoot in another program tomorrow, your star ratings, labels, and crop boundaries appear instantly. You have total creative freedom and zero vendor lock-in. --- # PART V: 360° SPHERICAL & INTEGRATED TOUR STUDIO ## Chapter 35: Stepping Inside the Sphere: Equirectangular & Little Planet Physics (Stopping Viewer Nausea) MPViewer automatically recognizes 2:1 aspect ratio panoramic photos and activates its internal 360° projection engine: - Click and drag to look around in full 360° × 180° spherical space. - Scroll to zoom seamlessly from standard field-of-view to ultra-wide stereographic **Little Planet** projections. - `⇧←` and `⇧→` navigate between neighboring photos while remaining in 360° sphere mode. - `⇧↑` and `⇧↓` zoom the field of view smoothly. - Perfect for surveying panoramic shots from Insta360, Ricoh Theta, Matterport, or multi-row stitched DSLR panoramas. --- ## Chapter 36: Three-Axis Gimbal Leveling: Pitch, Roll, and Yaw Horizon Correction Taking a 360 photo on an uneven tripod or monopod ruins the entire virtual experience. Looking at a crooked room gives viewers motion sickness within ten seconds. - Open the 360 Studio and use the **Pitch**, **Roll**, and **Yaw** sliders. - Watch the spherical mesh rotate in real-time until walls are straight and the horizon is true. - Adjustments are saved losslessly to the XMP orientation tags. --- ## Chapter 37: The Tour Studio Blueprint: Visual Nodes, Doorway Portals & Hotspot Curation Why pay $50/month to proprietary virtual tour platforms that host your tours on their sluggish servers and slap their logos all over your work? ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ TOUR GRAPH TAB (Infinite Visual Canvas) │ │ │ │ ┌───────────────┐ Yellow Wire ┌───────────────┐ │ │ │ Living Room │ (Port) ───────────────────────> │ Kitchen │ │ │ │ [Audio: 14s] │ │ [Audio: 22s] │ │ │ └───────────────┘ └───────────────┘ │ │ │ │ │ │ └────────────────────────┬────────────────────────┘ │ │ ▼ │ │ [ Unify Hotspot Styling ] │ │ Size: XL | Style: Minimal White │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 37.1 Visual Hotspot Creation & Direct Sphere Dragging Connecting 360° rooms together is completely visual: - **Aim & Drop**: In the 3D Sphere viewport, rotate your camera toward any physical doorway or hallway, right-click and choose **Link to Room…**, then select your target scene. - **Card Drag-and-Drop**: Drag a room card from the room list and drop it directly onto the 3D sphere. An interactive navigational hotspot marker is instantiated at that exact spatial coordinate instantly. - **Locking Initial Perspectives**: Every room needs an intentional entry point. Orient the camera toward the most flattering architectural angle and click **Set Starting View**. When a visitor enters that room, the camera initializes at that exact yaw, pitch, and field of view. ### 37.2 Full Hotspot Editing & Global Style Unification In earlier software workflows, modifying an existing link required deleting it and rebuilding the metadata from scratch. In MPViewer: - **Direct Hotspot Inspection**: Click any existing hotspot arrow, info point, or video pin to open its live editor. Modify the target destination, adjust title text, update website URLs, or swap custom icons instantly. - **Continuous Scaling & XL Presets**: Hotspots automatically scale with user zoom levels. Choose from discrete presets (**Small**, **Medium**, **Large**, **Extra Large**) or use the fine-tuning slider for granular ±15% micro-adjustments. - **The Infinite Tour Graph Tab**: Switch to the **Tour Graph** canvas to see your entire project mapped as an interconnected node network: - Drag wires from one room node’s yellow output port onto another to create immediate reciprocal links. - Review voice narration durations directly on node headers. - Click **Unify Hotspots** to harmonize icon styles, colors, and badge sizes across twenty rooms with a single click. --- ## Chapter 38: Architectural Wayfinding: Multi-Floor Maps, Room Drag-and-Drop & Document Photo Cleanup A sprawling multi-level estate or corporate office cannot be understood through disconnected 360° bubbles alone. Visitors need an architectural floor plan. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ FLOOR PLAN STUDIO │ │ │ │ [ Floor 1: Ground ] [ Floor 2: Executive Suites ] [ + Add Level ] │ │ │ │ Rooms on This Level: Interactive Floor Plan Canvas: │ │ ┌──────────────────┐ ┌──────────────────────────────────────┐ │ │ │ Living Room [✓] │ ───────> │ [Pin 1] Living [Pin 2] Foyer │ │ │ │ Kitchen [✓] │ (Drag) │ \ │ │ │ │ Study [ ] │ │ \__ Live POV Radar Cone │ │ │ └──────────────────┘ └──────────────────────────────────────┘ │ │ │ │ DOCUMENT CLEANUP: [ Auto-Crop to Paper ] [ Brighten ] [ High Contrast] │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 38.1 Multi-Level Hierarchy & Room Mapping - **Custom Floor Management**: Create distinct levels (`Ground Floor`, `Basement Wine Cellar`, `Rooftop Terrace`). Each level maintains its own dedicated architectural drawing. - **One Room = One Pin**: The sidebar clearly groups rooms assigned to the active floor versus unassigned rooms. Drag any room from the list onto the floor plan canvas to drop its navigational pin. - **Live POV Radar Cones**: When a visitor explores a room in the web tour, the floor plan pin projects a dynamic illuminated radar cone showing the exact directional orientation (yaw) and viewing angle (FOV) in real time. ### 38.2 Smartphone Floor Plan Photo Cleanup Engine Photographers on location rarely have CAD files; they snap a quick photo of an architect’s paper blueprint taped to a drywall stud under terrible yellow halogen lighting. MPViewer transforms that messy photo into a crisp blueprint: - **Auto-Crop to Paper**: Intelligently identifies the geometric edges of the physical paper or blueprint, squaring the perspective and cropping away the distracting background desk or wall. - **White Background Normalization**: Strips away yellow lighting casts and grimy paper tones, converting the background into a clean, uniform pure white canvas. - **Contrast & Sharpness Boost**: Intensifies thin architectural pen lines and room labels, making walls and doors immediately legible on mobile screens. --- ## Chapter 39: Immersive Audio: Per-Room Voice Narration & Ambient Soundtracks (Hands-Free Living Audio) A silent virtual tour feels like an abandoned hospital. Adding sound brings spaces to life. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ NARRATION & SOUNDTRACK WORKSHOP │ │ │ │ GLOBAL SOUNDTRACK: [ ambient_piano_loop.mp3 ] Volume: [ ──●───── ] 30%│ │ │ │ ROOM NARRATION (Living Room): │ │ [ ● RECORD MIC ] [ ■ STOP ] [ ▶ PLAY ] Duration: 00:18.4 │ │ │ │ * Live 360 sphere remains 100% interactive while recording voice * │ │ * Hands-free auto-save commits audio the moment you switch rooms * │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 39.1 Hands-Free In-App Voice Narration Recording guided tours usually requires external audio software, tedious file naming, and complex manual linking. Tour Studio eliminates that entire friction point: - **Live Interactive Recording**: Click the large **Record Narration** button. Your Mac’s microphone begins capturing audio immediately while **the 360° panorama remains completely interactive**. Look around, check room details, and speak naturally as if walking a client through the front door. - **Hands-Free Auto-Save on Room Switch**: You do not have to stop, name files, or click through modal save dialogs. The second you click to navigate to the next room, MPViewer automatically commits and encodes the audio clip, links it to the departing room, and readies the microphone for the new space. - **Per-Room Volume Ducking**: When a room narration plays, MPViewer automatically ducks the global music track so the spoken voice remains crisp and intelligible. ### 39.2 Global Tour Soundtracks Under Tour Settings, drop any MP3 or AAC music track to serve as the global ambient background. Adjust the global master volume slider so the soundtrack remains an elegant, unobtrusive acoustic foundation. --- ## Chapter 40: Publishing Without Shackles: Client Banners, Multi-Resolution Output & 1-Click Deploy (Saying Goodbye to Cloud Rent) You should own your client deliverables outright. Never hostage your photography behind monthly third-party server hosting subscriptions. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ EXPORT & PUBLISH CONTROL CENTER │ │ │ │ Resolution: ( ) 4096 (Mobile Optimized) (●) 8192 (8K Ultra) │ │ Format: (●) WebP (Next-Gen Small) ( ) JPEG (Universal) │ │ │ │ DESTINATION: │ │ [ Local Folder ] [ Standalone ZIP ] [ Direct SFTP ] [ Amazon S3 ] │ │ │ │ CLIENT BRANDING BANNER: │ │ Name: [ Jane Doe Properties ] Phone: [ +1 555-0199 ] [ Logo Upload ] │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 40.1 The Export & Publish Control Center Everything required to compile and publish a production-ready tour lives in a single, unified export sheet: - **Resolution Matrix**: - **4096 (4K)**: Ultra-fast loading for mobile-first marketing and social campaigns. - **8192 (8K)**: Uncompromising clarity for high-end commercial architecture, Retina displays, and large monitors. - **Next-Gen Codec Selection**: Select between modern, lightweight **WebP** panoramas (reducing total payload size by up to 60%) or legacy **JPEG** for legacy browser compatibility. - **Client Contact & Branding Banner**: Embed your client's real estate brokerage logo, direct phone number, email, and inquiry button directly into the tour’s frosted-glass header bar. When clients share the tour, their branding travels with every view. ### 40.2 One-Click Deployment Destinations You choose how your tour enters the world: 1. **Local Self-Contained Folder**: Exports an `index.html`, viewer assets, panos, and audio files ready to be opened directly in any web browser without running a local web server. 2. **Packaged ZIP Archive**: Instantly zips the entire bundle for painless client delivery via WeTransfer or AirDrop. 3. **Direct SFTP / FTP Upload**: Enter your client’s server credentials, click Publish, and MPViewer transfers the compiled tour directly to the remote web directory. 4. **Amazon S3 / DigitalOcean Spaces**: Push multi-resolution assets straight to a cloud storage bucket with automatic static website hosting configuration. > [!TIP] > **George Carlin on Cloud Subscriptions & Renting Your Own Work**: > *"What is with this obsession with renting things you already paid for? You bought the camera, you bought the computer, you bought the lenses, and now some corporate suit wants you to pay forty dollars a month just to let other people look at the photos you took? It’s a protection racket! In the old days, a gangster came to your shop and said, 'Nice bakery you got here; be a shame if something happened to it.' Today, a software executive says, 'Nice virtual tour you built; be a shame if the link stopped working because your credit card expired.' MPViewer gives you the compiled HTML, the images, and the code. Put it on your own server, host it on an open bucket, or hand the client a ZIP file. Tell the subscription barons to take a hike!"* --- # PART VI: STUDIO OUTPUT, PRINTING & PRODUCTION PIPELINES ## Chapter 41: ColorSync Precision, Wide Gamuts & Soft Proofing (`S`) The biggest embarrassment in professional photography is having a client call you because the skin tones on their high-end calibrated display look like cooked shrimp: - MPViewer leverages native macOS **ColorSync** color management. - Supports Display P3, Adobe RGB 1998, and ProPhoto RGB gamuts. - Press `S` to toggle **Soft Proofing**: Select your target paper ICC profile and watch MPViewer simulate paper white absorption and highlight out-of-gamut ink clipping in bright pink overlays. --- ## Chapter 42: The Tokenized Print Studio: Dynamic EXIF Typography (`⌘P`) ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ PRINT PREVIEW STUDIO │ │ │ │ ┌─────────────────────────────────────────────────────────────────────┐ │ │ │ _R5_8291.CR3 · 2026-09-08 14:22 · Canon EOS R5 · RF50mm F1.2 L │ │ │ │ ┌───────────────────────────────────────────────────────────────┐ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ [PHOTO AREA] │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ └───────────────────────────────────────────────────────────────┘ │ │ │ │ ISO 100 · 1/8000s · f/1.2 · White Balance: Daylight · Client Select│ │ │ └─────────────────────────────────────────────────────────────────────┘ │ │ │ │ Header Pattern: {name} · {date} {time} · {camera} · {lens} │ │ Footer Pattern: ISO {iso} · {shutter} · {aperture} · WB: {wb} · {rating} │ └─────────────────────────────────────────────────────────────────────────────┘ ``` Press `⌘P` to open the Print Studio: - Compose custom header and footer captions using dynamic metadata tokens: `{name} · {date} · {camera} · {lens} · ISO {iso} · {shutter} · {aperture}` - Perfect for client contact sheets, forensic evidence logs, or fine-art studio gallery proofs. --- ## Chapter 43: Optical Character Recognition: Instant Live Text Extraction (`⌘⇧O`) Photographers and field techs constantly shoot serial numbers, street signs, legal notices, camera slate boards, and exhibition plaques. Typing them out manually is a colossal waste of time. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ LIVE TEXT OCR EXTRACTION [⌘⇧O] │ │ │ │ PHOTO VIEWPORT: CLIPBOARD EXTRACTION: │ │ ┌───────────────────────┐ │ │ │ MODEL: ILCE-7RM5 │ --> "MODEL: ILCE-7RM5 │ │ │ S/N: 4820194-B │ S/N: 4820194-B │ │ │ LENS: FE 24-70mm F2.8 │ LENS: FE 24-70mm F2.8" │ │ └───────────────────────┘ │ │ │ │ * On-device Apple Vision Neural Engine * Zero network calls * │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 43.1 Single-Key Optical Character Extraction (`⌘⇧O`) With any image open in Fullscreen or selected in the gallery: - Press **`⌘⇧O`** (or choose **Photo > Extract Text via Live Text OCR**). - The on-device Vision framework scans the frame, recognizes printed and handwritten typography across 36 languages, and copies the extracted text directly to your macOS clipboard. - Paste camera serial numbers straight into your equipment insurance spreadsheets, extract street names for rapid IPTC metadata entry, or capture text from whiteboards instantly with 100% accuracy. > [!TIP] > **Bill Burr on Typing Serial Numbers**: > *"Have you ever tried typing a 24-digit lens serial number from a photo while squinting at a screen? You get to digit nineteen, your cat jumps on the desk, you lose your place, and you have to start all over again like a monk in the twelfth century copying the Bible by candlelight! Hit Command-Shift-O, let the machine read the letters, paste it into your insurance sheet, and go have a sandwich!"* --- ## Chapter 44: Burst Motion Sequences: The High-Speed Animated GIF Engine When sports photographers or wildlife shooters capture a 30-frame-per-second burst of an athlete or animal in rapid motion, a single frame only tells a fraction of the story. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ ANIMATED GIF FLIP-BOOK CREATOR │ │ │ │ Selected Sequence: 14 Frames [Burst ⊞] │ │ Framerate: [ 15 fps ] Looping: [ Forever ] Resolution: [ 1080px ] │ │ │ │ [ Create Motion Flip-Book ] --> Export: sequence_action.gif │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 44.1 Compiling Bursts into High-Speed Flip-Books 1. Select any burst stack or range of sequential action frames in the gallery. 2. Choose **File > Export as Animated GIF…**. 3. Set your target playback frame rate (1 to 30 fps), loop behavior, and output width. 4. MPViewer compiles an optimized animated GIF with adaptive color quantization. Perfect for sharing instant motion previews with clients or social channels without opening a heavyweight video editor. --- ## Chapter 45: The Forensic Clipboard: Instant EXIF Metadata Copy When discussing exposure anomalies with second shooters or filing technical bug reports with camera manufacturers, taking a screenshot of an inspector panel is clunky and non-searchable. - Select any photo and choose **Photo > Copy EXIF Data** (or right-click the EXIF panel > **Copy All EXIF**). - A formatted, plaintext block is instantly copied to your clipboard: ```text Camera: Sony ILCE-7RM5 Lens: FE 50mm F1.2 GM Focal Length: 50.0 mm Exposure: 1/1600s @ f/1.2, ISO 100 Metering: Multi-segment | Exposure Bias: 0.0 EV Flash: Did not fire | White Balance: Manual (5400K) Shutter Type: Electronic | Capture Date: 2026-09-11 14:22:08 ``` - Paste it directly into emails, studio production logs, or technical client documentation in clean, structured text. Shut down any argument about shutter speed in three seconds. --- ## Chapter 46: The Pro Export Studio: Lanczos Resampling, AVIF, OpenEXR, WebP & JPEG XL Delivering master images in 2026 means knowing when to use next-generation codecs that preserve high dynamic range without bloating file sizes. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ PRO EXPORT MASTERING CODECS │ │ │ │ Codec Dynamic Range Bit Depth Primary Industry Use │ │ ───────────────────────────────────────────────────────────────────── │ │ AVIF HDR (Rec.2100) 10 / 12-bit Next-gen web delivery │ │ OpenEXR Full Float 16 / 32-bit VFX, 3D CGI & Color Grading │ │ JPEG XL Lossless / Lossy Up to 32-bit Archival & High-bit Photo │ │ WebP Standard Gamut 8-bit Universal lightweight web │ └─────────────────────────────────────────────────────────────────────────┘ ``` - **AVIF (AV1 Image File Format)**: Delivers superior compression efficiency compared to legacy formats, with full native support for 10-bit and 12-bit HDR wide color gamuts. - **OpenEXR (`.exr`)**: The industrial standard for Hollywood VFX pipelines. Exports true floating-point linear image data, allowing colorists and 3D compositors to recover highlight stops far beyond standard display gamuts. - **JPEG XL (`.jxl`)**: The photographer’s dream archive codec. Offers mathematically lossless transcoding of legacy JPEG files with significant size savings, alongside wide-gamut 16-bit professional master storage. - **Metadata Scrubbing Controls**: The export dialog includes dedicated toggles to **Strip GPS Coordinates** (essential for protecting client home locations) and **Strip Private Camera MakerNotes** prior to commercial client handoff. --- ## Chapter 47: Atomic Export Safety & The Sacred Law of Sidecar Cohesion Few things cause more panic than exporting an entire day’s shoot to an external drive only to find corrupted zero-byte files because the drive ran out of space midway through the batch. ### 47.1 Pre-Flight Space Safety Checks & Atomic Swaps MPViewer guarantees export integrity through strict safety protocols: 1. **Pre-Flight Disk Space Verification**: Before writing a single byte during a batch export, MPViewer calculates total required storage against target volume free space. If space is insufficient, the operation halts immediately before writing broken files. 2. **Atomic Writes via Temporary Buffers**: Images are rendered into temporary files on the target volume. Only when the final checksum verifies successful completion is the file atomically swapped to its permanent name. You will never, ever end up with a half-written, corrupted file on your drive. ### 47.2 File Operations and the Sacred Law of Sidecars When you copy (`⌘C`), cut (`⌘X`), move, or delete (`⌦`) photos inside MPViewer: - **The XMP Sidecar Never Stays Behind**: Your `.xmp` sidecar is bound atomically to its parent image. If you move a RAW file to a subfolder or trash it, its ratings, color labels, crop rectangles, and adjustments travel with it. Orphaned sidecars are permanently eradicated. --- ## Chapter 48: Press-Ready Metadata & Speed Tagging with Code Replacements ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ CODE REPLACEMENTS PIPELINE │ │ │ │ Tab-Delimited Code File: │ │ j34 [TAB] Giannis Antetokounmpo #34 (Milwaukee Bucks) │ │ lbj [TAB] LeBron James #23 (Los Angeles Lakers) │ │ │ │ Typing in Tag or IPTC Field: │ │ "Dunk by \j34\ over defense" ────▶ "Dunk by Giannis Antetokounmpo #34..." │ └─────────────────────────────────────────────────────────────────────────────┘ ``` Press photographers at live sports events do not have time to type long names like *"Giannis Antetokounmpo"* fifty times a night: - Under **Settings > Metadata**, load a tab-delimited text dictionary. - In any caption, headline, or keyword box, type `\code\` (e.g. `\j34\`). - The moment you press space or save, MPViewer replaces it with the full legal string: `Giannis Antetokounmpo #34 (Milwaukee Bucks)`. --- ## Chapter 49: Geotagging Mastery: Interactive Apple Maps & GPX Track Synchronization - **Interactive Map (`Photo > Geotag Map`)**: Plots your shoot on native Apple Maps with pin clusters. - **GPX Tracklog Sync**: Load GPX track data from your Garmin GPS or smartphone tracking app. MPViewer matches camera timestamps against track coordinates and writes latitude, longitude, and elevation directly into your image EXIF. - **Reverse Geocoding**: Automatically turns GPS numbers into readable country, province, city, and street tags. --- ## Chapter 50: Perceptual Hash Duplicate Hunting & Time-Shift Synchronization ### 50.1 Visual Duplicate Hunter Looking for duplicate photos by filename or byte size is useless if one is a 50MB RAW and the other is a 2MB JPEG export. - MPViewer runs a **Discrete Cosine Transform (DCT) Perceptual Hash** across images. - It identifies visual twins regardless of format, resolution, or compression differences. ### 50.2 Time-Shift Synchronization You shot an event with three camera bodies. Two had correct clocks; the third was set to 2018 or three hours behind because of daylight saving time. - Select the rogue camera's photos, open **Time Shift**, and enter the exact hours, minutes, and seconds difference. - MPViewer shifts all timestamps uniformly, interleaving all three cameras in perfect chronological order. --- # PART VII: PERFORMANCE, CACHING & HARDWARE HARNESSING ## Chapter 51: The Two-Tier Decoding Engine: Embedded RAW Previews vs. 90% Thresholds ``` ┌─────────────────────────────────────────────────────────────────────────────┐ │ TWO-TIER DECODING PIPELINE │ │ │ │ Incoming RAW File (CR3 / NEF / ARW) │ │ │ │ │ ├──▶ [Extract Embedded Preview JPEG] ──▶ Ready in 2 milliseconds │ │ │ │ │ ▼ │ │ Is Viewport Magnification ≥ 90% Sensor Resolution? │ │ ├─ NO ──▶ Display Embedded Preview (Zero CPU Latency) │ │ └─ YES ──▶ Dispatch Apple Silicon Metal Hardware RAW Demosaic │ │ (Renders 100% Tack-Sharp Sensor Pixels) │ └─────────────────────────────────────────────────────────────────────────────┘ ``` - **The 90% Threshold Secret**: In **Settings > Performance**, leave *Prefer Embedded RAW Preview* active. MPViewer uses the camera-generated preview JPEG for lightning-fast 60fps gallery navigation. - The millisecond you zoom past 90% magnification, MPViewer seamlessly switches to full floating-point Apple Silicon Metal RAW demosaicing. You get instant speed in the gallery and forensic accuracy when checking critical focus. --- ## Chapter 52: Disk Cache Tuning, Multi-Monitor Workstations & Zero-Telemetry Privacy - **Cache Hygiene**: Configure disk cache limits (10GB, 25GB, 50GB). MPViewer enforces LRU (Least Recently Used) automatic cache eviction so your Mac's SSD never runs out of space. - **Dual-Display Command Center**: Put your multi-column Gallery Grid on Display 1, while Display 2 runs a borderless, color-calibrated Fullscreen presentation for client viewing. - **Air-Gapped Studio Privacy**: MPViewer sends **zero network packets**, contains zero trackers, and never connects to the internet behind your back. What happens on your workstation stays on your workstation. --- # PART VIII: EXTERNAL STORAGE PROFILING & HIGH-SPEED FIELD WORKFLOWS ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ PART VIII: EXTERNAL STORAGE PROFILING & FIELD WORKFLOWS │ │ │ │ "You can buy a sixty-core computer, but if you plug in a five-dollar │ │ plastic thumb drive you found in a parking lot, your workstation │ │ will crawl like a wounded snail. Respect the bus speed." │ └─────────────────────────────────────────────────────────────────────────┘ ``` ## Chapter 53: The Hardware Benchmark: Active Storage Profiling, Speed Badges & Latency Tiers (The $5 Parking Lot Drive) Modern digital technicians work in unpredictable environments. One day you are hooked into a 40 Gbps Thunderbolt 5 RAID array; the next you are handed a cheap, heat-throttled USB-A flash drive formatted in exFAT by a wedding planner. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ STORAGE PROFILE INDICATOR (Status Bar) │ │ │ │ [ Ultra SSD: 2,850 MB/s ] [ Balanced: 420 MB/s ] [ Slow: 32 MB/s ] │ │ Green Badge Yellow Badge Red Alert Badge │ │ │ │ Button: [ Re-measure Storage Speed ] --> Micro-Benchmark Execution │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 53.1 Active Read/Write Micro-Profiling When an external volume is mounted, MPViewer runs a non-destructive, sub-second micro-benchmark measuring sequential throughput, random 4KB read latency, and directory traversal speeds: - **The Live Speed Badge**: The status bar displays the active drive’s verified speed (e.g., `⚡ 1,240 MB/s` or `🐢 28 MB/s`). - **"Measure Again" On Demand**: If drive performance fluctuates due to thermal throttling or competing background transfers, click **Measure Again** to re-profile the volume immediately. ### 53.2 The Three Dynamic Policy Tiers MPViewer dynamically adapts its entire background I/O behavior based on the measured storage tier: 1. **Ultra Tier (> 800 MB/s — NVMe Thunderbolt / Internal SSD)**: Maximum concurrent worker threads, instant full-resolution speculative RAW background pre-caching, zero throttling. 2. **Balanced Tier (150–800 MB/s — USB-C Portable SSDs)**: Standard worker pools, prioritizing active viewport decoding while pacing background thumbnail updates. 3. **Slow / Throttled Tier (< 150 MB/s — Old USB Flash Drives / Mechanical Drives)**: Shifts immediately to single-threaded sequential reads, suppresses aggressive pre-fetching, and avoids seeking thrash across rotating platters. --- ## Chapter 54: High-Latency Network Shares & Rugged Field Drives: Conquering 2,500+ RAW Directories in One Second (Bypassing IT Lanyards) Opening a network directory containing 2,500 uncompressed 60-megapixel RAW files over a studio Wi-Fi or 1 Gbps Ethernet connection has traditionally been a recipe for the macOS spinning rainbow wheel of death. ``` ┌─────────────────────────────────────────────────────────────────────────┐ │ HIGH-LATENCY NETWORK & SLOW DRIVE PIPELINE │ │ │ │ TRADITIONAL VIEWER (Hang): │ │ Read File 1 Header ──> Stat ──> Read File 2 Header ──> (120s Freeze) │ │ │ │ MPVIEWER 1.5 FAST ENGINE: │ │ Pure Directory Stream (No Header Reads) ──────────────> Opens in 1.1s │ │ Progressive Single-Hit CR3 Thumbnail Decoders ────────> 4 I/O Workers │ └─────────────────────────────────────────────────────────────────────────┘ ``` ### 54.1 The 1-Second Directory Revolution In previous software iterations, browsing a folder with 2,500 Canon CR3, Sony ARW, or Nikon NEF files on a slow drive took between 89 and 129 seconds because the operating system attempted to inspect file headers for every individual thumbnail sequentially. - **Header-Free Fast Scanning**: MPViewer 1.5 bypasses individual file header inspection during initial folder enumeration. The directory structure streams into memory in **~1.1 seconds on USB drives** and **~8 seconds on multi-terabyte SMB network shares**. - **Progressive Visual Refinement**: The gallery grid opens immediately. Thumbnails materialize progressively using embedded hardware previews, allowing you to begin browsing, sorting, and rating immediately while background workers fill in subsequent rows. ### 54.2 Single-Hit File Decoders & 4-Worker I/O Management - **Single-Hit Preview Extraction**: For complex container formats (such as Canon CR3), MPViewer extracts the embedded preview and spatial orientation in a single continuous file read, cutting disk head movements in half. - **Dedicated 4-Worker Pipeline**: To prevent bus saturation on high-latency network storage, thumbnail extraction is throttled through an optimized four-worker queue. Your network pipe never chokes, and the UI never drops below 60 frames per second. - **Single-Stroke Navigation**: In Fullscreen, pressing the right arrow advances exactly one photo at a time without skips. The viewport immediately displays a razor-sharp embedded layer while the full-resolution debayer loads smoothly beneath it. Exiting fullscreen automatically centers and highlights your active photo in the gallery grid. > [!NOTE] > **Ricky Gervais on Studio IT Departments**: > *"Have you ever had to deal with an in-house studio IT manager? He sits in a dark room surrounded by server racks that sound like a Boeing 747 taking off, wearing a lanyard like he’s guarding nuclear launch codes. You tell him: 'Mate, the network drive takes two minutes to open a folder of headshots.' And he smiles—that awful, condescending smile—and says: 'Well, technically, the packet handshake across our enterprise subnet requires multi-point domain authentication.' No, mate! Your server is slow! That’s it! Stop talking about subnets and admit you bought cheap cables from the petrol station! MPViewer opens the folder in one second flat without asking his permission. That alone is worth the price of admission."* --- # PART IX: APPENDIXES ## Appendix A: The Master Keystroke & Shortcut Compendium ### Workspace & Gallery Navigation | Keystroke | Function | | :--- | :--- | | `⌘O` | Open Folder from Disk / Volume | | `⌘T` | Open New Workspace Tab | | `⌘W` | Close Active Workspace Tab | | `⌘1` – `⌘9` | Switch Workspace Tab by Index | | `Space` / `Return` / `F` | Enter Immersive Fullscreen | | `⌘A` / `⇧⌘A` | Select All / Deselect All | | `⌘+` / `⌘-` | Enlarge / Reduce Gallery Thumbnails | | `⌘F` | Focus Search & Metadata Filter Box | | `?` or `⌘/` | Open Translucent Shortcut Cheat Sheet HUD | | `⌘,` | Open MPViewer Preferences | ### Fullscreen Inspection | Keystroke | Function | | :--- | :--- | | `Esc` / `Space` / `F` | Exit Fullscreen (preserves selection & scroll) | | `I` | Cycle HUD (Off ➔ Compact ➔ Detailed EXIF + Rendering Line) | | `Hold Click` | Temporary 100% Zoom Inspection | | `0` | Fit Image to Screen | | `1` – `9` | Direct Zoom Presets (100% to 900%) | | `M` | Toggle 320px Focus Loupe | | `Shift+P` (⇧P) | Toggle Metal Focus Peaking Shader | | `A` | Toggle Camera MakerNote EVF AF Reticle | | `Z` / `C` | Smart Face Zoom (cycles detected faces) | | `S` | Toggle Soft Proofing with Gamut Warning | | `C` | Launch Dedicated Crop & Straighten Studio | | `D` | Toggle Annotation & Markup Studio | ### Triage & Speed Culling | Keystroke | Function | | :--- | :--- | | `1` – `5` | Assign 1 to 5 Star Rating | | `0` | Clear Rating to Unrated | | `P` | Toggle Pick Flag (Green Badge) | | `S` or `O` | Mark Photo as Rejected (Red Badge) | | `U` | Clear Flag / Unflag Photo | | `6` – `9` | Assign Color Labels (Red, Yellow, Green, Blue) | | `X` | Add / Remove from Split Comparison Queue | | `B` | Expand / Collapse Burst Stack | | `Shift+B` (⇧B) | Expand / Collapse All Bursts Across Folder | | `W / A / S / D` | Left-Hand Speed Culling (Pick, Prev, Reject, Next) | | `J / K / O / P` | Right-Hand Speed Culling (Prev, Next, Reject, Pick) | ### Ingest, File Actions & Delivery | Keystroke | Function | | :--- | :--- | | `File > Import Photos` | Launch Verified Ingest Console | | `⌘C` / `⌘X` / `⌘V` | Copy / Cut / Paste Files with XMP Sidecars | | `Delete` / `⌦` | Move Photo(s) to macOS Trash | | `⌘Z` | Undo Last Rating / Flag Action | | `⌘E` | Open Selected Photo in External Editor | | `⌘⇧O` | Live Text OCR Text Extraction to Clipboard | | `⌘P` | Launch Tokenized Print Preview Studio | | `Shift+⌘E` (⇧⌘E) | Execute Quick Export Pipeline | | `⌥⌘E` | Repeat Last Export with Identical Settings | --- ## Appendix B: Camera MakerNote Compatibility Matrix | Camera System | Raw Container | MakerNote AF Support | Reticle Precision | | :--- | :---: | :---: | :---: | | **Canon EOS R1 / R3 / R5 / R6** | `.CR3` | Dual-Pixel CMOS AF II | Sub-pixel Eye & Face Lock | | **Canon EOS DSLR (1D X / 5D IV)** | `.CR2` | 61-Point High Density | Physical Viewfinder Grid | | **Nikon Z9 / Z8 / Z6 III / Zf** | `.NEF` | Deep-Learning AF Grid | Subject Box + Eye Reticle | | **Nikon DSLR (D850 / D6 / D500)** | `.NEF` | Multi-CAM 20K (153-pt) | Active Phase Array | | **Sony α1 / α9 III / α7R V / α7 IV**| `.ARW` | 759-Point Phase Detect | Real-time Eye AF Box | | **Fujifilm X-T5 / X-H2 / GFX 100 II**| `.RAF` | X-Trans Phase Array | Zone & Single Point HUD | | **Panasonic Lumix S5 II / G9 II** | `.RW2` | Phase Hybrid AF | Tracking Box Reticle | | **OM System OM-1 II / Olympus** | `.ORF` | Cross Quad Pixel AF | Point Grid Lock | | **Apple iPhone 15/16 Pro** | `.DNG` | LiDAR + Deep Fusion Focus | Subject Focal Distance | --- ## Appendix C: Web 360 Server Headers & Apache / Nginx Configuration When deploying self-contained 360° virtual tours to your web server, ensure the following MIME types and caching headers are enabled: ### Apache (`.htaccess`): ```apache AddType image/webp .webp AddType application/json .json AddType audio/mpeg .mp3 ExpiresActive On ExpiresByType image/webp "access plus 1 year" ExpiresByType application/json "access plus 1 hour" ``` ### Nginx (`nginx.conf`): ```nginx location ~* \.(webp|jpg|jpeg|png)$ { expires 365d; add_header Cache-Control "public, no-transform"; } location ~* \.json$ { expires 1h; add_header Access-Control-Allow-Origin *; } ``` --- ## Appendix D: Troubleshooting, Memory Allocation & Diagnostics ### D.1 Verifying Ingest Checksums If you ever need to verify an archive against its original card months later: 1. Open the `.log` file generated in the target folder (`MPViewer Import .log`). 2. Run standard macOS terminal verification: ```bash shasum -a 256 _R5_0001.CR3 ``` 3. The generated string will match the logged hash down to the final hexadecimal character. ### D.2 GPU Metal Peaking Performance If Focus Peaking drops frames on legacy Intel machines: 1. Go to **Settings > Appearance**. 2. Set Peaking Analysis Resolution to *Quarter Screen Buffer*. 3. On Apple Silicon (M1/M2/M3/M4), leave buffer set to *Native Full* for real-time sub-millisecond compute shader execution. --- ## Appendix E: Changelog of This Edition (September 11, 2026) This comprehensive update to **The MPViewer 1.5 Bible** integrates all newly introduced engine enhancements, architectural extensions, and forensic workflow tools: - **Integrated Tour Studio**: Complete documentation for per-room hands-free voice narration, global ambient soundtracks, multi-floor wayfinding, paper blueprint cleanup, hotspot editing, client contact banners, and one-click multi-destination publishing (Folder, ZIP, SFTP, S3). - **External Storage Profiling**: Added Part VIII detailing hardware read/write micro-profiling, status bar speed badges, latency policy tiers, and the 1-second directory scanner for 2,500+ RAW folders on slow USB and SMB network shares. - **Optical Inspection & Forensics**: Documented highlight/shadow clipping warning overlays, the Triple RGB Levels Parade, brightness mode, and the Cinema Filmstrip (`F`) with dynamic scaling sliders. - **Productivity & UI Navigation**: Detailed the Interactive Breadcrumb Path Bar, sidebar folder shortcuts, startup memory states, Saved Filter presets, cross-catalog Smart Collections, the Shortcut Editor, and the instant contextual shortcut HUD (`?` / `⌘/`). - **Media & Export Mastering**: Documented Live Text OCR (`⌘⇧O`), Animated GIF burst creation, instant EXIF clipboard export, next-generation codecs (AVIF, OpenEXR, WebP, JPEG XL), pre-flight export disk space safety checks, and atomic file/sidecar cohesion. - **Opt-In Machine Intelligence**: Detailed the architectural rationale behind keeping Apple Vision face, blink, and smile detection strictly opt-in, preserving battery life and zero background CPU overhead. - **Tone & Philosophical Foundations**: Expanded master commentary with contributions from Bill Burr, Ricky Gervais, Dave Chappelle, and George Carlin, dismantling modern tech pretension and corporate software bloat. --- *THE MPVIEWER 1.5 BIBLE — Built for photographers who value uncompromising speed, cryptographic data safety, zero subscription lock-in, and pure optical excellence.*