2012-12-28 61 views
2

我想學習如何使用的ffmpeg的Android,並正嘗試建立這個項目開始:https://github.com/appunite/AndroidFFmpeg無法通過單步執行代碼,同時調試的Android NDK項目

它與我嘗試了一些網址,偉大的工作。然後我用mms協議和wma支持編譯ffmpeg,並試圖打開一個媒體。播放器返回無法打開錯誤代碼爲-1的媒體。我可以看到它在logcat中讀取媒體的標題。我試圖調試,看看它爲什麼會給我錯誤,所以我在player.c文件中放置了一個breakpoint @ jni_player_set_data_source函數。我遵循these instructions在eclipse中啓動ndk調試。經過幾次嘗試後,它達到了斷點,我可以繼續或停在本機代碼的斷點處。但是我不能介入代碼,並且看不到變量的值。我在這個函數中放了三個斷點,我可以從一個斷點跳到另一個斷點,但是我可以做的就是這樣。我如何遍歷代碼並更多地瞭解變量的值?

  • 我在eclipse中將FFMpegLibrary項目設置爲「is library」。
  • 的FFMpegExample使用FFMpegLibrary
  • 我調試FFMpegExample爲「Android應用程序」
  • 我然後讓JNI庫加載並運行NDK-GDB-蝕
  • 然後我回到Eclipse和啓動調試FFMpegLibrary本地調試配置。然後我可以在java調試中打F8,然後停止在本機代碼上執行。我可以再次按F8去下一個本地代碼的斷點,但我不能在那裏做F5,F6或F7(任何代碼步進)。這些圖標在工具欄中顯示。

如果您需要更多信息來了解我的設置,請讓我知道。

+0

有完全相同的問題,F5,F6和F7什麼都不做,只有F8停在斷點上。 –

回答

0

我放棄了試圖進一步調試該代碼並使用Vitamio庫。如果您只是在尋找一些支持更多格式和協議的Android媒體播放器庫,請使用Vitamio bundle。我不知道許可證的工作原理。我只是需要測試一些東西,所以,我沒有費心去發現它。請分享你的經驗,如果你設法做調試工作。

相關問題