[{"data":1,"prerenderedAt":428},["ShallowReactive",2],{"blog-zh-Hans-how-to-download-dash-video-with-audio":3,"blog-zh-Hans-how-to-download-dash-video-with-audio-surround":416},{"id":4,"title":5,"author":6,"body":7,"category":400,"date":401,"description":402,"extension":403,"image":404,"lastModified":401,"meta":405,"navigation":101,"path":406,"readingTime":98,"seo":407,"stem":408,"tags":409,"__hash__":415},"blog_zh_Hans\u002Fzh-Hans\u002Fblog\u002Fhow-to-download-dash-video-with-audio.md","如何下载带声音的 DASH 视频","FlowPick 团队",{"type":8,"value":9,"toc":391},"minimark",[10,14,18,23,26,38,131,150,167,171,174,181,184,193,203,206,212,235,238,241,244,275,291,294,300,303,306,346,349,387],[11,12,5],"h1",{"id":13},"如何下载带声音的-dash-视频",[15,16,17],"p",{},"DASH 视频下载完，画面正常、声音全无——这是 DASH 下载翻车率最高的一种。原因不复杂：DASH 把视频和音频放在两条独立的流里，你只抓到了视频那条。这篇文章教你两件事：看懂 MPD 里哪个是画面哪个是声音，以及用 FlowPick 把它们合并成一个带声音的 MP4。",[19,20,22],"h2",{"id":21},"为什么-dash-下载后没有声音","为什么 DASH 下载后没有声音",[15,24,25],{},"MPEG-DASH 为了自适应切换画质，把视频轨和音频轨拆开传输。播放器同时请求两条流，播放时再合到一起。所以\"下载 DASH\"本质上是下载两条流再加一次合并，只下视频轨，自然没声音。",[15,27,28,29,33,34,37],{},"打开一个 MPD 文件，你会看到若干个 ",[30,31,32],"code",{},"AdaptationSet","，每个 set 里又是一堆 ",[30,35,36],{},"Representation","：",[39,40,45],"pre",{"className":41,"code":42,"language":43,"meta":44,"style":44},"language-xml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003CAdaptationSet contentType=\"video\">\n  \u003CRepresentation id=\"v1080\" width=\"1920\" height=\"1080\">\n    \u003CSegmentTemplate initialization=\"video\u002Finit.mp4\" media=\"video\u002F$Number$.m4s\" \u002F>\n  \u003C\u002FRepresentation>\n  \u003CRepresentation id=\"v720\" width=\"1280\" height=\"720\">\n    \u003CSegmentTemplate initialization=\"video\u002F720\u002Finit.mp4\" media=\"video\u002F720\u002F$Number$.m4s\" \u002F>\n  \u003C\u002FRepresentation>\n\u003C\u002FAdaptationSet>\n\n\u003CAdaptationSet contentType=\"audio\">\n  \u003CRepresentation id=\"a128\" bandwidth=\"128000\">\n    \u003CSegmentTemplate initialization=\"audio\u002Finit.mp4\" media=\"audio\u002F$Number$.m4s\" \u002F>\n  \u003C\u002FRepresentation>\n\u003C\u002FAdaptationSet>\n","xml","",[30,46,47,55,61,67,73,79,85,90,96,103,109,115,121,126],{"__ignoreMap":44},[48,49,52],"span",{"class":50,"line":51},"line",1,[48,53,54],{},"\u003CAdaptationSet contentType=\"video\">\n",[48,56,58],{"class":50,"line":57},2,[48,59,60],{},"  \u003CRepresentation id=\"v1080\" width=\"1920\" height=\"1080\">\n",[48,62,64],{"class":50,"line":63},3,[48,65,66],{},"    \u003CSegmentTemplate initialization=\"video\u002Finit.mp4\" media=\"video\u002F$Number$.m4s\" \u002F>\n",[48,68,70],{"class":50,"line":69},4,[48,71,72],{},"  \u003C\u002FRepresentation>\n",[48,74,76],{"class":50,"line":75},5,[48,77,78],{},"  \u003CRepresentation id=\"v720\" width=\"1280\" height=\"720\">\n",[48,80,82],{"class":50,"line":81},6,[48,83,84],{},"    \u003CSegmentTemplate initialization=\"video\u002F720\u002Finit.mp4\" media=\"video\u002F720\u002F$Number$.m4s\" \u002F>\n",[48,86,88],{"class":50,"line":87},7,[48,89,72],{},[48,91,93],{"class":50,"line":92},8,[48,94,95],{},"\u003C\u002FAdaptationSet>\n",[48,97,99],{"class":50,"line":98},9,[48,100,102],{"emptyLinePlaceholder":101},true,"\n",[48,104,106],{"class":50,"line":105},10,[48,107,108],{},"\u003CAdaptationSet contentType=\"audio\">\n",[48,110,112],{"class":50,"line":111},11,[48,113,114],{},"  \u003CRepresentation id=\"a128\" bandwidth=\"128000\">\n",[48,116,118],{"class":50,"line":117},12,[48,119,120],{},"    \u003CSegmentTemplate initialization=\"audio\u002Finit.mp4\" media=\"audio\u002F$Number$.m4s\" \u002F>\n",[48,122,124],{"class":50,"line":123},13,[48,125,72],{},[48,127,129],{"class":50,"line":128},14,[48,130,95],{},[15,132,133,136,137,140,141,149],{},[30,134,135],{},"contentType=\"video\""," 的是画面，",[30,138,139],{},"contentType=\"audio\""," 的才是声音。像 B 站这类平台就把音视频拆得很彻底，",[142,143,144],"strong",{},[145,146,148],"a",{"href":147},"\u002Fzh-Hans\u002Fblog\u002Fhow-to-download-bilibili-videos","如何下载 Bilibili 视频"," 里就是典型的 DASH 双流实战。",[15,151,152,153,159,160,166],{},"如果你还没接触过 MPD，建议先看 ",[142,154,155],{},[145,156,158],{"href":157},"\u002Fzh-Hans\u002Fblog\u002Fwhat-is-dash-mpd-streaming","MPD 文件到底是什么？DASH 清单解析","，那篇把清单结构讲得很清楚。想深入 SegmentTemplate 和 ContentProtection，翻 ",[142,161,162],{},[145,163,165],{"href":164},"\u002Fzh-Hans\u002Fblog\u002Fdash-mpd-deep-dive-segmenttemplate-contentprotection","DASH 深度：MPD 结构解析","。",[19,168,170],{"id":169},"用-flowpick-下载-dash-视频","用 FlowPick 下载 DASH 视频",[15,172,173],{},"第 1 步，打开视频页面播放几秒，确保 DASH 流真正加载了。\n第 2 步，打开 FlowPick 扩展，在资源列表里找到 MPD\u002FDASH 条目。\n第 3 步，选择视频画质，确认音频轨道被勾上（别选 video-only）。\n第 4 步，点下载，等音视频分片下载完并合并成 MP4。\n第 5 步，用 VLC 等播放器打开，确认画面和声音都在。",[15,175,176],{},[177,178],"img",{"alt":179,"src":180},"FlowPick 下载 DASH 流","\u002Fscreenshots\u002Fdash-downloader.png",[15,182,183],{},"画面正常但没声音，回到第 3 步——多半是选中了 video-only 的 representation，换成同时带音频轨的那一项重下。",[15,185,186,187,166],{},"合并是 FlowPick 在浏览器里用 WebAssembly 版 FFmpeg 完成的，不经过服务器。背后的实现逻辑见 ",[142,188,189],{},[145,190,192],{"href":191},"\u002Fzh-Hans\u002Fblog\u002Fhow-flowpick-merges-video-segments-in-browser","FlowPick 是怎么在浏览器里合并几百个视频分片的",[15,194,195,196,202],{},"如果你手里有公开的 MPD 地址，也可以直接用 ",[142,197,198],{},[145,199,201],{"href":200},"\u002Fzh-Hans\u002Fdash-downloader","DASH 在线下载工具","，粘贴地址就行。不过流需要页面 Cookie、登录态或 Referer 校验时，扩展更稳——扩展在源页面上下文里跑，这些请求头自动带上。",[19,204,205],{"id":205},"多语言音轨怎么选",[15,207,208,209,211],{},"有些平台的 MPD 会同时提供多条音频轨（国语、粤语、原声等），它们的 ",[30,210,36],{}," 各自独立：",[39,213,215],{"className":41,"code":214,"language":43,"meta":44,"style":44},"\u003CAdaptationSet contentType=\"audio\">\n  \u003CRepresentation id=\"a-zh\" ...>...\u003C\u002FRepresentation>\n  \u003CRepresentation id=\"a-en\" ...>...\u003C\u002FRepresentation>\n\u003C\u002FAdaptationSet>\n",[30,216,217,221,226,231],{"__ignoreMap":44},[48,218,219],{"class":50,"line":51},[48,220,108],{},[48,222,223],{"class":50,"line":57},[48,224,225],{},"  \u003CRepresentation id=\"a-zh\" ...>...\u003C\u002FRepresentation>\n",[48,227,228],{"class":50,"line":63},[48,229,230],{},"  \u003CRepresentation id=\"a-en\" ...>...\u003C\u002FRepresentation>\n",[48,232,233],{"class":50,"line":69},[48,234,95],{},[15,236,237],{},"在 FlowPick 的音轨下拉里选你想要的语种。合并出来的 MP4 只包含你选的那条音轨，不会把所有语言都塞进去。",[19,239,240],{"id":240},"下载后仍然没有声音怎么办",[15,242,243],{},"按顺序查这几样：",[245,246,247,257,263,269],"ol",{},[248,249,250,253,254,256],"li",{},[142,251,252],{},"确认没选 video-only 轨道","。有些 MPD 把音频放在独立的 ",[30,255,32],{}," 里，预览能播放不代表合并出来有声音。",[248,258,259,262],{},[142,260,261],{},"刷新原页面重新检测","。MPD 地址常带有效期，过期后返回 404 或 403，重开页面拿新地址。",[248,264,265,268],{},[142,266,267],{},"请求需要会话","。清单或分片返回 403，通常是 Referer 或登录 Cookie 校验——扩展在源页面里运行，一般能直接过；在线工具没这个能力。",[248,270,271,274],{},[142,272,273],{},"确认没有 DRM","。Widevine、PlayReady、FairPlay 加密的内容，FlowPick 不支持也不破解，这类只能联系内容方拿授权。",[15,276,277,278,284,285,166],{},"这四条之外还有更细的坑，",[142,279,280],{},[145,281,283],{"href":282},"\u002Fzh-Hans\u002Fdocs\u002Ftroubleshooting\u002Fdash-no-audio","DASH 视频没有声音：原因与解决方法"," 里列了完整排查清单，按症状对号入座。如果根本不是 DASH 而是 M3U8 分片流，去 ",[142,286,287],{},[145,288,290],{"href":289},"\u002Fzh-Hans\u002Fdocs\u002Ftroubleshooting\u002Fm3u8-download-failed","M3U8（HLS）下载失败排查",[19,292,293],{"id":293},"小结",[15,295,296,297,299],{},"DASH 没声音，九成是下载时只拿了视频轨。记住两步：MPD 里 ",[30,298,139],{}," 的才是声音；下载时确认音频轨道被勾上。剩下的合并交给 FlowPick，浏览器里原地完成，不占你服务器。",[301,302],"hr",{},[19,304,305],{"id":305},"相关文章",[307,308,309,317,325,332,339],"ul",{},[248,310,311,316],{},[142,312,313],{},[145,314,315],{"href":157},"MPD 文件到底是什么？非开发者也能看懂的 DASH 清单解析"," —— 从零认识 MPD，看得懂清单才选得对轨道",[248,318,319,324],{},[142,320,321],{},[145,322,323],{"href":164},"DASH 深度：SegmentTemplate、ContentProtection 与 MPD 结构"," —— 想搞懂分片 URL 是怎么生成的进阶读物",[248,326,327,331],{},[142,328,329],{},[145,330,192],{"href":191}," —— 合并背后的 WebAssembly FFmpeg 流水线",[248,333,334,338],{},[142,335,336],{},[145,337,148],{"href":147}," —— B 站就是典型的 DASH 音视频分离实战",[248,340,341,345],{},[142,342,343],{},[145,344,283],{"href":282}," —— 没声音症状的完整排查清单",[19,347,348],{"id":348},"推荐阅读",[307,350,351,360,369,378],{},[248,352,353,359],{},[142,354,355],{},[145,356,358],{"href":357},"\u002Fzh-Hans\u002Fblog\u002Fgetting-started-with-hls-m3u8-download","如何下载 M3U8\u002FHLS 流媒体"," —— DASH 的隔壁亲戚，另一套分片流体系",[248,361,362,368],{},[142,363,364],{},[145,365,367],{"href":366},"\u002Fzh-Hans\u002Fblog\u002Fflowpick-vs-yt-dlp","FlowPick vs. yt-dlp"," —— 浏览器里点几下 vs 命令行敲半天",[248,370,371,377],{},[142,372,373],{},[145,374,376],{"href":375},"\u002Fzh-Hans\u002Fblog\u002Fbatch-download-images-from-any-website","批量下载网页图片"," —— 不只是视频，图片也能一键批量抓",[248,379,380,386],{},[142,381,382],{},[145,383,385],{"href":384},"\u002Fzh-Hans\u002Fblog\u002Fis-it-legal-to-download-streaming-video","流媒体下载到底合不合法？"," —— 动手之前先看看这条红线",[388,389,390],"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);}",{"title":44,"searchDepth":57,"depth":57,"links":392},[393,394,395,396,397,398,399],{"id":21,"depth":57,"text":22},{"id":169,"depth":57,"text":170},{"id":205,"depth":57,"text":205},{"id":240,"depth":57,"text":240},{"id":293,"depth":57,"text":293},{"id":305,"depth":57,"text":305},{"id":348,"depth":57,"text":348},"tutorials","2026-08-18","DASH 视频下载后没声音？学会看懂 MPD 里哪个是视频、哪个是音频，别选到 video-only 流，用 FlowPick 一键合并成带声音的 MP4。","md",null,{},"\u002Fzh-hans\u002Fblog\u002Fhow-to-download-dash-video-with-audio",{"title":5,"description":402},"zh-Hans\u002Fblog\u002Fhow-to-download-dash-video-with-audio",[410,411,412,413,414],"DASH","MPD","视频下载","音频","教程","jv6twEC1l0qYUomMR2dpOkGbLRF1bp76FD3x2URBNG8",[417,423],{"title":418,"path":419,"stem":420,"description":421,"date":422,"category":400,"children":-1},"如何下载 Bilibili 视频到本地观看（2026 最新教程）","\u002Fzh-hans\u002Fblog\u002Fhow-to-download-bilibili-videos","zh-Hans\u002Fblog\u002Fhow-to-download-bilibili-videos","使用 FlowPick 浏览器扩展下载 Bilibili 视频的完整教程，涵盖 HLS 直播流、DASH 视频、普通 MP4 内容、视频识别和浏览器本地保存。","2026-07-01",{"title":424,"path":425,"stem":426,"description":427,"date":401,"category":400,"children":-1},"如何从视频直链下载 MP4 视频","\u002Fzh-hans\u002Fblog\u002Fhow-to-download-direct-mp4-video","zh-Hans\u002Fblog\u002Fhow-to-download-direct-mp4-video","学会识别 MP4、WebM 视频直链，用 FlowPick 一键下载，并逐个拆解 403、404、CORS、文件不完整这些最常见的坑。",1787670586238]