Advanced Options
Frame provides advanced features for power users including stream copy/remux mode, video cropping, trimming, GIF optimization, and hardware encoder-specific options. This guide covers all advanced configuration options.Stream Copy / Remux Mode
Processing Mode:processingMode: "copy"
Stream copy mode copies the video and audio streams directly without re-encoding, changing only the container format.
How Stream Copy Works
Instead of decoding and re-encoding video/audio:- Reads the encoded streams from the source
- Copies them directly to the new container
- Extremely fast (limited only by disk I/O)
- Zero quality loss (bit-for-bit identical)
Benefits
- Lightning fast - 10-100x faster than re-encoding
- Zero quality loss - Perfect copy of original
- Low CPU usage - No encoding overhead
- Batch processing - Convert many files quickly
Limitations
Cannot be used with:- Changing video codec or audio codec
- Changing resolution or frame rate
- Applying filters (crop, rotate, flip, scale)
- Burn-in subtitles
- Audio normalization or volume adjustment
- Hardware decode acceleration
- GIF output (GIF is a video-only container)
- Changing container format (remuxing)
- Trimming video (start/end time)
- Selecting specific audio/subtitle tracks
- Metadata changes (preserve/clean/replace)
Codec Compatibility
The source video/audio codecs must be compatible with the target container. Example - Valid Stream Copy:- Source:
video.mkv(H.264 video, AAC audio) - Target:
video.mp4(MP4 container) - ✓ H.264 is compatible with MP4
- ✓ AAC is compatible with MP4
- Result: Fast remux succeeds
- Source:
video.mkv(VP9 video, Opus audio) - Target:
video.mp4(MP4 container) - ✗ VP9 is not compatible with MP4
- ✗ Opus is not compatible with MP4
- Result: Frame shows error, use re-encode mode
Stream Copy Configuration
Use Cases
Container Remuxing
Container Remuxing
Changing Container Format
Convert MKV to MP4 without re-encoding:- Need MP4 for device compatibility
- MKV to MP4 for streaming
- Changing format without quality loss
Extract Audio Track
Extract Audio Track
Audio Extraction
Extract audio from video without re-encoding:- Extracting music from music videos
- Getting audio for editing
- Creating audio-only files
Cut/Trim Without Re-encoding
Cut/Trim Without Re-encoding
Fast Trimming
Cut video segment without quality loss:- Quick rough cuts
- Removing intro/outro
- Extracting segments
FFmpeg Implementation
Video Cropping
Crop video to a specific region, removing unwanted areas.Crop Configuration
How Cropping Works
- Define a rectangle within the source video
- Only that rectangle is kept in the output
- Applied before scaling/resolution changes
- Can maintain aspect ratio constraints
Example Configuration
Crop to center 1920x1080 from 4K source:FFmpeg Implementation
crop=width:height:x:y
Use Cases
Remove Black Bars
Remove Black Bars
Removing Letterboxing
Remove black bars from 16:9 content in 4:3 frame:Source: 1440x1080 (4:3 frame with 16:9 content)Crop to 16:9:Social Media Aspect Ratios
Social Media Aspect Ratios
Remove Watermarks/Logos
Remove Watermarks/Logos
Cropping Out Overlays
Remove logo from bottom-right corner:Source: 1920x1080 with logo at bottom-rightCrop to remove:Cropping is applied before scaling. The cropped dimensions become the input for any resolution changes.
Trim / Cut Video
Extract a specific time range from video.Time Range Configuration
Time Format
Frame supports multiple time formats:- HH:MM:SS -
"00:01:30"(1 minute 30 seconds) - MM:SS -
"01:30"(1 minute 30 seconds) - Seconds -
"90"(90 seconds) - Fractional -
"90.5"(90.5 seconds)
How Trimming Works
With startTime only:- Start encoding from specified time
- Continue to end of video
- Start from beginning
- End at specified time
- Extract segment between start and end
- Duration = endTime - startTime
FFmpeg Implementation
Start time (before input):Frame’s Implementation
From source code (args.rs:148-178):Use Cases
Remove Intro/Outro
Remove Intro/Outro
Extract Highlights
Extract Highlights
Extracting Specific Segments
Extract 30-second clip starting at 2:15:Trimming works in both re-encode and stream copy modes. In stream copy mode, cuts may not be frame-accurate due to keyframe positions.
GIF-Specific Options
When outputting to GIF container, Frame exposes advanced GIF optimization options.GIF Configuration
GIF Color Palette
Setting:gifColors
Range: 2-256 colors
Default: 256
How It Works
GIF uses an indexed color palette. Fewer colors = smaller file size but lower quality. Color Count Guidelines:- 256 colors - Maximum quality (default)
- 128 colors - Good quality, smaller files (Frame’s “GIF Web Small” preset)
- 64 colors - Acceptable for simple graphics
- 32 colors - Low quality, very small files
- 16 colors - Very limited, dithering artifacts
- 2-8 colors - Only for very simple graphics
Configuration
File Size Impact
Reducing colors can reduce file size by 20-50% depending on content complexity.GIF Dithering
Setting:gifDither
Options: "none", "bayer", "floyd_steinberg", "sierra2_4a"
Default: "sierra2_4a"
Dithering Algorithms
- None
- Bayer
- Floyd-Steinberg
- Sierra2_4a
GIF Loop Count
Setting:gifLoop
Range: 0-65535
Default: 0 (infinite loop)
Loop Options
- 0 - Loop forever (default, recommended)
- 1 - Play once, no loop
- 2+ - Loop specific number of times
Configuration
Infinite loop:Most platforms and viewers expect GIFs to loop infinitely. Use
gifLoop: 0 for standard behavior.GIF Optimization Examples
High Quality GIF
High Quality GIF
Maximum Quality
Frame’s “GIF High Quality” preset:- Photographic content
- High-quality requirements
- Portfolio work
Small Web GIF
Small Web GIF
Optimized for File Size
Frame’s “GIF Web Small” preset:- Web embedding
- Fast loading
- Social media
- Reduced bandwidth
Pixel Art GIF
Pixel Art GIF
FFmpeg GIF Filter Implementation
From source code (args.rs:326-343):Hardware Encoder Advanced Options
Frame exposes hardware-specific options for fine-tuning encoding.NVENC Adaptive Quantization
See Hardware Acceleration - NVENC Advanced Options for details: Spatial AQ:VideoToolbox Software Fallback
See Hardware Acceleration - VideoToolbox Advanced Options for details: Allow software fallback:See Also
- Hardware Acceleration - GPU encoding options
- Quality Settings - Quality control modes
- Metadata Management - Metadata in stream copy mode
Crop to Platform Requirements
TikTok/Reels (9:16 portrait) from 16:9 landscape:Source: 1920x1080 (16:9)Crop to 9:16 centered: