2015-04-02 52 views
1

我正在一個Visual C++項目,我需要從一個選定的文件獲得電影的持續時間。我使用Mediainfo.dll來檢索此信息(movieFile->General->DurationString;)。問題是持續時間超過一個小時,我沒有得到秒,即秒總是顯示爲00.當持續時間少於一個小時,一切都很好。我也嘗試過movieFile->General->DurationMillis;,它以毫秒爲單位返回持續時間,但我也得到00秒。有誰知道可能是什麼問題?Mediainfo.dll持續時間參數不返回秒

回答

0

我不知道您使用哪個中間層,但是從MediaInfo MediaInfo :: Get(Stream_General,0,「Duration」)肯定會返回一個毫秒值。 MediaInfo :: Get(Stream_General,0,「Duration/String3」)將以「HH:MM:SS.mmm」格式返回持續時間。

Jérôme,MediaInfo的開發人員

+0

謝謝你的回答。我使用'MediaInfoNET.dll'。問題是'General-> DurationMillis'的值,它應該返回以毫秒爲單位的持續時間。但是當持續時間超過一個小時時,它總是返回一個可被「1000 * 3600 * 60」整除的值,這就是爲什麼我沒有關於秒的信息。我不知道爲什麼會發生這種情況,因爲在文件持續時間少於一小時的情況下,一切正常。 – adamm 2015-04-04 08:56:08

+0

看起來像是MediaInfoNET.dll中的一個錯誤。 要麼向這個中間層的開發人員報告,要麼直接使用官方的VB或C#綁定(可用[這裏](http://mediaarea.net/download/binary/libmediainfo0/0.7.72/MediaInfo_DLL_0.7.72_Windows_i386_WithoutInstaller.7z)例) – 2015-04-04 10:51:17