diff --git a/Sources/Firelink/AddDownloadsView.swift b/Sources/Firelink/AddDownloadsView.swift index d78e700..a916ab8 100644 --- a/Sources/Firelink/AddDownloadsView.swift +++ b/Sources/Firelink/AddDownloadsView.swift @@ -322,10 +322,18 @@ struct AddDownloadsView: View { ProgressView().controlSize(.small) Text("Fetching media options...") .foregroundStyle(.secondary) - } else if case .failed(_) = firstMedia.state { - Image(systemName: "exclamationmark.triangle.fill").foregroundStyle(.red) - Text("Failed to load options.") - .foregroundStyle(.secondary) + } else if case .failed(let errorMsg) = firstMedia.state { + VStack(alignment: .leading, spacing: 4) { + HStack(spacing: 8) { + Image(systemName: "exclamationmark.triangle.fill").foregroundStyle(.red) + Text("Failed to load options.") + .foregroundStyle(.secondary) + } + Text(errorMsg) + .font(.caption) + .foregroundStyle(.red) + .lineLimit(3) + } } else { ProgressView().controlSize(.small) Text("Waiting for metadata...") diff --git a/Sources/Firelink/MediaExtractionEngine.swift b/Sources/Firelink/MediaExtractionEngine.swift index a4f35ac..d61fb53 100644 --- a/Sources/Firelink/MediaExtractionEngine.swift +++ b/Sources/Firelink/MediaExtractionEngine.swift @@ -59,7 +59,7 @@ enum MediaExtractionEngine { } nonisolated(unsafe) private static let metadataCache = NSCache() - private static let metadataTimeoutSeconds: UInt64 = 30 + private static let metadataTimeoutSeconds: UInt64 = 120 enum ExtractionError: Error, LocalizedError { case processFailed(String)