[{"data":1,"prerenderedAt":1033},["ShallowReactive",2],{"blog-zh-Hans-is-it-legal-to-download-streaming-video":3,"blog-zh-Hans-is-it-legal-to-download-streaming-video-surround":1020},{"id":4,"title":5,"author":6,"body":7,"category":1001,"date":1002,"description":1003,"extension":1004,"image":1005,"lastModified":1002,"meta":1006,"navigation":1007,"path":1008,"readingTime":1009,"seo":1010,"stem":1011,"tags":1012,"__hash__":1019},"blog_zh_Hans\u002Fzh-Hans\u002Fblog\u002Fis-it-legal-to-download-streaming-video.md","流媒体下载到底合不合法？一份技术和法律清单","FlowPick 团队",{"type":8,"value":9,"toc":975},"minimark",[10,14,17,20,24,27,32,35,46,67,70,109,122,129,133,155,162,166,177,347,353,357,360,373,376,380,391,394,397,400,406,409,419,427,433,436,442,448,453,464,469,472,482,488,491,494,500,506,509,512,518,521,524,549,553,556,561,582,587,602,605,611,614,620,626,632,638,649,655,661,667,673,676,679,740,743,747,750,753,767,773,777,780,800,803,806,820,823,826,877,880,894,897,912,915,918,971],[11,12,13],"p",{},"每隔几周就有人发邮件问 FlowPick 客服：为什么不做 Netflix\u002FDisney+\u002FHBO Max 支持？短答：因为在几乎每个司法管辖区都违法，而告诉你\"这是 DRM\"的技术信号就在清单里。",[11,15,16],{},"这篇是长答。不是\"咨询律师\"那种含糊话——是你真能查的信号、真适用的法律，以及 FlowPick 对做与不做的实际决策。",[11,18,19],{},"我是开发者，不是律师。这是基于 2026 年法律实际运作的通用指引，不是针对你具体情况的法律建议。",[21,22,23],"h2",{"id":23},"技术信号",[11,25,26],{},"任何法律问题之前，先有技术信号告诉你面对的是哪种内容。这些在浏览器 DevTools 的 Network 面板里就能查。",[28,29,31],"h3",{"id":30},"信号-1清单里的-drm-标记","信号 1：清单里的 DRM 标记",[11,33,34],{},"HLS：",[36,37,42],"pre",{"className":38,"code":40,"language":41},[39],"language-text","#EXT-X-KEY:METHOD=SAMPLE-AES,URI=\"skd:\u002F\u002Fdrm.example.com\u002Fkey\"\n","text",[43,44,40],"code",{"__ignoreMap":45},"",[11,47,48,51,52,55,56,59,60,62,63,66],{},[43,49,50],{},"METHOD=SAMPLE-AES","（不是 ",[43,53,54],{},"AES-128","）是 FairPlay DRM。",[43,57,58],{},"skd:\u002F\u002F"," URI scheme 是判别特征——那是苹果 FairPlay 的密钥 URL scheme。真正的 ",[43,61,54],{}," 用 ",[43,64,65],{},"https:\u002F\u002F","，返回裸 16 字节密钥。",[11,68,69],{},"DASH：",[36,71,75],{"className":72,"code":73,"language":74,"meta":45,"style":45},"language-xml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003CContentProtection\n  schemeIdUri=\"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed\"\n  value=\"Widevine\">\n  \u003Ccenc:pssh>...\u003C\u002Fcenc:pssh>\n\u003C\u002FContentProtection>\n","xml",[43,76,77,85,91,97,103],{"__ignoreMap":45},[78,79,82],"span",{"class":80,"line":81},"line",1,[78,83,84],{},"\u003CContentProtection\n",[78,86,88],{"class":80,"line":87},2,[78,89,90],{},"  schemeIdUri=\"urn:uuid:edef8ba9-79d6-4ace-a3c8-27dcd51d21ed\"\n",[78,92,94],{"class":80,"line":93},3,[78,95,96],{},"  value=\"Widevine\">\n",[78,98,100],{"class":80,"line":99},4,[78,101,102],{},"  \u003Ccenc:pssh>...\u003C\u002Fcenc:pssh>\n",[78,104,106],{"class":80,"line":105},5,[78,107,108],{},"\u003C\u002FContentProtection>\n",[11,110,111,112,117,118,121],{},"UUID 标识 DRM 系统（完整列表看 ",[113,114,116],"a",{"href":115},"\u002Fzh-Hans\u002Fblog\u002Fdash-mpd-deep-dive-segmenttemplate-contentprotection","DASH 深度篇","）。",[43,119,120],{},"ContentProtection"," 出现且 UUID 是已知 DRM 系统，就是 DRM 内容。",[11,123,124,128],{},[125,126,127],"strong",{},"看到这些信号，下载在多数司法管辖区违法","——看下面法律部分。",[28,130,132],{"id":131},"信号-2http-头","信号 2：HTTP 头",[36,134,138],{"className":135,"code":136,"language":137,"meta":45,"style":45},"language-http shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","Content-Protection: drm\nContent-Protection-System: Widevine\nX-Licence-Url: https:\u002F\u002Fdrm.example.com\u002Flicence\n","http",[43,139,140,145,150],{"__ignoreMap":45},[78,141,142],{"class":80,"line":81},[78,143,144],{},"Content-Protection: drm\n",[78,146,147],{"class":80,"line":87},[78,148,149],{},"Content-Protection-System: Widevine\n",[78,151,152],{"class":80,"line":93},[78,153,154],{},"X-Licence-Url: https:\u002F\u002Fdrm.example.com\u002Flicence\n",[11,156,157,158,161],{},"有的平台加私有头。非标准，但看到 ",[43,159,160],{},"Content-Protection"," 或类似的，按 DRM 内容处理。",[28,163,165],{"id":164},"信号-3页面里的-eme","信号 3：页面里的 EME",[11,167,168,169,172,173,176],{},"打开 DevTools，console 里搜 ",[43,170,171],{},"MediaKeys"," 或 ",[43,174,175],{},"encrypted","：",[36,178,182],{"className":179,"code":180,"language":181,"meta":45,"style":45},"language-js shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u002F\u002F 在页面 console 里：\nconst videos = document.querySelectorAll('video')\nvideos.forEach(v => {\n  v.mediaKeys ? console.log('DRM 保护') : console.log('无 DRM')\n  v.onencrypted = () => console.log('Encrypted 事件触发')\n})\n","js",[43,183,184,190,229,251,305,339],{"__ignoreMap":45},[78,185,186],{"class":80,"line":81},[78,187,189],{"class":188},"sHwdD","\u002F\u002F 在页面 console 里：\n",[78,191,192,196,200,204,207,210,214,217,220,224,226],{"class":80,"line":87},[78,193,195],{"class":194},"spNyl","const",[78,197,199],{"class":198},"sTEyZ"," videos ",[78,201,203],{"class":202},"sMK4o","=",[78,205,206],{"class":198}," document",[78,208,209],{"class":202},".",[78,211,213],{"class":212},"s2Zo4","querySelectorAll",[78,215,216],{"class":198},"(",[78,218,219],{"class":202},"'",[78,221,223],{"class":222},"sfazB","video",[78,225,219],{"class":202},[78,227,228],{"class":198},")\n",[78,230,231,234,236,239,241,245,248],{"class":80,"line":93},[78,232,233],{"class":198},"videos",[78,235,209],{"class":202},[78,237,238],{"class":212},"forEach",[78,240,216],{"class":198},[78,242,244],{"class":243},"sHdIc","v",[78,246,247],{"class":194}," =>",[78,249,250],{"class":202}," {\n",[78,252,253,256,258,261,264,267,269,272,275,277,280,282,285,288,290,292,294,296,298,301,303],{"class":80,"line":99},[78,254,255],{"class":198},"  v",[78,257,209],{"class":202},[78,259,260],{"class":198},"mediaKeys",[78,262,263],{"class":202}," ?",[78,265,266],{"class":198}," console",[78,268,209],{"class":202},[78,270,271],{"class":212},"log",[78,273,216],{"class":274},"swJcz",[78,276,219],{"class":202},[78,278,279],{"class":222},"DRM 保护",[78,281,219],{"class":202},[78,283,284],{"class":274},") ",[78,286,287],{"class":202},":",[78,289,266],{"class":198},[78,291,209],{"class":202},[78,293,271],{"class":212},[78,295,216],{"class":274},[78,297,219],{"class":202},[78,299,300],{"class":222},"无 DRM",[78,302,219],{"class":202},[78,304,228],{"class":274},[78,306,307,309,311,314,317,320,322,324,326,328,330,332,335,337],{"class":80,"line":105},[78,308,255],{"class":198},[78,310,209],{"class":202},[78,312,313],{"class":212},"onencrypted",[78,315,316],{"class":202}," =",[78,318,319],{"class":202}," ()",[78,321,247],{"class":194},[78,323,266],{"class":198},[78,325,209],{"class":202},[78,327,271],{"class":212},[78,329,216],{"class":274},[78,331,219],{"class":202},[78,333,334],{"class":222},"Encrypted 事件触发",[78,336,219],{"class":202},[78,338,228],{"class":274},[78,340,342,345],{"class":80,"line":341},6,[78,343,344],{"class":202},"}",[78,346,228],{"class":198},[11,348,349,352],{},[43,350,351],{},"video.mediaKeys"," 非 null，页面就在用 Encrypted Media Extensions——也就是 DRM。",[28,354,356],{"id":355},"信号-4服务条款","信号 4：服务条款",[11,358,359],{},"多数平台的 ToS 明确禁止下载。这不是技术信号，但法律上重要。例子：",[361,362,363,367,370],"ul",{},[364,365,366],"li",{},"YouTube ToS：\"You shall not download any Content unless you see a 'download' or similar link displayed by YouTube.\"",[364,368,369],{},"Netflix ToS：\"You may not... download, copy or otherwise capture any of the Content.\"",[364,371,372],{},"Vimeo ToS：除非上传者明确启用，否则禁止下载。",[11,374,375],{},"没有 DRM 也一样，违反 ToS 可能构成合同违约。",[28,377,379],{"id":378},"信号-5没-drm-不等于可以下","信号 5：没 DRM 不等于\"可以下\"",[11,381,382,383,386,387,390],{},"流可能未加密但仍有版权。技术上没 DRM 意味着你",[125,384,385],{},"能","下；不代表你",[125,388,389],{},"可以","。法律部分细说。",[21,392,393],{"id":393},"法律框架",[28,395,396],{"id":396},"美国",[11,398,399],{},"两部相关法律：",[11,401,402,405],{},[125,403,404],{},"DMCA §1201（反规避）"," — 规避技术保护措施违法。内容有 DRM，下载它（要绕 DRM）即使你有有效订阅也违法。个人每次违规罚款 200-2500 美元，商业用途最高 100 万美元。",[11,407,408],{},"这是大头。DMCA §1201 不管合理使用，不管你买没买，不管是不是个人用。绕 DRM 就违法。法院反复确认这点。",[11,410,411,414,415,418],{},[125,412,413],{},"版权法 §106"," — 给版权人复制、发行等独占权。下载是复制。是否",[125,416,417],{},"侵权","取决于：",[361,420,421,424],{},[364,422,423],{},"合理使用（§107）— 转化性、非商业、事实性 vs 创造性、市场影响",[364,425,426],{},"是否有 license（订阅可能含也可能不含下载权——查 ToS）",[11,428,429,432],{},[125,430,431],{},"实操规则："," 非 DRM 内容 + 个人使用 + 你有合法访问权 = 通常没事。DRM 内容 = 不论用途都违法。",[28,434,435],{"id":435},"欧盟",[11,437,438,441],{},[125,439,440],{},"InfoSoc 指令（2001\u002F29\u002FEC）第 6 条"," — 类似 DMCA §1201。反规避技术保护措施。成员国实施有差异但实质相同。",[11,443,444,447],{},[125,445,446],{},"DSM 指令（2019\u002F790）第 17 条"," — 平台对用户上传内容的责任。不直接管下载但影响生态。",[11,449,450],{},[125,451,452],{},"国别差异：",[361,454,455,458,461],{},[364,456,457],{},"德国：从\"明显非法\"来源做个人复制本身违法（§53 UrhG）。什么算\"明显非法\"有争议。",[364,459,460],{},"法国：Hadopi\u002FHADOPI 法——版权侵权的分级响应。三振后罚款和断网。",[364,462,463],{},"英国：跟欧盟类似但脱欧后有差异；CDPA 1988 + 修订。",[11,465,466,468],{},[125,467,431],{}," 跟美国一样。DRM = 违法。非 DRM 个人用 = 通常没事但有国别差异。",[28,470,471],{"id":471},"日本",[11,473,474,477,478,481],{},[125,475,476],{},"著作权法第 30 条"," — 个人复制允许，",[125,479,480],{},"但","\"明知该复制会不当损害著作权人利益的除外\"。翻译：从合法源下载没事；从盗版源下载不行。",[11,483,484,487],{},[125,485,486],{},"第 120-2 条"," — 下载非法分发的内容是刑事犯罪。日本比大多数地方严——可能坐牢。",[11,489,490],{},"绕 DRM 在反不正当竞争法下也违法。",[28,492,493],{"id":493},"中国",[11,495,496,499],{},[125,497,498],{},"著作权法第 10 条"," — 复制权。第 22 条的个人使用豁免很窄。",[11,501,502,505],{},[125,503,504],{},"信息网络传播权保护条例（2006）"," — WIPO 互联网条约的实施。有反规避条款。",[11,507,508],{},"实操：选择性执法。B 站和爱奇艺的流未加密，被中国用户大量下载；对个人下载者的法律行动少见。公司偶尔针对工具开发者。",[28,510,511],{"id":511},"韩国",[11,513,514,517],{},[125,515,516],{},"著作权法第 30-2 条"," — 个人使用\"少量\" copyrighted works 允许。分发规避工具违法（第 124 条）。",[28,519,520],{"id":520},"实操小结",[11,522,523],{},"每个主要司法管辖区：",[361,525,526,532,538,544],{},[364,527,528,531],{},[125,529,530],{},"DRM 内容","：下就违法，没商量。",[364,533,534,537],{},[125,535,536],{},"非 DRM 内容个人用、有合法访问权","：通常没事，有国别差异。",[364,539,540,543],{},[125,541,542],{},"非 DRM 内容再分发","：哪里都违法。",[364,545,546,543],{},[125,547,548],{},"分发规避工具",[21,550,552],{"id":551},"flowpick-在哪里划线","FlowPick 在哪里划线",[11,554,555],{},"FlowPick 的策略，我认为对任何下载工具都是对的：",[11,557,558],{},[125,559,560],{},"会下载：",[361,562,563,570,576,579],{},[364,564,565,566,569],{},"不含 ",[43,567,568],{},"EXT-X-KEY:METHOD=SAMPLE-AES"," 的 HLS 流",[364,571,572,573,575],{},"不含已知 DRM 系统的 ",[43,574,120],{}," 的 DASH 流",[364,577,578],{},"直链视频文件 URL（MP4、WebM 等）",[364,580,581],{},"音频和图片资源",[11,583,584],{},[125,585,586],{},"拒绝下载：",[361,588,589,594,599],{},[364,590,591,593],{},[43,592,50],{}," 的 HLS",[364,595,596,598],{},[43,597,120],{}," 引用 Widevine\u002FPlayReady\u002FFairPlay 的 DASH",[364,600,601],{},"EME API 正在加密流的内容",[11,603,604],{},"拒绝不是\"我们没搞定\"——是明确策略。FlowPick 的检测代码解析这些信号，遇到就主动失败。这就是为什么\"FlowPick 下不了这个\"是特性不是 bug。",[11,606,607,610],{},[125,608,609],{},"我的看法："," 承诺\"任何网站都能下\"的下载工具要么在撒谎要么在违法。诚实的姿态是：\"非 DRM 的我们都能下，DRM 的我们碰都不碰。\"声称能做到的工具要么是骗局、要么是恶意软件，要么在会被关停的法律灰色地带运营。",[21,612,613],{"id":613},"具体平台指南",[11,615,616,619],{},[125,617,618],{},"YouTube","：大多非 DRM。ToS 禁止下载，但技术信号缺失。很多用户为了离线看、归档等下 YouTube。FlowPick 能搞 YouTube（在浏览器加载页面时）。YouTube 下载是否合理使用，法院两边都判过——一般个人\u002F非商业用是被容忍的。",[11,621,622,625],{},[125,623,624],{},"Netflix、Disney+、HBO Max、Apple TV+","：全 DRM（Widevine\u002FPlayReady\u002FFairPlay，看平台）。下载在 DMCA §1201 和同等法规下违法。FlowPick 拒绝。",[11,627,628,631],{},[125,629,630],{},"Vimeo","：因视频而异。部分视频上传者启用\"Download\"按钮——那些没问题。其他没有的——ToS 禁止下载。",[11,633,634,637],{},[125,635,636],{},"Twitch VOD","：大多非 DRM。ToS 禁止但个人用执法罕见。",[11,639,640,643,644,648],{},[125,641,642],{},"Bilibili","：大多非 DRM。ToS 禁止但平台实操上宽松。FlowPick 能搞 B 站——见 ",[113,645,647],{"href":646},"\u002Fzh-Hans\u002Fblog\u002Fhow-to-download-bilibili-videos","B 站教程","。",[11,650,651,654],{},[125,652,653],{},"Udemy、Coursera、edX 付费课","：混杂。DRM 课碰不得。非 DRM 课你付了费技术上违反 ToS 但个人使用下法律上站得住。",[11,656,657,660],{},[125,658,659],{},"Patreon","：大多非 DRM。你付了访问费；个人用下载通常没事。",[11,662,663,666],{},[125,664,665],{},"企业 LMS（企业培训视频）","：技术上常非 DRM，但 ToS 违约和雇佣后果才是真风险。雇主的内容，跟他们确认。",[11,668,669,672],{},[125,670,671],{},"Pornhub、OnlyFans","：ToS 禁止下载。DRM 因视频而异。OnlyFans 专门起诉过下载工具运营者。",[21,674,675],{"id":675},"下载前的技术清单",[11,677,678],{},"不确定一个流能不能下，走这份清单：",[680,681,682,698,708,718,724,734],"ol",{},[364,683,684,687,688,691,692,172,695,648],{},[125,685,686],{},"打开 DevTools → Network 标签。"," 筛 ",[43,689,690],{},"m3u8","、",[43,693,694],{},"mpd",[43,696,697],{},"mp4",[364,699,700,703,704,707],{},[125,701,702],{},"HLS 的话："," 查 ",[43,705,706],{},"#EXT-X-KEY:METHOD=SAMPLE-AES","。有，停——DRM。",[364,709,710,713,714,717],{},[125,711,712],{},"DASH 的话："," 拉 MPD。找 ",[43,715,716],{},"\u003CContentProtection>"," 含已知 DRM UUID。有，停。",[364,719,720,723],{},[125,721,722],{},"都不是（直链 MP4）："," 无 DRM 信号。技术上能下。",[364,725,726,729,730,733],{},[125,727,728],{},"查 ToS。"," 搜\"",[78,731,732],{},"平台名"," terms of service download\"。ToS 明确禁止，即使不构成法律侵权也是 ToS 违约。",[364,735,736,739],{},[125,737,738],{},"考虑用途。"," 你有合法访问权的内容做个人离线观看通常没事。再分发不行。",[11,741,742],{},"FlowPick 自动化 1-4 步。5-6 步你自己来。",[21,744,746],{"id":745},"那合理使用呢","那合理使用呢？",[11,748,749],{},"合理使用（美国）和别处的同等机制允许在特定目的下不经许可使用 copyrighted 内容：评论、批评、新闻报道、学术、研究。",[11,751,752],{},"四个因素（17 U.S.C. §107）：",[680,754,755,758,761,764],{},[364,756,757],{},"使用的目的和性质（商业 vs 非营利教育）",[364,759,760],{},"copyrighted 作品的性质",[364,762,763],{},"使用部分的量和重要性",[364,765,766],{},"对潜在市场的影响",[11,768,769,772],{},[125,770,771],{},"实操："," 合理使用是抗辩理由——被起诉后才能提，由法官裁。不是免死金牌。对你付了访问权的内容做个人归档，合理使用可能适用。再分发就不行。",[21,774,776],{"id":775},"我付了费的内容呢","我付了费的内容呢？",[11,778,779],{},"这是最常见的\"可我都买了！\"问题。答案：",[361,781,782,788,794],{},[364,783,784,787],{},[125,785,786],{},"你买的是 license，不是内容。"," 订阅按特定条款给访问权。条款说\"不能下载\"，下载就是合同违约。",[364,789,790,793],{},[125,791,792],{},"绕 DRM 不论 license 都违法。"," 你有有效 Netflix 订阅，破解 Widevine 下载在 DMCA §1201 下仍违法。",[364,795,796,799],{},[125,797,798],{},"非 DRM 内容的个人复制通常没事。"," 你在非 DRM 平台买了电影，下载备份站得住。",[21,801,802],{"id":802},"什么时候真得咨询律师",[11,804,805],{},"如果你：",[361,807,808,811,814,817],{},[364,809,810],{},"在运营下载服务或工具（如 FlowPick）",[364,812,813],{},"公开分发下载的内容",[364,815,816],{},"出于任何原因绕 DRM",[364,818,819],{},"拿不准你的用途是否合理使用",[11,821,822],{},"那就找版权专业律师。这篇讲通用原则，不讲你的具体情况。",[21,824,825],{"id":825},"参考资料",[361,827,828,837,845,853,861,869],{},[364,829,830,836],{},[113,831,835],{"href":832,"rel":833},"https:\u002F\u002Fwww.law.cornell.edu\u002Fuscode\u002Ftext\u002F17\u002F1201",[834],"nofollow","DMCA §1201 — 反规避"," — 全文",[364,838,839,844],{},[113,840,843],{"href":841,"rel":842},"https:\u002F\u002Feur-lex.europa.eu\u002Flegal-content\u002FEN\u002FTXT\u002F?uri=celex:32001L0029",[834],"EU InfoSoc 指令 2001\u002F29\u002FEC"," — 欧盟反规避",[364,846,847,852],{},[113,848,851],{"href":849,"rel":850},"https:\u002F\u002Fwww.wipo.int\u002Ftreaties\u002Fen\u002Fip\u002Fwct\u002F",[834],"WIPO 版权条约"," — 国际框架",[364,854,855,860],{},[113,856,859],{"href":857,"rel":858},"https:\u002F\u002Fwww.eff.org\u002Fissues\u002Fdmca-1201",[834],"Electronic Frontier Foundation — DMCA §1201 豁免"," — EFF 的三年期豁免流程追踪",[364,862,863,868],{},[113,864,867],{"href":865,"rel":866},"https:\u002F\u002Fwww.youtube.com\u002Ft\u002Fterms",[834],"YouTube 服务条款"," — 第 5C 条，下载禁止",[364,870,871,876],{},[113,872,875],{"href":873,"rel":874},"https:\u002F\u002Fhelp.netflix.com\u002Flegal\u002Ftermsofuse",[834],"Netflix 使用条款"," — 第 4C 条",[21,878,879],{"id":879},"小结",[11,881,882,883,886,887,890,891,893],{},"流媒体下载的法律底线，在多数司法管辖区：",[125,884,885],{},"DRM = 违法，非 DRM 个人用 = 通常没事。"," 区分两者的技术信号在 Network 面板里看得到——HLS 的 ",[43,888,889],{},"SAMPLE-AES","、DASH 的带 DRM UUID 的 ",[43,892,120],{},"。看到它们，下载就要规避，规避就违法。",[11,895,896],{},"FlowPick 策略：非 DRM 都能下，DRM 一律不碰。这是下载工具唯一诚实的姿态。承诺\"任何网站\"的工具要么是骗局要么在违法，别把你的数据和法律风险交给它们。",[11,898,899,900,691,904,691,907,911],{},"确认内容能下之后的技术细节，看 ",[113,901,903],{"href":902},"\u002Fzh-Hans\u002Fblog\u002Fhls-m3u8-deep-dive-encryption-multitrack","HLS",[113,905,906],{"href":115},"DASH",[113,908,910],{"href":909},"\u002Fzh-Hans\u002Fblog\u002Fbrowser-streaming-remux-mp4-isobmff","重封装"," 深度篇。",[913,914],"hr",{},[21,916,917],{"id":917},"推荐阅读",[361,919,920,928,936,945,954,963],{},[364,921,922,927],{},[125,923,924],{},[113,925,926],{"href":902},"HLS 深度：加密、多音轨、值得记住的 EXT-X 标签"," — FlowPick 怎么检测 SAMPLE-AES、为什么拒绝",[364,929,930,935],{},[125,931,932],{},[113,933,934],{"href":115},"DASH 深度：SegmentTemplate、ContentProtection 与多视角 MPD"," — FlowPick 怎么解析 ContentProtection 标签",[364,937,938,944],{},[125,939,940],{},[113,941,943],{"href":942},"\u002Fzh-Hans\u002Fdocs\u002Ffeatures\u002Fprivacy-security","FlowPick 隐私和安全文档"," — FlowPick 完整隐私姿态，跟这里的法律姿态互补",[364,946,947,953],{},[125,948,949],{},[113,950,952],{"href":951},"\u002Fzh-Hans\u002Fblog\u002Fflowpick-vs-yt-dlp","FlowPick vs. yt-dlp"," — 两个工具怎么处理 DRM（同一个办法：不处理）",[364,955,956,962],{},[125,957,958],{},[113,959,961],{"href":960},"\u002Fzh-Hans\u002Fblog\u002Fgetting-started-with-hls-m3u8-download","如何下载 M3U8\u002FHLS 流：完整入门指南"," — 非 DRM HLS 的技术工作流",[364,964,965,970],{},[125,966,967],{},[113,968,969],{"href":646},"如何下载 Bilibili 视频到本地"," — 一个具体非 DRM 平台的实操",[972,973,974],"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 .spNyl, html code.shiki .spNyl{--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA}html pre.shiki code .sTEyZ, html code.shiki .sTEyZ{--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8}html pre.shiki code .sMK4o, html code.shiki .sMK4o{--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF}html pre.shiki code .s2Zo4, html code.shiki .s2Zo4{--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF}html pre.shiki code .sfazB, html code.shiki .sfazB{--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D}html pre.shiki code .sHdIc, html code.shiki .sHdIc{--shiki-light:#90A4AE;--shiki-light-font-style:italic;--shiki-default:#EEFFFF;--shiki-default-font-style:italic;--shiki-dark:#BABED8;--shiki-dark-font-style:italic}html pre.shiki code .swJcz, html code.shiki .swJcz{--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178}",{"title":45,"searchDepth":87,"depth":87,"links":976},[977,984,992,993,994,995,996,997,998,999,1000],{"id":23,"depth":87,"text":23,"children":978},[979,980,981,982,983],{"id":30,"depth":93,"text":31},{"id":131,"depth":93,"text":132},{"id":164,"depth":93,"text":165},{"id":355,"depth":93,"text":356},{"id":378,"depth":93,"text":379},{"id":393,"depth":87,"text":393,"children":985},[986,987,988,989,990,991],{"id":396,"depth":93,"text":396},{"id":435,"depth":93,"text":435},{"id":471,"depth":93,"text":471},{"id":493,"depth":93,"text":493},{"id":511,"depth":93,"text":511},{"id":520,"depth":93,"text":520},{"id":551,"depth":87,"text":552},{"id":613,"depth":87,"text":613},{"id":675,"depth":87,"text":675},{"id":745,"depth":87,"text":746},{"id":775,"depth":87,"text":776},{"id":802,"depth":87,"text":802},{"id":825,"depth":87,"text":825},{"id":879,"depth":87,"text":879},{"id":917,"depth":87,"text":917},"tips","2026-08-04","不是","md","\u002Fscreenshots\u002Fprivacy-security.png",{},true,"\u002Fzh-hans\u002Fblog\u002Fis-it-legal-to-download-streaming-video",14,{"title":5,"description":1003},"zh-Hans\u002Fblog\u002Fis-it-legal-to-download-streaming-video",[1013,1014,1015,1016,1017,1018],"法律","drm","版权","串流","伦理","深度","MlTiWQm_X3PbULbUoCZj8QNResov02XAIdCZe2XGQg0",[1021,1028],{"title":1022,"path":1023,"stem":1024,"description":1025,"date":1026,"category":1027,"children":-1},"如何嗅探并下载网页上的音频：播客、BGM、有声书一网打尽","\u002Fzh-hans\u002Fblog\u002Fhow-to-sniff-and-download-audio-from-any-website","zh-Hans\u002Fblog\u002Fhow-to-sniff-and-download-audio-from-any-website","用 FlowPick 嗅探检测网页音频资源的完整教程，涵盖 MP3\u002FM4A 直链、HLS 音频流、播客批量下载和有声书抓取。","2026-07-02","tutorials",{"title":1029,"path":1030,"stem":1031,"description":1032,"date":1002,"category":1001,"children":-1},"WebCodecs + Web Workers + OPFS：在浏览器里搞视频处理的实战路径","\u002Fzh-hans\u002Fblog\u002Fwebcodecs-web-workers-opfs-video-processing","zh-Hans\u002Fblog\u002Fwebcodecs-web-workers-opfs-video-processing","用 WebCodecs 调硬件解码、Web Workers 拉多线程、OPFS 做高吞吐本地文件 I\u002FO——附上和 FFmpeg WASM 的实测对比。",1787670587334]