2017-06-26 98 views
1

我正在使用Camera2 API處理相機應用程序。我能夠捕捉RAW(.dng文件)和JPG。我看到可以在Camera FV-5應用程序上拍攝一張PNG照片,我也想這樣做。我能夠獲得RAW的ByteBuffer和每個像素的RGB值(如果這有幫助...)。 PNG的捕捉很重要,因爲我想讓這個功能成爲可能,所以我在RAW和JPEG之間有一些東西(RAW太大,JPEG壓縮太多,PNG是無損壓縮格式)。謝謝!Camera2 PNG capture

+1

請儘量在你的問題_question_。你的問題在哪裏?你試過什麼了?你能添加一些源代碼嗎? – ventiseis

+0

允許保存PNG的相機應用程序目前正在做一個簡單的竅門,它們將從捕獲獲得的JPEG以編程方式轉換爲PNG,無非就是如此。因此,要將圖像轉換爲PNG,您需要將JPEG解碼爲位圖,然後將其保存爲PNG。不是向用戶提供PNG選項的最優雅的方式,但是這是現有的機制。 – PerracoLabs

回答

1

如果有位圖,它聽起來像你這樣做,那麼你可以將其保存爲PNG:

OutputStream imageStream = new FileOutputStream("yourImage.png"); 
yourImageBitmap.compress(CompressFormat.PNG, 100, imageStream); 
imageStream.close();