2016-01-06 78 views
1

根據以下幾點: http://www.oracle.com/technetwork/java/javase/certconfig-2095354.html檢測是否JavaFX的媒體編解碼器需要安裝

爲了JavaFX的媒體合作,給定的操作系統需要安裝適當的編解碼器。

在我的應用程序中,我試圖播放mp4視頻。如果給定的平臺是而不是可以播放它,我改爲顯示靜態圖像。 在這種情況下,如果它無法播放它,我期待它拋出一個異常,我會相應地處理它。 但是,它不這樣做,而是顯示視頻應該在的空白區域。 如何檢測是否安裝了所需的編解碼器?

我在Windows Server 2008上測試了這個問題,我得到了這個症狀。 Windows 7,8和10按預期工作。

回答

0

您不需要檢查操作系統是否具有編解碼器,因爲Java包含了大部分編解碼器(包括Mpeg-4/mp4),問題是該窗口的服務器版無法播放視頻。

+0

從鏈接(對於Win 7和8):「默認情況下使用預安裝的Microsoft AAC和H.264 DirectShow解碼器過濾器。」和「如果這些解碼器都不可用,則AAC和H.264解碼將失敗。」 我的基本問題是,如果這些解碼器不可用,它不會引發異常。 – Avrom

+0

JavaFX使用流行的開源框架GStreamer,其中包括許多編解碼器,例如MP3,WAV,ACC,AIFF,PCM,MPEG-4(包括H.264/AVC和AAC)以及FLV(VP6和MP3)。 – dav20012

+0

現實情況是,當在Windows Server上運行時,它*不起作用*並且它不會拋出異常*告訴我這樣我就可以處理它。 – Avrom