github derekshreds/Snacks v2.0.2
Snacks v2.0.2

7 hours ago

Snacks v2.0.2

Automated Video Library Encoder

Patch release fixing AV1 hardware decode failures, 4K bitrate calibration, and SignalR UI bugs.


What's New

Encoding Engine

  • AV1 and unsupported codec support -- files encoded with codecs that VAAPI can't hardware decode (e.g., AV1 on Elkhart Lake/J6412) now automatically fall back to software decoding while still using VAAPI for hardware encoding, instead of failing with "encoder incompatible with this file"
  • Fixed 4K calibration undershooting bitrates -- CQP calibration was accepting a QP immediately when measured bitrate was below target, even when far too low (e.g., 1675kbps vs 14000k target). Calibration now continues lowering QP until it reaches the target or hits the minimum (QP 18)
  • Calibration starting QP reverted to 24 -- the 4K-specific starting QP of 30 was too conservative, causing unnecessarily low quality on the first pass
  • VAAPI LP mode fallback -- if low-power encoder mode fails, calibration retries in normal mode before giving up
  • 4K skip threshold updated -- 4K files already at the target codec are now skipped at 4x target bitrate (matching the encode multiplier), up from 3x
  • Accurate codec labeling -- queue log now shows the actual source codec name (e.g., av1, mpeg2video) instead of labeling everything non-HEVC as "H.264"
  • Enhanced FFmpeg error logging -- calibration failures now log the full FFmpeg command, error lines, and last 15 lines of output (up from 5) for easier debugging

Web Interface

  • Fixed duplicate log messages -- SignalR reconnection logic was creating multiple hub connections, causing every log message and event to appear twice
  • Fixed queue empty state flickering -- "No files in queue" message no longer disappears every few seconds during active transcoding

Deployment

NAS (Docker)

docker pull derekshreds/snacks-docker:latest

On Linux hosts with GPU acceleration, use the GPU overlay:

docker-compose -f docker-compose.yml -f docker-compose.gpu.yml up -d

Windows Desktop

Download the installer from the Releases page, or build from source:

build-installer.bat

Files Changed

  • TranscodingService.cs -- AV1 software decode fallback, calibration fixes, LP mode fallback, codec labeling, error logging
  • transcoding.js -- SignalR duplicate connection fix, empty state flickering fix
  • README.md -- updated 4K skip threshold, added software decode fallback note, version bump

Full documentation: README.md

Don't miss a new Snacks release

NewReleases is sending notifications on new releases.