mpegdash 文件的元数据提取
Metadata Extraction of mpegdash file
我们使用ffprobe
,我想知道mpegdash
是否被ffprobe
支持。我想提取 .mpd 文件的技术元数据,例如比特率。我不想流式传输或编码。我只想看数据
当我 运行 命令 ffprobe -formats
时。我没有看到 ffprobe
支持 .mpd
扩展。是否有任何我需要添加的库或扩展。
或者 ffmpeg/ffprobe 不足以提取数据。您是否有任何其他工具或库可用于此。
mpd 文件是一个简单的文本文件,充当索引并指向不同的音频和视频流。
如果您只是在寻找比特率,您实际上可以直接阅读它 - 例如,具有 5 个不同 ABR 比特率版本的视频流的 mid 将列出不同的 'representations',包括它们的比特率 -例如它将包括一行:
<Representation id="2" width="1280" height="720" frameRate="30/1" bandwidth="2499968" codecs="avc1.4D4029">
好吧,到目前为止还没有人回答,我找到了解决办法。我会自己回答。
如果我们 运行 命令:
ffmpeg -re -i <file_name.mpd> -f dash -
FFmpeg读取需要读取的XML文件。但它也读取块和许多其他信息。这使得提取技术元数据变得困难。我得出的最简单的选择是编写自定义代码来读取 mpeg_dash.mpd 文件。因为 XML 文件包含所有信息。
要详细了解 mpeg_dash 文件的格式:https://www.brendanlong.com/the-structure-of-an-mpeg-dash-mpd.html
您可以使用现有的 MPD 解析器,例如 https://github.com/carlanton/mpd-tools
https://javalibs.com/artifact/io.lindstrom/mpd-parser
希望对您有所帮助。
我们使用ffprobe
,我想知道mpegdash
是否被ffprobe
支持。我想提取 .mpd 文件的技术元数据,例如比特率。我不想流式传输或编码。我只想看数据
当我 运行 命令 ffprobe -formats
时。我没有看到 ffprobe
支持 .mpd
扩展。是否有任何我需要添加的库或扩展。
或者 ffmpeg/ffprobe 不足以提取数据。您是否有任何其他工具或库可用于此。
mpd 文件是一个简单的文本文件,充当索引并指向不同的音频和视频流。
如果您只是在寻找比特率,您实际上可以直接阅读它 - 例如,具有 5 个不同 ABR 比特率版本的视频流的 mid 将列出不同的 'representations',包括它们的比特率 -例如它将包括一行:
<Representation id="2" width="1280" height="720" frameRate="30/1" bandwidth="2499968" codecs="avc1.4D4029">
好吧,到目前为止还没有人回答,我找到了解决办法。我会自己回答。 如果我们 运行 命令:
ffmpeg -re -i <file_name.mpd> -f dash -
FFmpeg读取需要读取的XML文件。但它也读取块和许多其他信息。这使得提取技术元数据变得困难。我得出的最简单的选择是编写自定义代码来读取 mpeg_dash.mpd 文件。因为 XML 文件包含所有信息。
要详细了解 mpeg_dash 文件的格式:https://www.brendanlong.com/the-structure-of-an-mpeg-dash-mpd.html
您可以使用现有的 MPD 解析器,例如 https://github.com/carlanton/mpd-tools https://javalibs.com/artifact/io.lindstrom/mpd-parser
希望对您有所帮助。