Enum H264AMFQuality
- Namespace
- VisioForge.Core.Types.FFMPEGEXE
- Assembly
- VisioForge.Core.dll
Represents the quality preference settings for the AMD H.264 AMF hardware encoder.
public enum H264AMFQualityFields
Speed = 1-
Prefer Speed - Fastest encoding with reduced quality analysis.
Speed mode optimizations:
- Minimal motion estimation search range
- Simplified mode decision algorithms
- Reduced reference frame analysis
- Fast intra prediction modes only
- Simplified rate control decisions
VCE hardware behavior:
- Maximum throughput pipeline configuration
- Reduced shader core utilization
- Lower memory bandwidth usage
- Minimal power consumption
- Can encode 4K@60fps on modern VCE
Performance characteristics:
- 2-3x faster than Quality mode
- 10-20% larger file sizes
- Suitable for real-time constraints
- Lower GPU temperature and power draw
Best for:
- Live streaming with strict latency requirements
- Multi-stream encoding scenarios
- Screen recording and game capture
- Video conferencing applications
- Battery-powered devices
FFMPEG: -quality speed or -quality 1
Note: Quality loss is most noticeable in complex motion scenes and detailed textures. Consider Balanced mode if quality matters.
Balanced = 0-
Balanced - Default mode balancing speed and quality.
Balanced mode optimizations:
- Moderate motion estimation search range
- Standard mode decision complexity
- Typical reference frame analysis
- Mixed intra prediction modes
- Adaptive rate control
VCE hardware utilization:
- Balanced pipeline configuration
- Moderate shader core usage
- Standard memory bandwidth
- Average power consumption
- Good thermal characteristics
Performance profile:
- 1.5-2x faster than Quality mode
- 5-10% larger files than Quality mode
- Good real-time performance
- Suitable for most use cases
Recommended for:
- General video transcoding
- VOD content preparation
- Casual streaming
- Desktop recording
- Default encoding tasks
FFMPEG: -quality balanced or -quality 0 (default)
This is the default setting that works well for most scenarios. It provides good quality without sacrificing too much performance. AMD recommends this mode for typical encoding workflows.
Quality = 2-
Prefer Quality - Maximum quality with extensive analysis.
Quality mode optimizations:
- Maximum motion estimation search range
- Exhaustive mode decision algorithms
- Full reference frame analysis
- All intra prediction modes
- Sophisticated rate-distortion optimization
VCE hardware utilization:
- Maximum quality pipeline configuration
- Full shader core utilization
- High memory bandwidth usage
- Maximum power consumption
- Higher heat generation
Quality improvements:
- Better motion prediction accuracy
- Improved detail preservation
- Superior rate control decisions
- Reduced blocking artifacts
- Better subjective quality
Performance impact:
- 2-3x slower than Speed mode
- 5-15% smaller file sizes
- May limit real-time encoding resolution
- Higher GPU utilization (90-100%)
- Increased power consumption
Ideal for:
- Archival and master copies
- Professional video production
- Blu-ray authoring
- High-quality VOD content
- Content where quality is paramount
FFMPEG: -quality quality or -quality 2
Note: The quality gain over Balanced mode may be subtle at high bitrates. Most beneficial for low-to-medium bitrate encoding where every bit counts.
Remarks
The quality preset controls the trade-off between encoding speed and output quality by adjusting various internal encoder parameters. AMD's Video Coding Engine (VCE) implements these presets through different hardware utilization strategies.
These settings affect:
- Motion estimation search range and precision
- Reference frame analysis depth
- Rate-distortion optimization levels
- Hardware pipeline utilization
- Power consumption and thermal characteristics
The quality setting works in conjunction with bitrate/QP settings to determine the final output quality. Higher quality modes may not always produce visibly better results, especially at high bitrates.
FFMPEG usage: -c:v h264_amf -quality [speed|balanced|quality]