fix: trigger processing for already-queued manual stream files

When users click "Create Stream" on files already in queue from
previous sessions, ensure processing actually starts even if the
file was previously stalled due to ML blocking.

Add forceProcess parameter to queueFiles() to bypass the existing
queue check and trigger processing of stalled manual queue items.
This commit is contained in:
Prateek Sunal
2025-08-29 12:28:48 +00:00
parent fd963a1c8e
commit 202e6a9f7c

View File

@@ -125,6 +125,10 @@ class VideoPreviewService {
file.uploadedFileID!,
);
if (alreadyInQueue) {
// File is already queued, but trigger processing in case it was stalled
if (uploadingFileId < 0) {
queueFiles(duration: Duration.zero, isManual: true, forceProcess: true);
}
return false; // Indicates file was already in queue
}
@@ -1147,9 +1151,10 @@ class VideoPreviewService {
void queueFiles({
Duration duration = const Duration(seconds: 5),
bool isManual = false,
bool forceProcess = false,
}) {
Future.delayed(duration, () async {
if (_hasQueuedFile) return;
if (_hasQueuedFile && !forceProcess) return;
final isStreamAllowed = isManual ? _allowManualStream() : _allowStream();
if (!isStreamAllowed) return;