2015-06-05 221 views
2

我想在三星Galaxy S2上錄製視頻。我已經使用通常的計算來計算出最佳預覽尺寸,並根據算法返回720x480或800x480。完整名單從getParameters().getSupportedPreviewSizes()返回看起來是這樣的:安卓相機setPreviewSize

「640×480」,「720×480」,「800×480」,「320×240」,「176×144」

設置這些預覽看起來不錯的開始。它似乎在錄製視頻,但是在停止相機之後,沒有拍攝視頻。

如果我從CamcorderProfile.get(mCameraId, CamcorderProfile.QUALITY_HIGH);得到高度和寬度值,併爲預覽(1920x1080)設置這些值(不應該支持,因爲它不在列表中?),錄製工作正常。這真是令人費解。

有沒有錯誤,我可以在日誌中看到,它只是不錄製視頻......

回答

1
getParameters().getSupportedPreviewSizes() 

讓你預覽大小的攝像頭,而不是記錄的大小或圖片尺寸。

錄製的視頻,還有其他支持的尺寸作爲留念,你可以在的文檔,請參閱:

http://developer.android.com/reference/android/media/CamcorderProfile.html

獲得支持的視頻尺寸只要致電:

getParameters().getSupportedVideoSizes() 

因此您需要設置預覽和錄製尺寸。

你怎麼能做到這一點,在這裏回答: How to record video of particular width and height on samsung device android?

+0

感謝您的答覆!我將閱讀鏈接的文章。儘管問題很快 - 在API11中增加了getSupportedVideoSizes,API10還有其他選擇嗎?此外,我也承認預覽,視頻和圖片尺寸是3種不同的東西 - 我只是不明白爲什麼在將預覽大小設置爲攝像頭配置文件中的值時,設置getSupportedPreviewSizes返回的合法預覽尺寸不起作用視頻是否正確?) - – vkislicins

+0

這取決於攝像頭的本機實現(也許三星做出了一些默認假設),可能是它不適用於所有設備。 API 10沒有其他選擇,Camera只是本地調用的包裝。所以爲它創建支持庫並不容易,它可以在許多設備上的舊版本上運行。 –