FAQ

High-frequency questions and answers for FlowPick usage, covering installation, download, format conversion, and troubleshooting scenarios.

This document collects the most frequently asked questions during FlowPick usage. If your issue isn't listed here, please refer to Common Issues Troubleshooting or provide feedback via GitHub Issues.


Quick Navigation

CategoryQuestion CountJump To
Installation & Setup4Installation & Setup
Media Detection3Media Detection
Download-Related5Download-Related
Format Conversion3Format Conversion
Privacy & Security3Privacy & Security
Technical Questions3Technical Questions
Other Questions4Other Questions

Installation & Setup

Is FlowPick free?

Yes, FlowPick is completely free with no paid features or subscription plans. The project code is open source on GitHub.

For open-source license and contribution methods, see Contributing Guide.

Why does the extension need "Read and change website data" permission?

FlowPick needs to monitor network requests to detect media resources on pages. This permission is only used for:

  • Monitoring network requests from browser to identify video, audio, and image URLs
  • Initiating download requests when user actively clicks download

FlowPick doesn't collect, upload, or share your browsing data.

For all permissions requested by extension and their specific purposes, see Privacy & Security — Permission Explanation. For extension installation steps, see Installation Guide.

Can I use it on Firefox?

Firefox extension version is under development. Currently you can use online tools on Firefox (/m3u8-downloader, /dash-downloader), but functionality limited by Firefox's support for File System Access API and SharedArrayBuffer.

For complete feature support matrix across browsers, see Browser Compatibility — Feature Support Matrix. For online tool usage, see Online Tools.

How do I update to latest version?

Chrome/Edge extensions auto-update. You can also manually check for updates:

  1. Open chrome://extensions (Edge: edge://extensions)
  2. Enable "Developer mode" in top-right corner
  3. Click "Update" button


Media Detection

Why can't video on page be detected?

Most common causes and solutions:

  1. Page hasn't loaded media yet: Play video for a few seconds first, then refresh page and reopen FlowPick
  2. Extension activated after page loaded: Refresh page so extension re-monitors network requests
  3. Website uses MSE dynamic loading: Some websites push data dynamically via Media Source Extensions; may not be detectable through regular network request monitoring
  4. Media in iframe: Media in cross-origin iframes may not be detectable
For complete media detection troubleshooting flow (including diagnostic steps and common cause table), see Common Issues Troubleshooting — Media Detection Issues. For HLS/DASH detection technical principles, see Video Sniffing.

Too many files detected, how to filter?

Use filtering features in FlowPick popup:

  • Type filter: Switch between Video/Audio/Image tabs
  • Size filter: Set minimum file size to exclude thumbnails and small icons
  • Format filter: Filter by file extension (e.g., show only .mp4)

For detailed filter configuration documentation, see Configuration Reference — Filter Settings. For image download filtering tips, see Image Download.

Why does same video appear multiple times?

Streaming typically contains multiple quality versions (e.g., 720p, 1080p, 4K); each version displays as separate entry. Select desired quality to download. If using M3U8 stream with Master Playlist, FlowPick shows quality list for selection.

For distinction between Master Playlist and Media Playlist, see Video Sniffing — HLS Streams. For quality selection practical scenarios, see Online Course Download.

What to do about slow download speed?

Factors affecting download speed and optimization suggestions:

FactorOptimization Method
Concurrent thread count too lowIncrease to 4-6 in settings
CDN throttlingReduce concurrency to avoid triggering rate limiting
Insufficient network bandwidthClose other bandwidth-consuming apps
Segment server far awayCannot optimize; depends on streaming service provider
For complete slow download diagnostic flow (including decision tree), see Common Issues Troubleshooting — Slow Download Speed. For relationship between concurrency and performance analysis, see Download Engine Architecture — Concurrency vs Performance.

Downloaded file won't play?

