如何从 mp4 视频创建 .mpd mpeg dash 文件

Posted

技术标签:

【中文标题】如何从 mp4 视频创建 .mpd mpeg dash 文件【英文标题】:how to create .mpd mpeg dash File from mp4 video 【发布时间】:2021-10-04 13:42:28 【问题描述】:

我正在开发一个视频播放器应用。我的要求是在不同分辨率下运行视频。我是新的视频应用程序。我搜索并发现 mpeg dash 文件内容与清单不同。任何人都可以帮助我如何从 mp4 高分辨率视频创建 mpeg dash 文件清单。

【问题讨论】:

【参考方案1】:

您可以通过多种支持良好的方式执行此操作 - 其中两种最常见(专用打包软件解决方案之外):

ffmpeg

在线文档包括以下示例:

ffmpeg -re -i <input> -map 0 -map 0 -c:a libfdk_aac -c:v libx264 \
-b:v:0 800k -b:v:1 300k -s:v:1 320x170 -profile:v:1 baseline \
-profile:v:0 main -bf 1 -keyint_min 120 -g 120 -sc_threshold 0 \
-b_strategy 0 -ar:a:1 22050 -use_timeline 1 -use_template 1 \
-window_size 5 -adaptation_sets "id=0,streams=v id=1,streams=a" \
-f dash /path/to/out.mpd

来自:https://ffmpeg.org/ffmpeg-all.html#dash-2

MP4Box

文档再次在线并包含一些示例:

MP4Box -dash 10000 -frag 1000 -rap -segment-name myDash -subsegs-per-sidx 5 -url-template test.mp4

来自:https://gpac.wp.imt.fr/2012/02/01/dash-support/

【讨论】:

我在 ffmpeg 中得到“必须指定至少一个输出文件”。 ffmpeg -re -i demo.mp4 -map 0 -map 0 -c:a libfdk_aac -c:v libx26 -b:v:0 800k -b:v:1 300k -s:v:1 320x170 -profile:v: 1 基线 -profile:v:0 main -bf 1 -keyint_min 120 -sc_threshold 0 -b_strategy 0 -ar:a:1 22050 -use_timeline 1 -use_template 1 -window_size 5 -adaptation_sets "id=0,streams=v id=1 ,streams=a" -f dash/to/out.mpd @DevMobApp - 你用你想要的任何输出文件替换“dash/to/out.mpd”吗?另外,看看这里,特别是如果使用 Windows:***.com/a/42249107/334402

以上是关于如何从 mp4 视频创建 .mpd mpeg dash 文件的主要内容,如果未能解决你的问题,请参考以下文章

MPEG-DASH - 破折号无效!错误

免费或低成本的 mpeg-dash / HLS 视频播放器 [关闭]

具有安全 S3 URL 的 MPEG-Dash

如何解析 MPD 清单视频文件并获取图像适配集的片段?

如何从 H.264 帧和音频帧的集合创建 mp4 文件?

如何创建具有多个后备 URL 的 MPEG-DASH 清单?