如何从 mp4 FileStream 对象中提取持续时间(不存储在文件系统中)

How to extract duration from an mp4 FileStream object (not stored in file system)

我一直在尝试在 Nuget 中找到一个库,它可以在将 MP4 上传到我的服务器时为我提供持续时间。我遇到的一切都需要视频的文件路径。有什么我可以将 Stream 对象传递到其中以获得持续时间的东西吗?或者我可以解析视频开头的字节以提取持续时间(知道它是 MP4)吗?

MP4 的持续时间存储在 m4 的 'moov' 框中。问题是,moov 框可以位于文件的开头或结尾。所以,没有保证 100% 的方法可以做到这一点。