Troubleshoot with these steps:

  1. Check file size: If file significantly smaller than expected (e.g., only few KB), download incomplete
  2. Check format: Confirm player supports format (TS format requires VLC or PotPlayer)
  3. Check encryption: If encrypted stream key fetch fails, file cannot be decrypted
  4. Try remuxing: Convert TS to MP4 before playing
For complete file unplayable diagnosis steps (including VLC repair feature), see Common Issues Troubleshooting — File Won't Play After Download. For TS and MP4 format player compatibility, see Format Conversion — Output Format Selection.

Can I download multiple files simultaneously?

Yes. Check multiple resources in popup and click "Download Selected"; they will download sequentially one by one.

For batch download queue management, concurrency control, and status management, see Batch Download. For batch image download scenarios, see Image Gallery Batch Download.

Can I resume interrupted downloads?

Current version doesn't support resumable downloads. If download interrupted:

  • Already downloaded segment data will be lost
  • Need to restart download from beginning
  • Recommend using stable network environment for large file downloads

Why No Resumable Downloads?

Resumable downloads require persisting downloaded segment data to disk and continuing from breakpoint on recovery. This faces two main challenges in browser environment:

  1. Storage limitations: Browser storage (IndexedDB) has quota limits; cannot reliably store GB-level segment data
  2. Segment URL expiration: Streaming segment URLs usually contain time-sensitive tokens; even short interruption causes token expiration, preventing remaining segments from downloading even if resumed
For typical time windows of segment URL expiration, see Known Limitations — Segment URL Expiration. For download engine retry mechanism, see Download Engine Architecture — Retry Mechanism.

Where are downloaded files saved?

Depends on browser settings and selected save method:

  • Chrome default: Browser's default download directory (usually "Downloads" folder)
  • Select directory mode: Folder specified through directory picker
  • Ask every time: Save dialog pops up each time you download
For File System Access API directory selection functionality and permission persistence, see Download Engine Architecture — File Write Module. For save method support across browsers, see Browser Compatibility — Feature Support Matrix.

Format Conversion

What's the difference between TS and MP4?

FeatureTSMP4
Full NameMPEG Transport StreamMPEG-4 Part 14
Designed ForStreaming transmissionLocal storage and playback
Playback CompatibilityRequires professional players like VLC/PotPlayerAlmost all players supported
File SizeSlightly larger (includes transport overhead)Slightly smaller
Download SpeedFast (no remuxing needed)Slow (requires FFmpeg processing)

Recommendation: If player supports TS format, selecting TS output skips remuxing step for faster downloads.

For distinction between containers and codecs, see Format Conversion — Containers & Codecs. For distinction between remuxing and transcoding, see Known Limitations — Unsupported Conversions.

Why does remuxing take a long time?

FFmpeg runs as WebAssembly in browser; performance approximately 10-20% of native version. Influencing factors:

  • File size: Larger files remux slower
  • SharedArrayBuffer: Only single-thread operation when unavailable
  • CPU performance: WASM execution speed depends on device CPU
For performance comparison data between FFmpeg WASM and native version, see Known Limitations — FFmpeg WASM Performance. For SharedArrayBuffer configuration requirements, see Browser Compatibility — Advanced APIs.

What to do when remuxing fails?

Common causes and solutions:

  1. FFmpeg load failure: Refresh page and retry, check network connection
  2. Insufficient memory: Close other tabs, reduce concurrency
  3. Source file corrupted: Some segments downloaded incompletely, try re-downloading
  4. Unsupported codec: FlowPick only does container conversion; unsupported codec formats cannot be processed
For FFmpeg WASM loading flow and first-load time breakdown, see Known Limitations — Slow First FFmpeg Load. For merge process stuck troubleshooting, see Common Issues Troubleshooting — Merge Process Stuck.

Privacy & Security

Does FlowPick collect my data?

No. All processing by FlowPick completes locally in your browser:

  • Media detection happens inside extension; no data uploaded
  • File downloads directly from source server to your disk
  • No backend servers, no user account system
  • Google Analytics used only for anonymous visit statistics (can be blocked by ad blockers)
