[{"data":1,"prerenderedAt":1800},["ShallowReactive",2],{"docs-navigation":3,"\u002Fdocs\u002Ftroubleshooting\u002Fdirect-video-download":794,"\u002Fdocs\u002Ftroubleshooting\u002Fdirect-video-download-surround":1795},[4,187,340,493,645],{"title":5,"path":6,"stem":7,"children":8,"page":32},"Docs","\u002Fdocs","1.docs",[9,33,79,100,139,171],{"title":10,"path":11,"stem":12,"children":13,"icon":32},"Getting Started","\u002Fdocs\u002Fgetting-started","1.docs\u002F1.getting-started\u002F1.index",[14,17,22,27],{"title":15,"path":11,"stem":12,"icon":16},"Introduction","i-lucide-house",{"title":18,"path":19,"stem":20,"icon":21},"Installation","\u002Fdocs\u002Fgetting-started\u002Finstallation","1.docs\u002F1.getting-started\u002F2.installation","i-lucide-download",{"title":23,"path":24,"stem":25,"icon":26},"Usage Guide","\u002Fdocs\u002Fgetting-started\u002Fusage","1.docs\u002F1.getting-started\u002F3.usage","i-lucide-sliders",{"title":28,"path":29,"stem":30,"icon":31},"Configuration Reference","\u002Fdocs\u002Fgetting-started\u002Fconfiguration","1.docs\u002F1.getting-started\u002F4.configuration","i-lucide-settings",false,{"title":34,"icon":35,"path":36,"stem":37,"children":38,"page":32},"Features","i-lucide-star","\u002Fdocs\u002Ffeatures","1.docs\u002F2.features",[39,44,49,54,59,64,69,74],{"title":40,"path":41,"stem":42,"icon":43},"Video Sniffing","\u002Fdocs\u002Ffeatures\u002Fvideo-sniffing","1.docs\u002F2.features\u002F1.video-sniffing","i-lucide-video",{"title":45,"path":46,"stem":47,"icon":48},"Audio Capture","\u002Fdocs\u002Ffeatures\u002Faudio-capture","1.docs\u002F2.features\u002F2.audio-capture","i-lucide-music",{"title":50,"path":51,"stem":52,"icon":53},"Image Download","\u002Fdocs\u002Ffeatures\u002Fimage-download","1.docs\u002F2.features\u002F3.image-download","i-lucide-image",{"title":55,"path":56,"stem":57,"icon":58},"Privacy & Security","\u002Fdocs\u002Ffeatures\u002Fprivacy-security","1.docs\u002F2.features\u002F4.privacy-security","i-lucide-shield-check",{"title":60,"path":61,"stem":62,"icon":63},"Format Conversion","\u002Fdocs\u002Ffeatures\u002Fformat-conversion","1.docs\u002F2.features\u002F5.format-conversion","i-lucide-arrow-left-right",{"title":65,"path":66,"stem":67,"icon":68},"Batch Download","\u002Fdocs\u002Ffeatures\u002Fbatch-download","1.docs\u002F2.features\u002F6.batch-download","i-lucide-layers",{"title":70,"path":71,"stem":72,"icon":73},"Keyboard Shortcuts","\u002Fdocs\u002Ffeatures\u002Fkeyboard-shortcuts","1.docs\u002F2.features\u002F7.keyboard-shortcuts","i-lucide-keyboard",{"title":75,"path":76,"stem":77,"icon":78},"Search & Filter","\u002Fdocs\u002Ffeatures\u002Fsearch-filter","1.docs\u002F2.features\u002F8.search-filter","i-lucide-search",{"title":80,"icon":81,"path":82,"stem":83,"children":84,"page":32},"Advanced","i-lucide-book-open","\u002Fdocs\u002Fadvanced","1.docs\u002F3.advanced",[85,90,95],{"title":86,"path":87,"stem":88,"icon":89},"Online Tools","\u002Fdocs\u002Fadvanced\u002Fonline-tools","1.docs\u002F3.advanced\u002F1.online-tools","i-lucide-globe",{"title":91,"path":92,"stem":93,"icon":94},"Browser Compatibility","\u002Fdocs\u002Fadvanced\u002Fbrowser-compatibility","1.docs\u002F3.advanced\u002F2.browser-compatibility","i-lucide-monitor-check",{"title":96,"path":97,"stem":98,"icon":99},"Download Engine Architecture","\u002Fdocs\u002Fadvanced\u002Fdownload-engine","1.docs\u002F3.advanced\u002F3.download-engine","i-lucide-cpu",{"title":101,"icon":102,"path":103,"stem":104,"children":105,"page":32},"Use Cases","i-lucide-lightbulb","\u002Fdocs\u002Fusecases","1.docs\u002F4.usecases",[106,111,115,120,125,129,134],{"title":107,"path":108,"stem":109,"icon":110},"Online Course Video Downloader for Offline Learning","\u002Fdocs\u002Fusecases\u002Fonline-courses","1.docs\u002F4.usecases\u002F1.online-courses","i-lucide-graduation-cap",{"title":112,"path":113,"stem":114,"icon":43},"Video Platform Stream Downloader for Public Media","\u002Fdocs\u002Fusecases\u002Fvideo-platforms","1.docs\u002F4.usecases\u002F2.video-platforms",{"title":116,"path":117,"stem":118,"icon":119},"Live Replay Downloader for Large Streaming Videos","\u002Fdocs\u002Fusecases\u002Flive-replays","1.docs\u002F4.usecases\u002F3.live-replays","i-lucide-radio",{"title":121,"path":122,"stem":123,"icon":124},"Podcast and Audio Downloader for Offline Listening","\u002Fdocs\u002Fusecases\u002Fpodcasts-audio","1.docs\u002F4.usecases\u002F4.podcasts-audio","i-lucide-headphones",{"title":126,"path":127,"stem":128,"icon":53},"Bulk Image Downloader for Web Galleries and Wallpapers","\u002Fdocs\u002Fusecases\u002Fimage-galleries","1.docs\u002F4.usecases\u002F5.image-galleries",{"title":130,"path":131,"stem":132,"icon":133},"Internal Training Video Downloader for Intranet Content","\u002Fdocs\u002Fusecases\u002Fcorporate-training","1.docs\u002F4.usecases\u002F6.corporate-training","i-lucide-building-2",{"title":135,"path":136,"stem":137,"icon":138},"Personal Media Downloader for Video, Audio and Images","\u002Fdocs\u002Fusecases\u002Fpersonal-archiving","1.docs\u002F4.usecases\u002F7.personal-archiving","i-lucide-archive",{"title":140,"icon":141,"path":142,"stem":143,"children":144,"page":32},"Troubleshooting","i-lucide-wrench","\u002Fdocs\u002Ftroubleshooting","1.docs\u002F5.troubleshooting",[145,149,154,159,163,167],{"title":146,"path":147,"stem":148,"icon":141},"Common Issues Troubleshooting","\u002Fdocs\u002Ftroubleshooting\u002Fcommon-issues","1.docs\u002F5.troubleshooting\u002F1.common-issues",{"title":150,"path":151,"stem":152,"icon":153},"Known Limitations & Caveats","\u002Fdocs\u002Ftroubleshooting\u002Fknown-issues","1.docs\u002F5.troubleshooting\u002F2.known-issues","i-lucide-alert-triangle",{"title":155,"path":156,"stem":157,"icon":158},"FAQ","\u002Fdocs\u002Ftroubleshooting\u002Ffaq","1.docs\u002F5.troubleshooting\u002F3.faq","i-lucide-message-circle-question",{"title":160,"path":161,"stem":162,"icon":141},"M3U8 Download Failed: HLS Troubleshooting","\u002Fdocs\u002Ftroubleshooting\u002Fm3u8-download-failed","1.docs\u002F5.troubleshooting\u002F4.m3u8-download-failed",{"title":164,"path":165,"stem":166,"icon":141},"DASH Video Has No Audio: MPD Troubleshooting","\u002Fdocs\u002Ftroubleshooting\u002Fdash-no-audio","1.docs\u002F5.troubleshooting\u002F5.dash-no-audio",{"title":168,"path":169,"stem":170,"icon":141},"Direct Video Download Failed: MP4 and WebM Troubleshooting","\u002Fdocs\u002Ftroubleshooting\u002Fdirect-video-download","1.docs\u002F5.troubleshooting\u002F6.direct-video-download",{"title":172,"icon":173,"path":174,"stem":175,"children":176,"page":32},"Developer Docs","i-lucide-code","\u002Fdocs\u002Fdeveloper","1.docs\u002F6.developer",[177,182],{"title":178,"path":179,"stem":180,"icon":181},"Contributing Guide","\u002Fdocs\u002Fdeveloper\u002Fcontributing","1.docs\u002F6.developer\u002F1.contributing","i-lucide-git-pull-request",{"title":183,"path":184,"stem":185,"icon":186},"Project Architecture","\u002Fdocs\u002Fdeveloper\u002Farchitecture","1.docs\u002F6.developer\u002F2.architecture","i-lucide-box",{"title":188,"path":189,"stem":190,"children":191,"page":32},"Ja","\u002Fja","ja",[192,211,248,265,298,327],{"title":193,"path":194,"stem":195,"children":196,"icon":32},"クイックスタート","\u002Fja\u002Fgetting-started","ja\u002F1.getting-started\u002F1.index",[197,199,203,207],{"title":198,"path":194,"stem":195,"icon":16},"概要",{"title":200,"path":201,"stem":202,"icon":21},"インストール","\u002Fja\u002Fgetting-started\u002Finstallation","ja\u002F1.getting-started\u002F2.installation",{"title":204,"path":205,"stem":206,"icon":26},"使用方法","\u002Fja\u002Fgetting-started\u002Fusage","ja\u002F1.getting-started\u002F3.usage",{"title":208,"path":209,"stem":210,"icon":31},"設定リファレンス","\u002Fja\u002Fgetting-started\u002Fconfiguration","ja\u002F1.getting-started\u002F4.configuration",{"title":212,"icon":35,"path":213,"stem":214,"children":215,"page":32},"機能","\u002Fja\u002Ffeatures","ja\u002F2.features",[216,220,224,228,232,236,240,244],{"title":217,"path":218,"stem":219,"icon":43},"動画検知","\u002Fja\u002Ffeatures\u002Fvideo-sniffing","ja\u002F2.features\u002F1.video-sniffing",{"title":221,"path":222,"stem":223,"icon":48},"音声キャプチャ","\u002Fja\u002Ffeatures\u002Faudio-capture","ja\u002F2.features\u002F2.audio-capture",{"title":225,"path":226,"stem":227,"icon":53},"画像ダウンロード","\u002Fja\u002Ffeatures\u002Fimage-download","ja\u002F2.features\u002F3.image-download",{"title":229,"path":230,"stem":231,"icon":58},"プライバシーとセキュリティ","\u002Fja\u002Ffeatures\u002Fprivacy-security","ja\u002F2.features\u002F4.privacy-security",{"title":233,"path":234,"stem":235,"icon":63},"フォーマット変換","\u002Fja\u002Ffeatures\u002Fformat-conversion","ja\u002F2.features\u002F5.format-conversion",{"title":237,"path":238,"stem":239,"icon":68},"一括ダウンロード","\u002Fja\u002Ffeatures\u002Fbatch-download","ja\u002F2.features\u002F6.batch-download",{"title":241,"path":242,"stem":243,"icon":73},"キーボードショートカット","\u002Fja\u002Ffeatures\u002Fkeyboard-shortcuts","ja\u002F2.features\u002F7.keyboard-shortcuts",{"title":245,"path":246,"stem":247,"icon":78},"検索とフィルタ","\u002Fja\u002Ffeatures\u002Fsearch-filter","ja\u002F2.features\u002F8.search-filter",{"title":249,"icon":81,"path":250,"stem":251,"children":252,"page":32},"詳細情報","\u002Fja\u002Fadvanced","ja\u002F3.advanced",[253,257,261],{"title":254,"path":255,"stem":256,"icon":89},"オンラインツール","\u002Fja\u002Fadvanced\u002Fonline-tools","ja\u002F3.advanced\u002F1.online-tools",{"title":258,"path":259,"stem":260,"icon":94},"ブラウザ互換性","\u002Fja\u002Fadvanced\u002Fbrowser-compatibility","ja\u002F3.advanced\u002F2.browser-compatibility",{"title":262,"path":263,"stem":264,"icon":99},"ダウンロードエンジンアーキテクチャ","\u002Fja\u002Fadvanced\u002Fdownload-engine","ja\u002F3.advanced\u002F3.download-engine",{"title":266,"icon":102,"path":267,"stem":268,"children":269,"page":32},"ユースケース","\u002Fja\u002Fusecases","ja\u002F4.usecases",[270,274,278,282,286,290,294],{"title":271,"path":272,"stem":273,"icon":110},"オンライン講座の動画保存とオフライン学習","\u002Fja\u002Fusecases\u002Fonline-courses","ja\u002F4.usecases\u002F1.online-courses",{"title":275,"path":276,"stem":277,"icon":43},"動画プラットフォームのストリーム保存と素材収集","\u002Fja\u002Fusecases\u002Fvideo-platforms","ja\u002F4.usecases\u002F2.video-platforms",{"title":279,"path":280,"stem":281,"icon":119},"ライブ配信アーカイブの保存と大容量動画ダウンロード","\u002Fja\u002Fusecases\u002Flive-replays","ja\u002F4.usecases\u002F3.live-replays",{"title":283,"path":284,"stem":285,"icon":124},"ポッドキャスト・Web音声の保存とオフライン再生","\u002Fja\u002Fusecases\u002Fpodcasts-audio","ja\u002F4.usecases\u002F4.podcasts-audio",{"title":287,"path":288,"stem":289,"icon":53},"画像ギャラリー・壁紙の一括ダウンロード","\u002Fja\u002Fusecases\u002Fimage-galleries","ja\u002F4.usecases\u002F5.image-galleries",{"title":291,"path":292,"stem":293,"icon":133},"社内研修動画とイントラネット配信の保存","\u002Fja\u002Fusecases\u002Fcorporate-training","ja\u002F4.usecases\u002F6.corporate-training",{"title":295,"path":296,"stem":297,"icon":138},"動画・音声・画像の個人メディア保存と整理","\u002Fja\u002Fusecases\u002Fpersonal-archiving","ja\u002F4.usecases\u002F7.personal-archiving",{"title":299,"icon":141,"path":300,"stem":301,"children":302,"page":32},"トラブルシューティング","\u002Fja\u002Ftroubleshooting","ja\u002F5.troubleshooting",[303,307,311,315,319,323],{"title":304,"path":305,"stem":306,"icon":141},"一般的な問題のトラブルシューティング","\u002Fja\u002Ftroubleshooting\u002Fcommon-issues","ja\u002F5.troubleshooting\u002F1.common-issues",{"title":308,"path":309,"stem":310,"icon":153},"既知の制限事項と注意点","\u002Fja\u002Ftroubleshooting\u002Fknown-issues","ja\u002F5.troubleshooting\u002F2.known-issues",{"title":312,"path":313,"stem":314,"icon":158},"よくある質問","\u002Fja\u002Ftroubleshooting\u002Ffaq","ja\u002F5.troubleshooting\u002F3.faq",{"title":316,"path":317,"stem":318,"icon":141},"M3U8ダウンロードに失敗する場合の対処法","\u002Fja\u002Ftroubleshooting\u002Fm3u8-download-failed","ja\u002F5.troubleshooting\u002F4.m3u8-download-failed",{"title":320,"path":321,"stem":322,"icon":141},"DASH動画に音声がない場合の対処法","\u002Fja\u002Ftroubleshooting\u002Fdash-no-audio","ja\u002F5.troubleshooting\u002F5.dash-no-audio",{"title":324,"path":325,"stem":326,"icon":141},"動画の直リンクをダウンロードできない場合","\u002Fja\u002Ftroubleshooting\u002Fdirect-video-download","ja\u002F5.troubleshooting\u002F6.direct-video-download",{"title":328,"icon":173,"path":329,"stem":330,"children":331,"page":32},"開発者ガイド","\u002Fja\u002Fdeveloper","ja\u002F6.developer",[332,336],{"title":333,"path":334,"stem":335,"icon":181},"貢献ガイド","\u002Fja\u002Fdeveloper\u002Fcontributing","ja\u002F6.developer\u002F1.contributing",{"title":337,"path":338,"stem":339,"icon":186},"プロジェクトアーキテクチャ","\u002Fja\u002Fdeveloper\u002Farchitecture","ja\u002F6.developer\u002F2.architecture",{"title":341,"path":342,"stem":343,"children":344,"page":32},"Ko","\u002Fko","ko",[345,364,401,418,451,480],{"title":346,"path":347,"stem":348,"children":349,"icon":32},"빠른 시작","\u002Fko\u002Fgetting-started","ko\u002F1.getting-started\u002F1.index",[350,352,356,360],{"title":351,"path":347,"stem":348,"icon":16},"소개",{"title":353,"path":354,"stem":355,"icon":21},"설치","\u002Fko\u002Fgetting-started\u002Finstallation","ko\u002F1.getting-started\u002F2.installation",{"title":357,"path":358,"stem":359,"icon":26},"사용 방법","\u002Fko\u002Fgetting-started\u002Fusage","ko\u002F1.getting-started\u002F3.usage",{"title":361,"path":362,"stem":363,"icon":31},"설정 참조","\u002Fko\u002Fgetting-started\u002Fconfiguration","ko\u002F1.getting-started\u002F4.configuration",{"title":365,"icon":35,"path":366,"stem":367,"children":368,"page":32},"기능","\u002Fko\u002Ffeatures","ko\u002F2.features",[369,373,377,381,385,389,393,397],{"title":370,"path":371,"stem":372,"icon":43},"비디오 스니핑","\u002Fko\u002Ffeatures\u002Fvideo-sniffing","ko\u002F2.features\u002F1.video-sniffing",{"title":374,"path":375,"stem":376,"icon":48},"오디오 캡처","\u002Fko\u002Ffeatures\u002Faudio-capture","ko\u002F2.features\u002F2.audio-capture",{"title":378,"path":379,"stem":380,"icon":53},"이미지 다운로드","\u002Fko\u002Ffeatures\u002Fimage-download","ko\u002F2.features\u002F3.image-download",{"title":382,"path":383,"stem":384,"icon":58},"개인정보 보호와 보안","\u002Fko\u002Ffeatures\u002Fprivacy-security","ko\u002F2.features\u002F4.privacy-security",{"title":386,"path":387,"stem":388,"icon":63},"포맷 변환","\u002Fko\u002Ffeatures\u002Fformat-conversion","ko\u002F2.features\u002F5.format-conversion",{"title":390,"path":391,"stem":392,"icon":68},"일괄 다운로드","\u002Fko\u002Ffeatures\u002Fbatch-download","ko\u002F2.features\u002F6.batch-download",{"title":394,"path":395,"stem":396,"icon":73},"키보드 단축키","\u002Fko\u002Ffeatures\u002Fkeyboard-shortcuts","ko\u002F2.features\u002F7.keyboard-shortcuts",{"title":398,"path":399,"stem":400,"icon":78},"검색과 필터링","\u002Fko\u002Ffeatures\u002Fsearch-filter","ko\u002F2.features\u002F8.search-filter",{"title":402,"icon":81,"path":403,"stem":404,"children":405,"page":32},"고급 가이드","\u002Fko\u002Fadvanced","ko\u002F3.advanced",[406,410,414],{"title":407,"path":408,"stem":409,"icon":89},"온라인 도구","\u002Fko\u002Fadvanced\u002Fonline-tools","ko\u002F3.advanced\u002F1.online-tools",{"title":411,"path":412,"stem":413,"icon":94},"브라우저 호환성","\u002Fko\u002Fadvanced\u002Fbrowser-compatibility","ko\u002F3.advanced\u002F2.browser-compatibility",{"title":415,"path":416,"stem":417,"icon":99},"다운로드 엔진 아키텍처","\u002Fko\u002Fadvanced\u002Fdownload-engine","ko\u002F3.advanced\u002F3.download-engine",{"title":419,"icon":102,"path":420,"stem":421,"children":422,"page":32},"사용 사례","\u002Fko\u002Fusecases","ko\u002F4.usecases",[423,427,431,435,439,443,447],{"title":424,"path":425,"stem":426,"icon":110},"온라인 강의 동영상 다운로드와 오프라인 학습","\u002Fko\u002Fusecases\u002Fonline-courses","ko\u002F4.usecases\u002F1.online-courses",{"title":428,"path":429,"stem":430,"icon":43},"동영상 플랫폼 스트리밍 다운로드와 콘텐츠 수집","\u002Fko\u002Fusecases\u002Fvideo-platforms","ko\u002F4.usecases\u002F2.video-platforms",{"title":432,"path":433,"stem":434,"icon":119},"라이브 다시보기 다운로드와 대용량 스트리밍 저장","\u002Fko\u002Fusecases\u002Flive-replays","ko\u002F4.usecases\u002F3.live-replays",{"title":436,"path":437,"stem":438,"icon":124},"팟캐스트와 웹 오디오 다운로드","\u002Fko\u002Fusecases\u002Fpodcasts-audio","ko\u002F4.usecases\u002F4.podcasts-audio",{"title":440,"path":441,"stem":442,"icon":53},"웹 갤러리와 배경화면 이미지 일괄 다운로드","\u002Fko\u002Fusecases\u002Fimage-galleries","ko\u002F4.usecases\u002F5.image-galleries",{"title":444,"path":445,"stem":446,"icon":133},"사내 교육 동영상과 인트라넷 스트리밍 다운로드","\u002Fko\u002Fusecases\u002Fcorporate-training","ko\u002F4.usecases\u002F6.corporate-training",{"title":448,"path":449,"stem":450,"icon":138},"동영상·오디오·이미지 개인 미디어 보관","\u002Fko\u002Fusecases\u002Fpersonal-archiving","ko\u002F4.usecases\u002F7.personal-archiving",{"title":452,"icon":141,"path":453,"stem":454,"children":455,"page":32},"문제 해결","\u002Fko\u002Ftroubleshooting","ko\u002F5.troubleshooting",[456,460,464,468,472,476],{"title":457,"path":458,"stem":459,"icon":141},"일반적인 문제 해결","\u002Fko\u002Ftroubleshooting\u002Fcommon-issues","ko\u002F5.troubleshooting\u002F1.common-issues",{"title":461,"path":462,"stem":463,"icon":153},"알려진 제한 사항 및 주의사항","\u002Fko\u002Ftroubleshooting\u002Fknown-issues","ko\u002F5.troubleshooting\u002F2.known-issues",{"title":465,"path":466,"stem":467,"icon":158},"자주 묻는 질문","\u002Fko\u002Ftroubleshooting\u002Ffaq","ko\u002F5.troubleshooting\u002F3.faq",{"title":469,"path":470,"stem":471,"icon":141},"M3U8 다운로드 실패 해결 방법","\u002Fko\u002Ftroubleshooting\u002Fm3u8-download-failed","ko\u002F5.troubleshooting\u002F4.m3u8-download-failed",{"title":473,"path":474,"stem":475,"icon":141},"DASH 동영상에 소리가 없을 때 해결 방법","\u002Fko\u002Ftroubleshooting\u002Fdash-no-audio","ko\u002F5.troubleshooting\u002F5.dash-no-audio",{"title":477,"path":478,"stem":479,"icon":141},"동영상 직링크 다운로드 실패 해결 방법","\u002Fko\u002Ftroubleshooting\u002Fdirect-video-download","ko\u002F5.troubleshooting\u002F6.direct-video-download",{"title":481,"icon":173,"path":482,"stem":483,"children":484,"page":32},"개발자 문서","\u002Fko\u002Fdeveloper","ko\u002F6.developer",[485,489],{"title":486,"path":487,"stem":488,"icon":181},"기여 가이드라인","\u002Fko\u002Fdeveloper\u002Fcontributing","ko\u002F6.developer\u002F1.contributing",{"title":490,"path":491,"stem":492,"icon":186},"프로젝트 아키텍처","\u002Fko\u002Fdeveloper\u002Farchitecture","ko\u002F6.developer\u002F2.architecture",{"title":494,"path":495,"stem":496,"children":497,"page":32},"Zh Hans","\u002Fzh-hans","zh-Hans",[498,516,553,570,603,632],{"title":499,"path":500,"stem":501,"children":502,"icon":32},"快速开始","\u002Fzh-hans\u002Fgetting-started","zh-Hans\u002F1.getting-started\u002F1.index",[503,505,509,512],{"title":504,"path":500,"stem":501,"icon":16},"简介",{"title":506,"path":507,"stem":508,"icon":21},"安装","\u002Fzh-hans\u002Fgetting-started\u002Finstallation","zh-Hans\u002F1.getting-started\u002F2.installation",{"title":204,"path":510,"stem":511,"icon":26},"\u002Fzh-hans\u002Fgetting-started\u002Fusage","zh-Hans\u002F1.getting-started\u002F3.usage",{"title":513,"path":514,"stem":515,"icon":31},"配置参考","\u002Fzh-hans\u002Fgetting-started\u002Fconfiguration","zh-Hans\u002F1.getting-started\u002F4.configuration",{"title":517,"icon":35,"path":518,"stem":519,"children":520,"page":32},"功能特性","\u002Fzh-hans\u002Ffeatures","zh-Hans\u002F2.features",[521,525,529,533,537,541,545,549],{"title":522,"path":523,"stem":524,"icon":43},"视频嗅探","\u002Fzh-hans\u002Ffeatures\u002Fvideo-sniffing","zh-Hans\u002F2.features\u002F1.video-sniffing",{"title":526,"path":527,"stem":528,"icon":48},"音频捕获","\u002Fzh-hans\u002Ffeatures\u002Faudio-capture","zh-Hans\u002F2.features\u002F2.audio-capture",{"title":530,"path":531,"stem":532,"icon":53},"图片下载","\u002Fzh-hans\u002Ffeatures\u002Fimage-download","zh-Hans\u002F2.features\u002F3.image-download",{"title":534,"path":535,"stem":536,"icon":58},"隐私与安全","\u002Fzh-hans\u002Ffeatures\u002Fprivacy-security","zh-Hans\u002F2.features\u002F4.privacy-security",{"title":538,"path":539,"stem":540,"icon":63},"格式转换","\u002Fzh-hans\u002Ffeatures\u002Fformat-conversion","zh-Hans\u002F2.features\u002F5.format-conversion",{"title":542,"path":543,"stem":544,"icon":68},"批量下载","\u002Fzh-hans\u002Ffeatures\u002Fbatch-download","zh-Hans\u002F2.features\u002F6.batch-download",{"title":546,"path":547,"stem":548,"icon":73},"键盘快捷键","\u002Fzh-hans\u002Ffeatures\u002Fkeyboard-shortcuts","zh-Hans\u002F2.features\u002F7.keyboard-shortcuts",{"title":550,"path":551,"stem":552,"icon":78},"搜索与筛选","\u002Fzh-hans\u002Ffeatures\u002Fsearch-filter","zh-Hans\u002F2.features\u002F8.search-filter",{"title":554,"icon":81,"path":555,"stem":556,"children":557,"page":32},"高级指南","\u002Fzh-hans\u002Fadvanced","zh-Hans\u002F3.advanced",[558,562,566],{"title":559,"path":560,"stem":561,"icon":89},"在线工具","\u002Fzh-hans\u002Fadvanced\u002Fonline-tools","zh-Hans\u002F3.advanced\u002F1.online-tools",{"title":563,"path":564,"stem":565,"icon":94},"浏览器兼容性","\u002Fzh-hans\u002Fadvanced\u002Fbrowser-compatibility","zh-Hans\u002F3.advanced\u002F2.browser-compatibility",{"title":567,"path":568,"stem":569,"icon":99},"下载引擎架构","\u002Fzh-hans\u002Fadvanced\u002Fdownload-engine","zh-Hans\u002F3.advanced\u002F3.download-engine",{"title":571,"icon":102,"path":572,"stem":573,"children":574,"page":32},"使用场景","\u002Fzh-hans\u002Fusecases","zh-Hans\u002F4.usecases",[575,579,583,587,591,595,599],{"title":576,"path":577,"stem":578,"icon":110},"在线课程视频下载与离线学习","\u002Fzh-hans\u002Fusecases\u002Fonline-courses","zh-Hans\u002F4.usecases\u002F1.online-courses",{"title":580,"path":581,"stem":582,"icon":43},"视频平台流媒体下载与素材收集","\u002Fzh-hans\u002Fusecases\u002Fvideo-platforms","zh-Hans\u002F4.usecases\u002F2.video-platforms",{"title":584,"path":585,"stem":586,"icon":119},"直播回放下载与大文件流媒体保存","\u002Fzh-hans\u002Fusecases\u002Flive-replays","zh-Hans\u002F4.usecases\u002F3.live-replays",{"title":588,"path":589,"stem":590,"icon":124},"播客与网页音频下载","\u002Fzh-hans\u002Fusecases\u002Fpodcasts-audio","zh-Hans\u002F4.usecases\u002F4.podcasts-audio",{"title":592,"path":593,"stem":594,"icon":53},"图库与壁纸批量图片下载","\u002Fzh-hans\u002Fusecases\u002Fimage-galleries","zh-Hans\u002F4.usecases\u002F5.image-galleries",{"title":596,"path":597,"stem":598,"icon":133},"企业内训视频与内网流媒体下载","\u002Fzh-hans\u002Fusecases\u002Fcorporate-training","zh-Hans\u002F4.usecases\u002F6.corporate-training",{"title":600,"path":601,"stem":602,"icon":138},"个人媒体下载与视频音频图片归档","\u002Fzh-hans\u002Fusecases\u002Fpersonal-archiving","zh-Hans\u002F4.usecases\u002F7.personal-archiving",{"title":604,"icon":141,"path":605,"stem":606,"children":607,"page":32},"故障排除","\u002Fzh-hans\u002Ftroubleshooting","zh-Hans\u002F5.troubleshooting",[608,612,616,620,624,628],{"title":609,"path":610,"stem":611,"icon":141},"常见问题排查","\u002Fzh-hans\u002Ftroubleshooting\u002Fcommon-issues","zh-Hans\u002F5.troubleshooting\u002F1.common-issues",{"title":613,"path":614,"stem":615,"icon":153},"已知限制与注意事项","\u002Fzh-hans\u002Ftroubleshooting\u002Fknown-issues","zh-Hans\u002F5.troubleshooting\u002F2.known-issues",{"title":617,"path":618,"stem":619,"icon":158},"常见问题解答","\u002Fzh-hans\u002Ftroubleshooting\u002Ffaq","zh-Hans\u002F5.troubleshooting\u002F3.faq",{"title":621,"path":622,"stem":623,"icon":141},"M3U8 下载失败怎么办？HLS 流媒体排查","\u002Fzh-hans\u002Ftroubleshooting\u002Fm3u8-download-failed","zh-Hans\u002F5.troubleshooting\u002F4.m3u8-download-failed",{"title":625,"path":626,"stem":627,"icon":141},"DASH 视频没有声音怎么办？MPD 故障排查","\u002Fzh-hans\u002Ftroubleshooting\u002Fdash-no-audio","zh-Hans\u002F5.troubleshooting\u002F5.dash-no-audio",{"title":629,"path":630,"stem":631,"icon":141},"视频直链下载失败怎么办？MP4、WebM 排查","\u002Fzh-hans\u002Ftroubleshooting\u002Fdirect-video-download","zh-Hans\u002F5.troubleshooting\u002F6.direct-video-download",{"title":633,"icon":173,"path":634,"stem":635,"children":636,"page":32},"开发者文档","\u002Fzh-hans\u002Fdeveloper","zh-Hans\u002F6.developer",[637,641],{"title":638,"path":639,"stem":640,"icon":181},"贡献指南","\u002Fzh-hans\u002Fdeveloper\u002Fcontributing","zh-Hans\u002F6.developer\u002F1.contributing",{"title":642,"path":643,"stem":644,"icon":186},"项目架构","\u002Fzh-hans\u002Fdeveloper\u002Farchitecture","zh-Hans\u002F6.developer\u002F2.architecture",{"title":646,"path":647,"stem":648,"children":649,"page":32},"Zh Hant","\u002Fzh-hant","zh-Hant",[650,668,705,721,753,782],{"title":651,"path":652,"stem":653,"children":654,"icon":32},"快速入門","\u002Fzh-hant\u002Fgetting-started","zh-Hant\u002F1.getting-started\u002F1.index",[655,657,661,664],{"title":656,"path":652,"stem":653,"icon":16},"簡介",{"title":658,"path":659,"stem":660,"icon":21},"安裝","\u002Fzh-hant\u002Fgetting-started\u002Finstallation","zh-Hant\u002F1.getting-started\u002F2.installation",{"title":204,"path":662,"stem":663,"icon":26},"\u002Fzh-hant\u002Fgetting-started\u002Fusage","zh-Hant\u002F1.getting-started\u002F3.usage",{"title":665,"path":666,"stem":667,"icon":31},"配置參考","\u002Fzh-hant\u002Fgetting-started\u002Fconfiguration","zh-Hant\u002F1.getting-started\u002F4.configuration",{"title":669,"icon":35,"path":670,"stem":671,"children":672,"page":32},"功能特色","\u002Fzh-hant\u002Ffeatures","zh-Hant\u002F2.features",[673,677,681,685,689,693,697,701],{"title":674,"path":675,"stem":676,"icon":43},"影片嗅探","\u002Fzh-hant\u002Ffeatures\u002Fvideo-sniffing","zh-Hant\u002F2.features\u002F1.video-sniffing",{"title":678,"path":679,"stem":680,"icon":48},"音訊擷取","\u002Fzh-hant\u002Ffeatures\u002Faudio-capture","zh-Hant\u002F2.features\u002F2.audio-capture",{"title":682,"path":683,"stem":684,"icon":53},"圖片下載","\u002Fzh-hant\u002Ffeatures\u002Fimage-download","zh-Hant\u002F2.features\u002F3.image-download",{"title":686,"path":687,"stem":688,"icon":58},"隱私與安全","\u002Fzh-hant\u002Ffeatures\u002Fprivacy-security","zh-Hant\u002F2.features\u002F4.privacy-security",{"title":690,"path":691,"stem":692,"icon":63},"格式轉換","\u002Fzh-hant\u002Ffeatures\u002Fformat-conversion","zh-Hant\u002F2.features\u002F5.format-conversion",{"title":694,"path":695,"stem":696,"icon":68},"批次下載","\u002Fzh-hant\u002Ffeatures\u002Fbatch-download","zh-Hant\u002F2.features\u002F6.batch-download",{"title":698,"path":699,"stem":700,"icon":73},"鍵盤快速鍵","\u002Fzh-hant\u002Ffeatures\u002Fkeyboard-shortcuts","zh-Hant\u002F2.features\u002F7.keyboard-shortcuts",{"title":702,"path":703,"stem":704,"icon":78},"搜尋與篩選","\u002Fzh-hant\u002Ffeatures\u002Fsearch-filter","zh-Hant\u002F2.features\u002F8.search-filter",{"title":554,"icon":81,"path":706,"stem":707,"children":708,"page":32},"\u002Fzh-hant\u002Fadvanced","zh-Hant\u002F3.advanced",[709,713,717],{"title":710,"path":711,"stem":712,"icon":89},"線上工具","\u002Fzh-hant\u002Fadvanced\u002Fonline-tools","zh-Hant\u002F3.advanced\u002F1.online-tools",{"title":714,"path":715,"stem":716,"icon":94},"瀏覽器相容性","\u002Fzh-hant\u002Fadvanced\u002Fbrowser-compatibility","zh-Hant\u002F3.advanced\u002F2.browser-compatibility",{"title":718,"path":719,"stem":720,"icon":99},"下載引擎架構","\u002Fzh-hant\u002Fadvanced\u002Fdownload-engine","zh-Hant\u002F3.advanced\u002F3.download-engine",{"title":571,"icon":102,"path":722,"stem":723,"children":724,"page":32},"\u002Fzh-hant\u002Fusecases","zh-Hant\u002F4.usecases",[725,729,733,737,741,745,749],{"title":726,"path":727,"stem":728,"icon":110},"線上課程影片下載與離線學習","\u002Fzh-hant\u002Fusecases\u002Fonline-courses","zh-Hant\u002F4.usecases\u002F1.online-courses",{"title":730,"path":731,"stem":732,"icon":43},"影片平台串流下載與素材收集","\u002Fzh-hant\u002Fusecases\u002Fvideo-platforms","zh-Hant\u002F4.usecases\u002F2.video-platforms",{"title":734,"path":735,"stem":736,"icon":119},"直播回放下載與大型串流影片儲存","\u002Fzh-hant\u002Fusecases\u002Flive-replays","zh-Hant\u002F4.usecases\u002F3.live-replays",{"title":738,"path":739,"stem":740,"icon":124},"Podcast 與網頁音訊下載","\u002Fzh-hant\u002Fusecases\u002Fpodcasts-audio","zh-Hant\u002F4.usecases\u002F4.podcasts-audio",{"title":742,"path":743,"stem":744,"icon":53},"圖庫與桌布圖片批次下載","\u002Fzh-hant\u002Fusecases\u002Fimage-galleries","zh-Hant\u002F4.usecases\u002F5.image-galleries",{"title":746,"path":747,"stem":748,"icon":133},"企業內訓影片與內網串流下載","\u002Fzh-hant\u002Fusecases\u002Fcorporate-training","zh-Hant\u002F4.usecases\u002F6.corporate-training",{"title":750,"path":751,"stem":752,"icon":138},"個人媒體下載與影片音訊圖片歸檔","\u002Fzh-hant\u002Fusecases\u002Fpersonal-archiving","zh-Hant\u002F4.usecases\u002F7.personal-archiving",{"title":754,"icon":141,"path":755,"stem":756,"children":757,"page":32},"疑難排解","\u002Fzh-hant\u002Ftroubleshooting","zh-Hant\u002F5.troubleshooting",[758,762,766,770,774,778],{"title":759,"path":760,"stem":761,"icon":141},"常見問題排查","\u002Fzh-hant\u002Ftroubleshooting\u002Fcommon-issues","zh-Hant\u002F5.troubleshooting\u002F1.common-issues",{"title":763,"path":764,"stem":765,"icon":153},"已知限制與注意事項","\u002Fzh-hant\u002Ftroubleshooting\u002Fknown-issues","zh-Hant\u002F5.troubleshooting\u002F2.known-issues",{"title":767,"path":768,"stem":769,"icon":158},"常見問題解答","\u002Fzh-hant\u002Ftroubleshooting\u002Ffaq","zh-Hant\u002F5.troubleshooting\u002F3.faq",{"title":771,"path":772,"stem":773,"icon":141},"M3U8 下載失敗怎麼辦？HLS 串流排查","\u002Fzh-hant\u002Ftroubleshooting\u002Fm3u8-download-failed","zh-Hant\u002F5.troubleshooting\u002F4.m3u8-download-failed",{"title":775,"path":776,"stem":777,"icon":141},"DASH 影片沒有聲音怎麼辦？MPD 排查","\u002Fzh-hant\u002Ftroubleshooting\u002Fdash-no-audio","zh-Hant\u002F5.troubleshooting\u002F5.dash-no-audio",{"title":779,"path":780,"stem":781,"icon":141},"影片直連下載失敗怎麼辦？MP4、WebM 排查","\u002Fzh-hant\u002Ftroubleshooting\u002Fdirect-video-download","zh-Hant\u002F5.troubleshooting\u002F6.direct-video-download",{"title":633,"icon":173,"path":783,"stem":784,"children":785,"page":32},"\u002Fzh-hant\u002Fdeveloper","zh-Hant\u002F6.developer",[786,790],{"title":787,"path":788,"stem":789,"icon":181},"貢獻指南","\u002Fzh-hant\u002Fdeveloper\u002Fcontributing","zh-Hant\u002F6.developer\u002F1.contributing",{"title":791,"path":792,"stem":793,"icon":186},"專案架構","\u002Fzh-hant\u002Fdeveloper\u002Farchitecture","zh-Hant\u002F6.developer\u002F2.architecture",{"id":795,"title":168,"body":796,"description":1787,"extension":1788,"meta":1789,"navigation":1791,"path":169,"seo":1792,"stem":170,"__hash__":1794},"docs\u002F1.docs\u002F5.troubleshooting\u002F6.direct-video-download.md",{"type":797,"value":798,"toc":1773},"minimark",[799,803,808,811,877,904,908,911,932,939,946,950,956,963,995,998,1116,1132,1136,1141,1144,1164,1167,1198,1216,1220,1225,1244,1251,1255,1260,1275,1278,1301,1323,1327,1332,1339,1342,1399,1413,1417,1422,1436,1485,1495,1499,1504,1520,1523,1537,1541,1548,1619,1625,1628,1682,1685,1689,1715,1725,1729,1769],[800,801,802],"p",{},"A direct video link is the \"one URL, one file\" kind of download: MP4, WebM, MOV, MKV — open it and it plays, grab the URL and you can save it. It has nothing in common with M3U8 or MPD streams that need to be downloaded piece by piece and merged. This article walks through the most common direct-link download traps one by one, with curl commands to pinpoint exactly where things go wrong.",[804,805,807],"h2",{"id":806},"first-know-the-difference-direct-links-vs-streaming","First, know the difference: direct links vs streaming",[800,809,810],{},"More than half of direct-link download failures come from applying streaming thinking to direct links. Get the two apart first:",[812,813,814,829],"table",{},[815,816,817],"thead",{},[818,819,820,823,826],"tr",{},[821,822],"th",{},[821,824,825],{},"Direct file",[821,827,828],{},"HLS \u002F DASH stream",[830,831,832,844,855,866],"tbody",{},[818,833,834,838,841],{},[835,836,837],"td",{},"Structure",[835,839,840],{},"A single file",[835,842,843],{},"Manifest + hundreds of segments",[818,845,846,849,852],{},[835,847,848],{},"Download",[835,850,851],{},"One request",[835,853,854],{},"Download each segment, then merge",[818,856,857,860,863],{},[835,858,859],{},"Failure mode",[835,861,862],{},"Whole file fails (403\u002F404\u002Fempty)",[835,864,865],{},"Some segments fail, merged video is garbled or silent",[818,867,868,871,874],{},[835,869,870],{},"Where to look",[835,872,873],{},"Request headers, URL validity, format",[835,875,876],{},"Manifest, segments, keys, merging",[800,878,879,880,887,888,893,894,898,899,903],{},"So the symptoms below basically only apply to direct links. If your video is actually an HLS or DASH stream, head to the matching article first: ",[881,882,883],"strong",{},[884,885,886],"a",{"href":161},"M3U8 (HLS) Download Failed"," or ",[881,889,890],{},[884,891,892],{"href":165},"DASH Downloaded But No Audio",". For what direct links FlowPick detects and the supported formats, see ",[884,895,897],{"href":896},"\u002Fdocs\u002Ffeatures\u002Fvideo-sniffing#supported-video-formats","Video Sniffing — Supported Video Formats"," and ",[884,900,902],{"href":901},"\u002Fdocs\u002Ffeatures\u002Fvideo-sniffing#direct-video-files","Video Sniffing — Direct Video Files",".",[804,905,907],{"id":906},"quick-fix","Quick fix",[800,909,910],{},"Run through this flow first — it solves most cases:",[912,913,914,922,929],"ol",{},[915,916,917,918,921],"li",{},"Open the page where the video ",[881,919,920],{},"actually plays",", let it play for a few seconds so it really loads.",[915,923,924,925,928],{},"Open the FlowPick extension and pick the ",[881,926,927],{},"video file"," from the resource list — don't pick the thumbnail or cover.",[915,930,931],{},"Confirm the preview on the right plays fine, then download.",[800,933,934],{},[935,936],"img",{"alt":937,"src":938},"Direct video download interface","\u002Fscreenshots\u002Fdirect-video-download.png",[800,940,941,942,903],{},"Still failing? Match your case against the symptoms below. For how to pick files and choose a save directory in the extension, see ",[884,943,945],{"href":944},"\u002Fdocs\u002Fgetting-started\u002Fusage#downloading-a-single-resource","Usage — Downloading a Single Resource",[804,947,949],{"id":948},"symptom-1-403-forbidden","Symptom 1: 403 Forbidden",[800,951,952,955],{},[881,953,954],{},"Symptom",": The download fails immediately, or opening the URL directly in a browser also returns 403.",[800,957,958,959,962],{},"Direct video links rarely mean \"you really have no permission\" — usually the ",[881,960,961],{},"request headers are wrong",". Common checks by the origin server:",[964,965,966,972,978,989],"ul",{},[915,967,968,971],{},[881,969,970],{},"Referer check",": the request must come from a specific page; empty or unknown Referers are rejected outright.",[915,973,974,977],{},[881,975,976],{},"Cookie \u002F login state",": no login cookie, or the session has expired.",[915,979,980,983,984,988],{},[881,981,982],{},"Temporary token",": the URL carries ",[985,986,987],"code",{},"?token=xxx&expires=yyy"," and returns 403 once expired.",[915,990,991,994],{},[881,992,993],{},"Region \u002F IP restrictions",": the CDN decides based on your egress IP.",[800,996,997],{},"Grab the direct link and reproduce it with curl (swap in your own URL):",[999,1000,1005],"pre",{"className":1001,"code":1002,"language":1003,"meta":1004,"style":1004},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","# Bare request with no headers — see what comes back\ncurl -s -o \u002Fdev\u002Fnull -w \"bare request: %{http_code}\\n\" \"https:\u002F\u002Fcdn.example.com\u002Fvideos\u002Flesson1.mp4\"\n\n# Retry with the page Referer\ncurl -s -o \u002Fdev\u002Fnull -w \"with Referer: %{http_code}\\n\" \\\n  -H \"Referer: https:\u002F\u002Fwww.example.com\u002Fcourse\u002F123\" \\\n  \"https:\u002F\u002Fcdn.example.com\u002Fvideos\u002Flesson1.mp4\"\n","bash","",[985,1006,1007,1016,1054,1061,1067,1091,1106],{"__ignoreMap":1004},[1008,1009,1012],"span",{"class":1010,"line":1011},"line",1,[1008,1013,1015],{"class":1014},"sHwdD","# Bare request with no headers — see what comes back\n",[1008,1017,1019,1023,1027,1030,1033,1036,1040,1043,1046,1048,1051],{"class":1010,"line":1018},2,[1008,1020,1022],{"class":1021},"sBMFI","curl",[1008,1024,1026],{"class":1025},"sfazB"," -s",[1008,1028,1029],{"class":1025}," -o",[1008,1031,1032],{"class":1025}," \u002Fdev\u002Fnull",[1008,1034,1035],{"class":1025}," -w",[1008,1037,1039],{"class":1038},"sMK4o"," \"",[1008,1041,1042],{"class":1025},"bare request: %{http_code}\\n",[1008,1044,1045],{"class":1038},"\"",[1008,1047,1039],{"class":1038},[1008,1049,1050],{"class":1025},"https:\u002F\u002Fcdn.example.com\u002Fvideos\u002Flesson1.mp4",[1008,1052,1053],{"class":1038},"\"\n",[1008,1055,1057],{"class":1010,"line":1056},3,[1008,1058,1060],{"emptyLinePlaceholder":1059},true,"\n",[1008,1062,1064],{"class":1010,"line":1063},4,[1008,1065,1066],{"class":1014},"# Retry with the page Referer\n",[1008,1068,1070,1072,1074,1076,1078,1080,1082,1085,1087],{"class":1010,"line":1069},5,[1008,1071,1022],{"class":1021},[1008,1073,1026],{"class":1025},[1008,1075,1029],{"class":1025},[1008,1077,1032],{"class":1025},[1008,1079,1035],{"class":1025},[1008,1081,1039],{"class":1038},[1008,1083,1084],{"class":1025},"with Referer: %{http_code}\\n",[1008,1086,1045],{"class":1038},[1008,1088,1090],{"class":1089},"sTEyZ"," \\\n",[1008,1092,1094,1097,1099,1102,1104],{"class":1010,"line":1093},6,[1008,1095,1096],{"class":1025},"  -H",[1008,1098,1039],{"class":1038},[1008,1100,1101],{"class":1025},"Referer: https:\u002F\u002Fwww.example.com\u002Fcourse\u002F123",[1008,1103,1045],{"class":1038},[1008,1105,1090],{"class":1089},[1008,1107,1109,1112,1114],{"class":1010,"line":1108},7,[1008,1110,1111],{"class":1038},"  \"",[1008,1113,1050],{"class":1025},[1008,1115,1053],{"class":1038},[800,1117,1118,1119,1122,1123,1127,1128,903],{},"If it works with the Referer attached, it's hotlink protection. ",[881,1120,1121],{},"Fix it inside the browser extension",": the extension runs in the source page context, so Referer and Cookie are attached automatically. Versions after v1.1.1 also ship an anti-hotlink proxy that fills in request headers and validates the response for both preview and download, so an HTML error page won't be saved as a video. Online tools can't do this — they run on their own domain and can't carry the target site's cookies. For upgrading, see ",[884,1124,1126],{"href":1125},"\u002Fdocs\u002Fgetting-started\u002Finstallation#updating-extensions","Installation — Updating Extensions","; for the anti-hotlink proxy details, see ",[884,1129,1131],{"href":1130},"\u002Fblog\u002Fflowpick-v1-1-1-protected-resource-preview-download","FlowPick v1.1.1 Update",[804,1133,1135],{"id":1134},"symptom-2-404-url-expired-or-file-deleted","Symptom 2: 404 — URL expired or file deleted",[800,1137,1138,1140],{},[881,1139,954],{},": It downloaded fine before but 404s today; or a direct link someone shared won't download.",[800,1142,1143],{},"Three common cases:",[964,1145,1146,1152,1158],{},[915,1147,1148,1151],{},[881,1149,1150],{},"Expired signed URL",": many cloud storages (Alibaba Cloud OSS, Tencent Cloud COS, etc.) issue direct links with a validity window that lapses in minutes to hours.",[915,1153,1154,1157],{},[881,1155,1156],{},"File cleaned up",": the uploader deleted the file, or the CDN cache was purged.",[915,1159,1160,1163],{},[881,1161,1162],{},"Wrong URL",": you copied the watch page URL, not the file's direct link.",[800,1165,1166],{},"Check whether the URL itself is still alive:",[999,1168,1170],{"className":1001,"code":1169,"language":1003,"meta":1004,"style":1004},"curl -sI \"https:\u002F\u002Fcdn.example.com\u002Fvideos\u002Flesson1.mp4\" | head -n 8\n",[985,1171,1172],{"__ignoreMap":1004},[1008,1173,1174,1176,1179,1181,1183,1185,1188,1191,1194],{"class":1010,"line":1011},[1008,1175,1022],{"class":1021},[1008,1177,1178],{"class":1025}," -sI",[1008,1180,1039],{"class":1038},[1008,1182,1050],{"class":1025},[1008,1184,1045],{"class":1038},[1008,1186,1187],{"class":1038}," |",[1008,1189,1190],{"class":1021}," head",[1008,1192,1193],{"class":1025}," -n",[1008,1195,1197],{"class":1196},"sbssI"," 8\n",[800,1199,1200,1201,1204,1205,1207,1208,1211,1212,1215],{},"Look at the status code and ",[985,1202,1203],{},"Content-Type",". If ",[985,1206,1203],{}," is ",[985,1209,1210],{},"text\u002Fhtml",", the URL points to a webpage, not a video. If the URL is genuinely dead there's no way around it — ",[881,1213,1214],{},"go back to the original video page and detect again"," to grab a fresh direct link.",[804,1217,1219],{"id":1218},"symptom-3-cors-cross-origin-blocking","Symptom 3: CORS cross-origin blocking",[800,1221,1222,1224],{},[881,1223,954],{},": An online tool reports a CORS error, or the downloaded file is corrupted.",[800,1226,1227,1228,1231,1232,1235,1236,898,1240,903],{},"This is an ",[881,1229,1230],{},"online tool"," problem specifically. Online tools run under ",[985,1233,1234],{},"flowpick.com","'s own domain, and the browser's same-origin policy blocks cross-origin reads. The extension is different — it runs on extension permissions, isn't subject to the same-origin policy, and sees a wider detection scope. For the differences, see ",[884,1237,1239],{"href":1238},"\u002Fdocs\u002Fadvanced\u002Fonline-tools#differences-from-extension","Online Tools — Differences from Extension",[884,1241,1243],{"href":1242},"\u002Fdocs\u002Ffeatures\u002Fvideo-sniffing#detection-differences-extension-vs-online-tool","Video Sniffing — Detection Differences: Extension vs Online Tool",[800,1245,1246,1247,1250],{},"The fix is one sentence: ",[881,1248,1249],{},"don't use the online tool for direct links — use the extension."," The extension works inside the video's original page, so Referer, Cookie, and cross-origin issues are all solved at once.",[804,1252,1254],{"id":1253},"symptom-4-empty-file-or-wont-play","Symptom 4: Empty file or won't play",[800,1256,1257,1259],{},[881,1258,954],{},": The download \"succeeds\" but the file is a few KB, or the player can't open it.",[800,1261,1262,1263,1266,1267,1269,1270,887,1272,903],{},"Nine times out of ten you ",[881,1264,1265],{},"picked the wrong target",": not the video file, but an HTML page, thumbnail, cover image, or a preview endpoint's response. These responses are tiny and come back with ",[985,1268,1203],{}," of ",[985,1271,1210],{},[985,1273,1274],{},"image\u002F*",[800,1276,1277],{},"Use curl to see what the URL actually returns:",[999,1279,1281],{"className":1001,"code":1280,"language":1003,"meta":1004,"style":1004},"curl -sI \"https:\u002F\u002Fcdn.example.com\u002Fcover\u002Flesson1.jpg\"\n# Check Content-Type and Content-Length\n",[985,1282,1283,1296],{"__ignoreMap":1004},[1008,1284,1285,1287,1289,1291,1294],{"class":1010,"line":1011},[1008,1286,1022],{"class":1021},[1008,1288,1178],{"class":1025},[1008,1290,1039],{"class":1038},[1008,1292,1293],{"class":1025},"https:\u002F\u002Fcdn.example.com\u002Fcover\u002Flesson1.jpg",[1008,1295,1053],{"class":1038},[1008,1297,1298],{"class":1010,"line":1018},[1008,1299,1300],{"class":1014},"# Check Content-Type and Content-Length\n",[800,1302,1303,1304,1306,1307,1310,1311,1314,1315,1318,1319,1322],{},"If it points to ",[985,1305,1210],{},", it's just a webpage. Go back to the extension, pick an entry whose type is ",[985,1308,1309],{},"video\u002F*"," (like ",[985,1312,1313],{},"video\u002Fmp4",", ",[985,1316,1317],{},"video\u002Fwebm",") from the resource list, confirm the preview plays, and only then download. If the filename is garbled or has no extension, append ",[985,1320,1321],{},".mp4"," manually after downloading.",[804,1324,1326],{"id":1325},"symptom-5-cant-pause-cant-resume","Symptom 5: Can't pause, can't resume",[800,1328,1329,1331],{},[881,1330,954],{},": The download starts, but after pausing and resuming it restarts from zero; or there's no pause button at all.",[800,1333,1334,1335,1338],{},"This comes down to whether the server supports ",[881,1336,1337],{},"HTTP Range",". Range lets a client request only part of a file, which is what pause-and-resume relies on. If the server hasn't enabled Range, the browser can only download the whole file, so resuming isn't possible.",[800,1340,1341],{},"Test whether the server supports it:",[999,1343,1345],{"className":1001,"code":1344,"language":1003,"meta":1004,"style":1004},"curl -s -o \u002Fdev\u002Fnull -w \"Range request: %{http_code}\\n\" \\\n  -H \"Range: bytes=0-1023\" \\\n  \"https:\u002F\u002Fcdn.example.com\u002Fvideos\u002Flesson1.mp4\"\n# 206 = Range supported, resumable\n# 200 = full file returned, Range not supported\n",[985,1346,1347,1368,1381,1389,1394],{"__ignoreMap":1004},[1008,1348,1349,1351,1353,1355,1357,1359,1361,1364,1366],{"class":1010,"line":1011},[1008,1350,1022],{"class":1021},[1008,1352,1026],{"class":1025},[1008,1354,1029],{"class":1025},[1008,1356,1032],{"class":1025},[1008,1358,1035],{"class":1025},[1008,1360,1039],{"class":1038},[1008,1362,1363],{"class":1025},"Range request: %{http_code}\\n",[1008,1365,1045],{"class":1038},[1008,1367,1090],{"class":1089},[1008,1369,1370,1372,1374,1377,1379],{"class":1010,"line":1018},[1008,1371,1096],{"class":1025},[1008,1373,1039],{"class":1038},[1008,1375,1376],{"class":1025},"Range: bytes=0-1023",[1008,1378,1045],{"class":1038},[1008,1380,1090],{"class":1089},[1008,1382,1383,1385,1387],{"class":1010,"line":1056},[1008,1384,1111],{"class":1038},[1008,1386,1050],{"class":1025},[1008,1388,1053],{"class":1038},[1008,1390,1391],{"class":1010,"line":1063},[1008,1392,1393],{"class":1014},"# 206 = Range supported, resumable\n",[1008,1395,1396],{"class":1010,"line":1069},[1008,1397,1398],{"class":1014},"# 200 = full file returned, Range not supported\n",[800,1400,1401,1404,1405,1408,1409,1412],{},[985,1402,1403],{},"206"," means supported; ",[985,1406,1407],{},"200"," (the whole file) means not. ",[881,1410,1411],{},"It still downloads fine either way"," — you just can't resume, so on an unstable connection it's best to let it finish in one go. This is a server capability, not a tool issue.",[804,1414,1416],{"id":1415},"symptom-6-unsupported-format-or-codec","Symptom 6: Unsupported format or codec",[800,1418,1419,1421],{},[881,1420,954],{},": The file downloaded, the size looks right, but the player says \"unsupported format\" or shows a black screen.",[800,1423,1424,1425,1428,1429,1432,1433,1435],{},"First separate ",[881,1426,1427],{},"container"," from ",[881,1430,1431],{},"codec",": ",[985,1434,1321],{}," is a container, and inside it could be H.264 — or H.265\u002FHEVC or AV1. Container support isn't codec support; the player has to decode the codec inside to play it. Common traps:",[812,1437,1438,1450],{},[815,1439,1440],{},[818,1441,1442,1445,1447],{},[821,1443,1444],{},"Case",[821,1446,954],{},[821,1448,1449],{},"Fix",[830,1451,1452,1463,1474],{},[818,1453,1454,1457,1460],{},[835,1455,1456],{},"MP4 with H.265\u002FHEVC inside",[835,1458,1459],{},"Old players show a black screen",[835,1461,1462],{},"Convert to H.264 or switch players",[818,1464,1465,1468,1471],{},[835,1466,1467],{},"WebM with AV1 inside",[835,1469,1470],{},"No hardware decode support",[835,1472,1473],{},"Convert to H.264\u002FVP9",[818,1475,1476,1479,1482],{},[835,1477,1478],{},"Big HD direct link",[835,1480,1481],{},"Browser memory pressure",[835,1483,1484],{},"See the next section",[800,1486,1487,1488,1492,1493,903],{},"When detecting and downloading direct links, FlowPick reads the codec info. If the codec really is the problem, use ",[884,1489,1491],{"href":1490},"\u002Fdocs\u002Ffeatures\u002Fformat-conversion#output-format-selection-guide","Format Conversion — Output Format Selection Guide"," to convert to a more compatible H.264 MP4. To find out what your player actually supports, see ",[884,1494,91],{"href":92},[804,1496,1498],{"id":1497},"symptom-7-large-file-or-browser-hang","Symptom 7: Large file or browser hang",[800,1500,1501,1503],{},[881,1502,954],{},": A few hundred MB direct link freezes the page halfway through, or the browser gets noticeably sluggish after the download.",[800,1505,1506,1507,1510,1511,1515,1516,903],{},"Saving a file in the browser goes through memory. FlowPick prefers the ",[881,1508,1509],{},"File System Access API"," (pick a directory, stream straight to disk, no memory cost), and falls back to StreamSaver or Blob when it's unavailable. Blob mode has to load the entire file into memory first, so large files can hang. For the concrete hard limits of Blob mode, see ",[884,1512,1514],{"href":1513},"\u002Fdocs\u002Ftroubleshooting\u002Fknown-issues#blob-mode-hard-limit","Known Issues — Blob Mode Hard Limit","; for the corresponding known bug, see ",[884,1517,1519],{"href":1518},"\u002Fdocs\u002Ftroubleshooting\u002Fknown-issues#large-file-blob-download-may-hang","Known Issues — Large File Blob Download May Hang",[800,1521,1522],{},"What to do:",[964,1524,1525,1531,1534],{},[915,1526,1527,1530],{},[881,1528,1529],{},"Prefer \"Choose save directory\""," — it triggers the File System Access API, so even large files stream to disk.",[915,1532,1533],{},"On browsers without that button (or on mobile), switch to a lower quality before downloading.",[915,1535,1536],{},"For genuinely huge files, download that one alone — don't run a pile of downloads at once.",[804,1538,1540],{"id":1539},"diagnostics-cheat-sheet","Diagnostics cheat sheet",[800,1542,1543,1544,1547],{},"Open DevTools with ",[985,1545,1546],{},"F12"," and locate the problem with this table:",[812,1549,1550,1563],{},[815,1551,1552],{},[818,1553,1554,1557,1560],{},[821,1555,1556],{},"What you want to confirm",[821,1558,1559],{},"Panel",[821,1561,1562],{},"How",[830,1564,1565,1584,1598,1609],{},[818,1566,1567,1570,1573],{},[835,1568,1569],{},"What the direct-link request returned",[835,1571,1572],{},"Network",[835,1574,1575,1576,1579,1580,1583],{},"Filter ",[985,1577,1578],{},"mp4"," \u002F ",[985,1581,1582],{},"webm",", check the Status column",[818,1585,1586,1589,1591],{},[835,1587,1588],{},"Whether it actually returned a video",[835,1590,1572],{},[835,1592,1593,1594,1207,1596],{},"Check whether the response's ",[985,1595,1203],{},[985,1597,1309],{},[818,1599,1600,1603,1606],{},[835,1601,1602],{},"Whether Referer\u002FCookie were attached",[835,1604,1605],{},"Network → request → Headers",[835,1607,1608],{},"Check the Request Headers",[818,1610,1611,1614,1616],{},[835,1612,1613],{},"Whether the CDN is throttling you",[835,1615,1572],{},[835,1617,1618],{},"Check a single request's time and speed",[800,1620,1621],{},[935,1622],{"alt":1623,"src":1624},"DevTools diagnostics","\u002Fscreenshots\u002Fdev-console.png",[800,1626,1627],{},"If you suspect a browser environment problem, run this in the Console to generate an environment report and paste it when reporting feedback:",[999,1629,1633],{"className":1630,"code":1631,"language":1632,"meta":1004,"style":1004},"language-javascript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","const report = {\n  ua: navigator.userAgent,\n  fsa: 'showDirectoryPicker' in window,\n  sab: typeof SharedArrayBuffer !== 'undefined',\n  coi: self.crossOriginIsolated,\n  storage: await navigator.storage?.estimate().catch(() => null),\n  ts: new Date().toISOString(),\n}\nconsole.log(JSON.stringify(report, null, 2))\n","javascript",[985,1634,1635,1640,1645,1650,1655,1660,1665,1670,1676],{"__ignoreMap":1004},[1008,1636,1637],{"class":1010,"line":1011},[1008,1638,1639],{},"const report = {\n",[1008,1641,1642],{"class":1010,"line":1018},[1008,1643,1644],{},"  ua: navigator.userAgent,\n",[1008,1646,1647],{"class":1010,"line":1056},[1008,1648,1649],{},"  fsa: 'showDirectoryPicker' in window,\n",[1008,1651,1652],{"class":1010,"line":1063},[1008,1653,1654],{},"  sab: typeof SharedArrayBuffer !== 'undefined',\n",[1008,1656,1657],{"class":1010,"line":1069},[1008,1658,1659],{},"  coi: self.crossOriginIsolated,\n",[1008,1661,1662],{"class":1010,"line":1093},[1008,1663,1664],{},"  storage: await navigator.storage?.estimate().catch(() => null),\n",[1008,1666,1667],{"class":1010,"line":1108},[1008,1668,1669],{},"  ts: new Date().toISOString(),\n",[1008,1671,1673],{"class":1010,"line":1672},8,[1008,1674,1675],{},"}\n",[1008,1677,1679],{"class":1010,"line":1678},9,[1008,1680,1681],{},"console.log(JSON.stringify(report, null, 2))\n",[800,1683,1684],{},"The report contains only browser environment info — no browsing history or personal data.",[804,1686,1688],{"id":1687},"when-it-really-cant-be-downloaded","When it really can't be downloaded",[964,1690,1691,1697,1703,1709],{},[915,1692,1693,1696],{},[881,1694,1695],{},"DRM protection",": content encrypted with Widevine \u002F PlayReady \u002F FairPlay — FlowPick explicitly doesn't support it and doesn't crack it.",[915,1698,1699,1702],{},[881,1700,1701],{},"Login or paywall",": content whose direct-link URL only exists after logging in or paying.",[915,1704,1705,1708],{},[881,1706,1707],{},"Private APIs",": video data goes through a proprietary protocol or in-app signing, with no ordinary direct link.",[915,1710,1711,1714],{},[881,1712,1713],{},"Permanently dead URLs",": the origin has deleted the file.",[800,1716,1717,1718,1721,1722,903],{},"These are ",[881,1719,1720],{},"unsupported by design",", not bugs. When you hit one, switch approaches: record the screen or contact the content owner for authorization. For the full boundary list, see ",[884,1723,1724],{"href":151},"Known Issues",[804,1726,1728],{"id":1727},"related-documentation","Related Documentation",[964,1730,1731,1738,1743,1748,1753,1758,1763],{},[915,1732,1733,1737],{},[884,1734,1736],{"href":1735},"\u002Fvideo-downloader","Video Downloader"," — online tool, good for direct links without hotlink protection",[915,1739,1740,1742],{},[884,1741,902],{"href":901}," — detection principles and format scope",[915,1744,1745,1747],{},[884,1746,886],{"href":161}," — segment-stream-specific issues",[915,1749,1750,1752],{},[884,1751,892],{"href":165}," — MPD separate audio\u002Fvideo tracks",[915,1754,1755,1757],{},[884,1756,60],{"href":61}," — transcode when the codec isn't supported",[915,1759,1760,1762],{},[884,1761,1724],{"href":151}," — Blob hard limits, CORS, and other boundaries",[915,1764,1765,1768],{},[884,1766,1767],{"href":147},"Common Issues"," — cross-scenario diagnosis",[1770,1771,1772],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .sHwdD, html code.shiki .sHwdD{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#546E7A;--shiki-default-font-style:italic;--shiki-dark:#676E95;--shiki-dark-font-style:italic}html pre.shiki code .sBMFI, html code.shiki .sBMFI{--shiki-light:#E2931D;--shiki-default:#FFCB6B;--shiki-dark:#FFCB6B}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sbssI, html code.shiki .sbssI{--shiki-light:#F76D47;--shiki-default:#F78C6C;--shiki-dark:#F78C6C}",{"title":1004,"searchDepth":1018,"depth":1018,"links":1774},[1775,1776,1777,1778,1779,1780,1781,1782,1783,1784,1785,1786],{"id":806,"depth":1018,"text":807},{"id":906,"depth":1018,"text":907},{"id":948,"depth":1018,"text":949},{"id":1134,"depth":1018,"text":1135},{"id":1218,"depth":1018,"text":1219},{"id":1253,"depth":1018,"text":1254},{"id":1325,"depth":1018,"text":1326},{"id":1415,"depth":1018,"text":1416},{"id":1497,"depth":1018,"text":1498},{"id":1539,"depth":1018,"text":1540},{"id":1687,"depth":1018,"text":1688},{"id":1727,"depth":1018,"text":1728},"Troubleshoot direct video downloads that return 403, 404, CORS errors, empty files, unsupported formats, or no resume support, with curl diagnostics.","md",{"date":1790,"lastModified":1790},"2026-08-17",{"icon":141},{"title":1793,"description":1787},"Direct Video Download Failed: MP4 and WebM Troubleshooting | FlowPick","IPCG5qg2mWDdI0ZyxHZiYlL2aews5ahimM23Us_CXgE",[1796,1798],{"title":164,"path":165,"stem":166,"description":1797,"icon":141,"children":-1},"Fix missing audio after downloading an MPD or MPEG-DASH stream. Covers separate tracks, missing manifest entries, CORS, DRM, and incomplete manifests.",{"title":178,"path":179,"stem":180,"description":1799,"icon":181,"children":-1},"How to contribute code, documentation, or report issues for the FlowPick project.",1787670536867]