2013-07-25 57 views
5

我試圖將FFmpeg移植到我的NaCl模塊中。avformat_open_input返回值,NaCl模塊上的錯誤代碼

到目前爲止,我的模塊鏈接了ffmpeg和SDL庫。

它已經可以播放YUV格式的視頻,將視頻加載到內存中並複製到YUVOverlay緩衝區中(這很容易)。

現在,我想使用的ffmpeg解碼的視頻,但是當我調用該函數avformat_open_input它時,輸入URL字符串,返回-5rtmp://mmsh://;它返回-1052488119當輸入是文件名,如/saved/tmp(我掛載文件系統 - html5fs)。


有一些問題:

  1. 什麼意思-5和-1052488119?
  2. 如果文件無法打開avformat_open_input,是有可能的輸入類型是緩衝文件名URL字符串

如果我不清楚我的問題或描述,你能告訴我。 如果你正在做同樣的事情或有同樣的問題,我們可以一起討論。

感謝, 罐

+0

您可以在您打開要打開的文件的文件和容器格式的位置發佈初始代碼。在大多數情況下,avfromat_open_input應該工作。 – praks411

+0

我忘了告訴你,我在我的Native Client模塊上使用ffmpeg。 我註冊了這三個功能。 'avcodec_register_all(); av_register_all(); ();和調用avformat_open_input函數 int r = avformat_open_input(&pFormatCtx,「/ persistent/tmp」,NULL,NULL);'。 當輸入爲URL時,我得到了r = -2,當輸入是mp4文件時,r = -1052488119。 MP4包含h264視頻和acc音頻。 – Jar

+0

我發現,配置網絡被禁用,協議只啓用文件。這就是爲什麼我無法將URL解析爲輸入_(它返回-2)_。即使我啓用所有協議並啓用網絡,我仍然無法打開文件_(它返回-1052488119)_。 – Jar

回答

1

有在naclports一個ffmpeg端口。也許這對你有用?

+0

感謝您的回覆。這個項目只是移植了大量的NaCl文庫。我可以在我的NaCl模塊上編譯和運行FFmpeg庫。我只是不知道如何解決我提到的問題,意味着爲什麼返回值。到目前爲止,我可以在我的NaCl上播放視頻文件,但無法播放流媒體。 – Jar

+0

我有同樣的問題..仍然存在..你是如何解決這個問題的? –

+0

想用nfl的ffmepg來獲取示例代碼,如果你想分享我會很感激它 –