For complete privacy protection documentation (including permission purposes, data processing flow, security architecture), see Privacy & Security. For full privacy policy text, see Privacy Policy.

FlowPick is a tool that neither judges nor restricts what you download. Please follow these principles:

  • Only download content you have right to access and use
  • Comply with website terms of service
  • Use downloaded content for personal fair use only
  • Don't use downloaded content for commercial purposes or redistribution

Are online tools safe?

All processing for online tools (/m3u8-downloader, /dash-downloader) also completes locally in browser:

  • Pasted URLs aren't sent to any server
  • Downloaded data transfers directly from source server to your disk
  • FFmpeg runs in browser; files not uploaded
For functional differences and security model between online tools and extension, see Online Tools.

Technical Questions

What is SharedArrayBuffer, why is it needed?

SharedArrayBuffer is a JavaScript object allowing multiple threads to share memory. FFmpeg WASM uses it to implement multithreaded parallel processing, significantly improving remuxing speed.

For security reasons (Spectre vulnerability mitigation), browsers require website to set specific HTTP response headers to use SharedArrayBuffer. If headers aren't set, FFmpeg automatically degrades to single-thread mode.

For SharedArrayBuffer browser support details and server-side configuration during self-deployment, see Browser Compatibility — Advanced APIs. For single-thread vs multi-thread performance difference, see Format Conversion — Multithreading Mode.

Why do online tools require pasting URL instead of auto-detecting?

Browser extensions can monitor network requests, but ordinary web pages restricted by same-origin policy cannot access other tabs' network request data. Online tools run as ordinary web pages, requiring you to manually provide streaming URL.

How to Get Streaming URL?

  1. Press F12 to open Developer Tools
  2. Switch to Network panel
  3. Type m3u8 or mpd in filter box
  4. Play video, observe appearing requests
  5. Right-click M3U8/MPD request → Copy → Copy link address

For complete online tool usage flow, see Online Tools. For CORS cross-origin restriction technical principles, see Known Limitations — CORS Cross-Origin Restrictions.

What's the difference between extension version and online tools?

FeatureExtension VersionOnline Tools
Auto-detect mediaSupportedNot Supported
CORS restrictionsNot restrictedRestricted
Installation requiredNeed install extensionNo installation needed
Ease of useOne-click detect & downloadManually obtain URL needed
Use caseDaily usageTemporary use, environments where extension can't be installed
For detailed functional differences and selection recommendations between extension and online tools, see Online Tools — Comparison with Extension. For extension installation steps, see Installation Guide.

Other Questions

Is this project open source?

Yes, FlowPick is open source on GitHub. You can view source code, submit issues, or contribute code.

For how to participate in project contribution, see Contributing Guide.

How do I report bugs?

Submit bug reports via GitHub Issues, please include:

  • Browser type and version
  • Operating system
  • Issue description and reproduction steps
  • Console error log (F12 → Console)
  • Relevant streaming URL (if publicly accessible)
For how to generate diagnostic report (including one-click copy script), see Common Issues Troubleshooting — Generate Diagnostic Report. Recommend checking Known Limitations before submitting issue to confirm if already documented known limitation.

How do I request new features?

Submit feature requests via GitHub Issues, please describe:

  • Feature you want implemented
  • Use case
  • Expected behavior

Can I self-deploy the online tools?

Yes. FlowPick is a Nuxt application; you can clone repository and build/deploy yourself. Note:

  • Deployment environment must configure COEP/COOP response headers to enable FFmpeg multithreading
  • StreamSaver.js's mitm.html and Service Worker must be correctly deployed
  • Recommend using Cloudflare Pages or Vercel or similar platforms supporting custom response headers
For complete self-deployment steps and server-side configuration requirements, see Installation Guide — Self-Deployment. For HTTP response header configuration required by SharedArrayBuffer, see Browser Compatibility — Advanced APIs.