我必须从MP4文件中获取以下信息
Count of video streams
Count of audio streams
For each video stream:
* language
* bitrate mode (fixed or variable)
* maximum bitrate
* length (seconds)
* stream size (megabytes)
* frame size
* framerate
* codec info
* codec profile
for each audio stream:
* language
* bitrate mode (fixed or variable)
* maximum bitrate
* length (seconds)
* stream size (megabytes)
* channels count
* codec info
这必须是完全托管且安全的代码,并且必须在Windows Phone 7上运行(在Windows Phone 7上测试)。
有人有任何建议我们如何做到这一点。
由于 Vijai
答案 0 :(得分:1)
所有这些信息(以及更多信息)都以MP4文件格式提供。如果你必须以编程方式执行此操作,则可能需要解析MP4文件,但这并不太难。
可以找到文件格式的说明here(好的,那就是Quicktime,但它对您的需求几乎完全相同。)
你需要找到一堆原子并从中读取值。原子(或者有时称为“盒子”)是分层的,其中包含其他框。
查找'流的数量'你需要轨道的数量 - 每个轨道都有一个TRAK原子(原子都有四个字符名称)你可以通过查看tope级别的MOOV原子并计算其中有多少TRAK原子来找到它。
要找出你需要查看的每种类型的轨道
< MOOV-> TRAK-> MDIA-> HDLR原子并找到其中的组件子类型字段,其将是' soun'对于音频和' vide'视频其他原子包含您正在寻找的其他字段 - 建议阅读链接文档以了解它。
答案 1 :(得分:0)
可以使用FFMPEG获取该特定信息。控制台应用程序。您可以将FFMPEG的输出定向到您的应用程序。 但是FFMPEG可能在Windows手机上不可用。我不熟悉Windows手机。