summaryrefslogtreecommitdiff
path: root/ar
diff options
context:
space:
mode:
Diffstat (limited to 'ar')
-rwxr-xr-xar/.local/bin/qndl8
1 files changed, 8 insertions, 0 deletions
diff --git a/ar/.local/bin/qndl b/ar/.local/bin/qndl
index 245a378..fb346c1 100755
--- a/ar/.local/bin/qndl
+++ b/ar/.local/bin/qndl
@@ -322,11 +322,17 @@ download_video() {
if [ "$_part_count" -le 1 ]; then
# Single video — pass section straight through.
+ # --abort-on-error overrides enqueue's --ignore-errors so a stuck/failing
+ # download surfaces as a real failure instead of a silent exit 0.
+ # -rw_timeout 30s caps ffmpeg's HLS demuxer from spinning forever on
+ # bad CDN segments (Soop's CDN drops connections regularly).
_section_safe="$(printf '%s' "$_sections" | tr ':' '-')"
_fmt="${_output_dir}/%(title)s [%(id)s] [${_section_safe}].%(ext)s"
notify "📥 Queuing video download:" "$_filename"
enqueue "video" "$_url" "$_filename" \
--no-playlist \
+ --abort-on-error \
+ --external-downloader-args 'ffmpeg_i:-rw_timeout 30000000' \
--buffer-size 1M \
--embed-thumbnail \
--no-sponsorblock \
@@ -365,6 +371,8 @@ download_video() {
enqueue "video" "$_url" "$_filename (part $_idx)" \
--playlist-items "$_idx" \
+ --abort-on-error \
+ --external-downloader-args 'ffmpeg_i:-rw_timeout 30000000' \
--buffer-size 1M \
--embed-thumbnail \
--no-sponsorblock \