我正在使用Android相機實現視頻錄製。我使用MediaCodec來編碼來自onPreviewFrame()回調的幀。在Android上使用MediaCodec錄製慢動作視頻
現在我想錄制慢動作視頻。 如何設置相機捕捉速率或幀速率?我可以在哪裏設置這些參數,例如,如果我想以120fps記錄,並以30fps播放?
以下是我已經研究:
我記錄MOTO X慢動作視頻(具有內置慢動作錄像功能),並使用FFmpeg的檢查其FPS。我發現它在110 fps(接近120fps)的記錄和30fps的回放。這證明它提供硬件支持以高fps記錄。
然而,當我使用getSupportedPreviewFpsRange檢查其支持的FPS範圍內,只有4個支持FPS範圍套無人超過30fps的更大:
min_fps:15.0,max_fps15.0
min_fps :15.0,max_fps20.0
min_fps:15.0,max_fps30.0
min_fps:24.0,max_fps30.0
我用setPreviewFpsRange來設置更高的fps,但它仍然不超過30fps。我也嘗試設置KEY_FRAME_RATE和KEY_CAPTURE_RATE MediaFormat。但它仍然不起作用。
我也搜索了solution通過設置CamcorderProfile或setVideoFrameRate與MediaRecorder。但我正在使用MediaCodec。
任何人都可以幫我解決這個問題嗎?
這是MediaRecorder,而不是MediaCodec。 – fadden
感謝您的回答。你真的嘗試用它來記錄慢動作視頻嗎?我確實嘗試過使用MediaRecorder。但它仍然沒有工作。 –
你好,謝謝你的回答,你知道一個已經捕捉到120幀/秒速率的安卓相機應用程序(第三方)嗎?謝謝 –