fix: show TranscodeWaiting state instead of premature TranscodeActive#28
Open
negativeeddy wants to merge 1 commit into
Open
fix: show TranscodeWaiting state instead of premature TranscodeActive#28negativeeddy wants to merge 1 commit into
negativeeddy wants to merge 1 commit into
Conversation
Previously, all jobs were marked TranscodeActive before acquiring the transcode slot, causing all queued jobs to appear as actively transcoding. Only one job actually runs at a time (MaxConcurrentTranscodes=1) but the UI showed 6+ jobs as active simultaneously. Changes: - Set TranscodeWaiting status before the HandBrake/FFmpeg service call - Services update to TranscodeActive only after acquiring the slot - Add striped blue CSS class (.bg-primary-striped) for the waiting state - Pipeline view shows hash-marked blue on Transcode stage when waiting - Active job views and job detail show 'Waiting for GPU' striped badge - Progress bar shows indeterminate striped animation while waiting - Spinner visible during TranscodeWaiting state
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
When multiple discs are queued for transcoding with
MaxConcurrentTranscodes=1, all jobs were markedTranscodeActivebefore acquiring the transcode slot. This caused the UI to show 6+ jobs as actively transcoding simultaneously, when in reality only 1 was actually encoding on the GTX.The
TranscodeSlotLimiterwas working correctly — only 1 HandBrake/FFmpeg process ran at a time — but the status was misleading becauseTranscodeActivewas set prematurely.Fix
Backend (status timing)
ArmRipperService.StartTranscodeAsync: SetsTranscodeWaiting+ "Waiting for transcode slot..." before calling the HandBrake/FFmpeg serviceHandBrakeService.RunHandBrakeCommandAsync: Updates toTranscodeActive+ "Transcoding..." only after acquiring the slotFfmpegService.RunTranscodeAsync: Same pattern for the ffmpeg pathUI (striped blue indicator)
.bg-primary-striped: Blue with diagonal hash marks (viarepeating-linear-gradient) — visually distinct from solid bluebg-primaryTranscodeWaiting; progress bar shows indeterminate striped animationwaiting_transcodeVisual
bg-primaryTranscodeActivebg-primary-stripedWaiting for GPU