繁体   English   中英

如何在不使用flash-activeX的情况下从* .Net读取.flv文件的videoDuration?

[英]How do I read videoDuration of a .flv-file from *.Net without using the flash-activeX?

我有一个winform程序,该程序允许用户将Shockwave Flash电影上传到服务器。 为了获得videoDuration,我创建了“ ShockwaveFlashObjects” -activeX的实例,加载了影片,然后读取videoDuration,直到它从“ 0.0”更改为其他值。 我通过阅读GetVariable(“ videoDuration”)来获得。

它通常可以正常工作,但有时它可以锁定或显示上一次加载的Flash电影中的信息。

我在分发ShockWaveFlashObject-activeX时也遇到了麻烦。 我真的很想跳过那件事,只是阅读flash文件并找出电影的播放长度。

上传的所有电影均为视频,因此具有特定的播放时间。

这个问题对答案没有帮助

我已经在wotsit上检查了swf格式从中可以看出,应该可以读取帧率和帧数并计算持续时间,但是我找不到关于flv文件的任何信息。 也许已经有人准备好了,可以为我提供一些不错的代码,从而节省了我很多时间来理解规范?

一种可能性是使用ffmpeg读取视频/音频比特率。 获得这些详细信息后,您可以将文件总大小除以视频/音频比特率的总和。 这样可以估算出秒数(+/-几秒)。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM