Per-channel "skip auth check" toggle for the youtubetab warning
yt-dlp prints a scary-looking ERROR when it can't confirm a channel tab loaded authenticated: ERROR: [youtube:tab] @Channel: Playlists that require authentication may not extract correctly without a successful webpage download… pass "--extractor-args youtubetab:skip=authcheck" to skip this check For PUBLIC channels that's just noise — there's no auth-gated content to miss, and the flag silences it without changing which videos are found. But for members-only/private channels archived with cookies, the warning is a real "your cookies may not be working, you might be getting an incomplete list" signal worth keeping. So make it a per-channel toggle rather than a blanket setting: - DownloadOptions gains `skip_auth_check: bool`; apply() emits `--extractor-args youtubetab:skip=authcheck` when set. (Its own flag; the youtubetab: namespace is distinct from the POT provider's youtubepot-bgutilhttp: one, so they coexist.) - Desktop + web channel-options dialogs gain a checkbox with a tooltip spelling out the public-vs-private trade-off. 1 new test; 81 pass. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
parent
5cb011a13d
commit
6cefc0c0e5
3 changed files with 39 additions and 0 deletions
|
|
@ -219,6 +219,7 @@ struct ChannelOptionsForm {
|
|||
quality_idx: usize, // 0=default, 1=Best, 2=1080p, 3=720p, 4=480p, 5=360p
|
||||
audio_only: bool,
|
||||
fetch_comments: bool,
|
||||
skip_auth_check: bool,
|
||||
limit_rate_kb: String,
|
||||
min_filesize_mb: String,
|
||||
max_filesize_mb: String,
|
||||
|
|
@ -440,6 +441,7 @@ impl App {
|
|||
quality_idx,
|
||||
audio_only: opts.audio_only,
|
||||
fetch_comments: opts.fetch_comments,
|
||||
skip_auth_check: opts.skip_auth_check,
|
||||
limit_rate_kb: num(opts.limit_rate_kb),
|
||||
min_filesize_mb: num(opts.min_filesize_mb),
|
||||
max_filesize_mb: num(opts.max_filesize_mb),
|
||||
|
|
@ -470,6 +472,7 @@ impl App {
|
|||
quality,
|
||||
audio_only: f.audio_only,
|
||||
fetch_comments: f.fetch_comments,
|
||||
skip_auth_check: f.skip_auth_check,
|
||||
limit_rate_kb: parse_num(&f.limit_rate_kb),
|
||||
min_filesize_mb: parse_num(&f.min_filesize_mb),
|
||||
max_filesize_mb: parse_num(&f.max_filesize_mb),
|
||||
|
|
@ -1904,6 +1907,11 @@ impl App {
|
|||
.on_hover_text("Slow on popular videos. Once captured, comments are browsable from the player modal in the web UI.");
|
||||
ui.end_row();
|
||||
|
||||
ui.label("Skip auth check");
|
||||
ui.checkbox(&mut form.skip_auth_check, "Suppress the channel-tab authentication warning")
|
||||
.on_hover_text("Passes --extractor-args youtubetab:skip=authcheck. Safe for PUBLIC channels — it silences yt-dlp's \"playlists that require authentication may not extract correctly\" warning without changing which videos are found. Leave OFF for members-only/private channels, where that warning signals your cookies may not be working.");
|
||||
ui.end_row();
|
||||
|
||||
ui.label("Bandwidth cap (KB/s)");
|
||||
ui.add(egui::TextEdit::singleline(&mut form.limit_rate_kb).desired_width(100.0).hint_text("off"));
|
||||
ui.end_row();
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue