2013-04-26 25 views
5

我打電話takePicture與該JPEG事件的回調:camera.takePicture(null, null, this);爲什麼onPictureTaken中的圖像字節數據會產生鏡像圖像?

這裏是回調處理:

@Override 
public void onPictureTaken(final byte[] data, Camera camera) { 
    Bitmap picture = BitmapFactory.decodeByteArray(data, 0, data.length); 
    MediaStore.Images.Media.insertImage(getContentResolver(), picture, "name" , "description"); 
} 

在測試中,我發現,圖像總是反映關於y軸。有誰知道(1)這是否發生在所有設備上,以及(2)爲什麼?我真的不明白爲什麼字節數據不能代表我在相機預覽中看到的內容。這是不合理的預期嗎?

回答

4

我認爲你正在使用前置攝像頭吧? 這是Front Camera的行爲。 即使您在筆記本電腦上使用網絡攝像頭,也是如此。

如果你要修復它。請參考Here

+0

不錯!謝謝。是否有文檔說明前置攝像頭*是否具有*鏡像?或者是所有制造商都遵循的不成文規則? – user5243421 2013-04-26 05:26:22

+0

我認爲這是一個常見的規範。當相機對着你時,它會從其角度看待圖像。 (這與你所看到的相反。)不確定文檔,但我的三星,宏達電,索尼這樣設置所有行爲。 – Calvin 2013-04-26 05:35:24

相關問題