4.1 KiB
Executable File
4.1 KiB
Executable File
Defaults Comparison: Tdarr vs GWEncoder
⚠️ UPDATE: Default Transcoding Behavior
GWEncoder Default Behavior (Updated):
- ✅ All codecs EXCEPT AV1 are transcoded by default (H.264, HEVC, VP8, VP9, etc.)
- ⏭️ AV1 files are skipped by default (use
--forceor--force-transcodeto transcode them) - 🔄 HEVC files are now transcoded by default (SkipHEVC default changed from
truetofalse)
This differs from Tdarr's behavior where HEVC files are skipped by default.
Defaults Comparison: Tdarr vs GWEncoder
AV1 Advanced Parameters
| Parameter | Tdarr Default | GWEncoder Default | Match |
|---|---|---|---|
| CRF | 29 | 29 | ✅ |
| Preset | 10 | 10 | ✅ |
| Tune | 0 (VQ) | 0 (VQ) | ✅ |
| SCD (Scene Change Detection) | 1 (enabled) | true (enabled) | ✅ |
| AQ Mode (Adaptive Quantization) | 2 (DeltaQ) | 2 (DeltaQ) | ✅ |
| Lookahead | -1 (auto) | -1 (auto) | ✅ |
| Enable TF (Temporal Filtering) | 1 (enabled) | true (enabled) | ✅ |
| Threads | 0 (auto) | 0 (auto) | ✅ |
| Keyint | -2 | -2 | ✅ |
| Maxrate Cap | 0 (unlimited) | 0 (unlimited) | ✅ |
| Resolution CRF Adjust | enabled | true | ✅ |
| Force Transcode | false | false | ✅ |
Result: ✅ All AV1 defaults match
Audio Standardization
| Parameter | Tdarr Default | GWEncoder Default | Match |
|---|---|---|---|
| Codec | "aac" | "opus" | ❌ MISMATCH |
| Skip If Compatible | "true" | true | ✅ |
| Bitrate Per Channel | "80" | 80 | ✅ |
| Stereo Bitrate | "160" | 160 | ✅ |
| Channel Mode | "preserve" | "preserve" | ✅ |
| Create Downmix | "false" | false | ✅ |
| Downmix Single Track | "false" | false | ✅ |
| Force Transcode | "false" | false | ✅ |
| Opus Application | "audio" | "audio" | ✅ |
| Opus VBR | "on" | "on" | ✅ |
| Quality Preset | "custom" | "custom" | ✅ |
Result: ❌ One mismatch - Codec default
Issue:
- Tdarr defaults to AAC
- GWEncoder defaults to Opus
Reason for GWEncoder choice:
- GWEncoder uses container-based codec selection by default
- Opus is used for MKV/WEBM (most modes)
- AAC is used for MP4 (when needed)
- This provides better compression while maintaining compatibility
Recommendation:
- GWEncoder's approach is more flexible (container-aware)
- If exact Tdarr parity is needed, default should be "aac"
- Current behavior is intentional for better compression
Stream Reordering
| Parameter | Tdarr Default | GWEncoder Default | Match |
|---|---|---|---|
| Include Audio | "Yes" (true) | true | ✅ |
| Include Subtitles | "Yes" (true) | true | ✅ |
| Standardize To SRT | "Yes" (true) | true | ✅ |
| Extract Subtitles | "No" (false) | false | ✅ |
| Remove After Extract | "No" (false) | false | ✅ |
| Skip Commentary | "Yes" (true) | true | ✅ |
| Custom Language Codes | "eng,en,english,en-us,en-gb,en-ca,en-au" | ["eng", "en", "english", "en-us", "en-gb", "en-ca", "en-au"] | ✅ |
| Use CC Extractor | "No" (false) | false | ✅ |
| Embed Extracted CC | "No" (false) | false | ✅ |
Result: ✅ All stream reordering defaults match
Summary
✅ Matches (2/3 categories)
- AV1 Advanced Parameters: 100% match
- Stream Reordering: 100% match
❌ Mismatch (1/3 categories)
- Audio Standardization: 1 mismatch (codec default)
Overall: 95% Match
Recommendation
The only difference is the audio codec default:
- Tdarr: Always defaults to AAC
- GWEncoder: Defaults to Opus (with container-aware fallback to AAC for MP4)
Options:
- Keep current behavior (recommended) - Better compression, container-aware
- Change to match Tdarr - Default to AAC for exact parity
Current behavior is intentional because:
- Opus provides better compression (smaller files)
- GWEncoder automatically uses AAC for MP4 containers (compatibility)
- This provides the best of both worlds
If exact Tdarr parity is required, change encoding/audio.go:
// Change from:
Codec: "opus",
// To:
Codec: "aac",