2011-08-27 89 views
2

我想如下Matlab中加載WMV視頻:Matlab的:加載WMV視頻文件

vidObj = mmreader('video.wmv'); 

不過,我收到以下錯誤:

The file requires the following codec(s) to be installed on your system: video/x-ms-asf 

我不明白爲什麼我收到這個錯誤,因爲我可以在我的系統上播放wmv文件。我在Ubuntu 11.04上運行Matlab 7.10.0(R2010a)。我該如何解決這個問題?

+1

您是否檢查過您是否安裝了用於Gstreamer的plug-ugly? 'mmreader'使用gstreamer請參閱:http://www.mathworks.com/help/releases/R2010a/techdoc/ref/mmreaderclass.html – ephsmith

+0

是的,我有Gstreamer插件,但問題仍然存在。 – Josh

回答

0

這可能很難不可能在Linux系統上運行。或者,您可以編寫自己的wmv導入函數(如果您知道如何與Linux系統上的基礎庫(即vlc)交談)。

+0

感謝您的回答。我放棄了這個問題,因爲很明顯,任何可行的方法都是非常麻煩的(如果可能的話)。相反,對於我所面臨的問題,我只是用一個帶有Matlab的Windows系統來處理加載的wmv文件。 – Josh

1

由於標準C++庫的版本衝突,我收到了相同的錯誤消息。 我已經在控制檯窗口中啓動了MATLAB,並確認Gstreamer無法加載插件。

(:26573): GStreamer-WARNING **: Failed to load plugin '/usr/lib/gstreamer-0.10/libgstffmpeg.so': 
/usr/local/MATLAB/2010b/bin/glnx86/../../sys/os/glnx86/libstdc++.so.6: version `GLIBCXX_3.4.11' not found (required by /usr/lib/libdirac_encoder.so.0) 

的問題是,MATLAB附帶的libstdC++。so.6.0.10和GStreamer的抱怨說,它應該的libstdC++工作。so.6.0.13

所以,你應該更換MATLAB目錄符號鏈接與您的系統中的一個。

$ rm /usr/local/MATLAB/2010b/sys/os/glnx86/libstdc++.so.6 
$ ln -s /usr/lib/libstdc++.so.6 /usr/local/MATLAB/2010b/sys/os/glnx86/libstdc++.so.6