2010-08-17 21 views
9

फिलहाल मैं अपने कैमरे को अपने मोटोरोला Droid फोन पर सेट करने का प्रयास कर रहा हूं ताकि मेरी स्क्रीन के आकार (854 x 480 पिक्सेल) के आकार से मेल खा सकें, और मैं इसे पूरा करने का प्रयास कर रहा हूं जैसे कैमरे के लिए पैरामीटर:एंड्रॉइड में कैमरा छवि आकार सेट करना

@Override 
public void onPictureTaken(byte[] data, Camera camera) { 
    Bitmap image = BitmapFactory.decodeByteArray(data, 0, data.length); 
    //Size imageSize = camera.getParameters().getPictureSize(); 
    //image = Bitmap.createBitmap(image, 0, 0, imageSize.width, imageSize.height); 
    this.mCameraView.setBackgroundDrawable(new BitmapDrawable(image)); 
} 
:

Camera.Parameters parameters = this.mCamera.getParameters(); 
Log.i(TAG, "CAMERA SIZE: (" + this.mCameraView.getWidth() + ", " + this.mCameraView.getHeight() + ")"); 
parameters.setPictureSize(this.mCameraView.getWidth(), this.mCameraView.getHeight()); 
this.mCamera.setParameters(parameters); 
this.mCamera.takePicture(null, null, this); 

मैं अपने गतिविधि onPictureTaken की Camera.PictureCallback तरीका लागू (लॉग कॉल को छोड़कर) है, इसलिए जब takePicture विधि यह कहा जाता है इस विधि से चलाता है

किसी कारण से, मेरा कैमरा 1280 में चित्र ले रहा है एक्स 960. क्या यह किसी प्रकार का न्यूनतम आकार है जिसमें कैमरा एक छवि को कैप्चर कर सकता है? लॉग कॉल से मैं देख सकता हूं कि कैमरे के पैरामीटर अभी भी 854 x 480 के चित्र आकार के लिए सेट हैं, लेकिन छवि 1280 x 960 के रूप में बाहर आ रही है। क्या मैं छवि को गलत तरीके से डीकोड कर रहा हूं, क्या मैं कैमरे के पैरामीटर को गलत तरीके से सेट कर रहा हूं, या हूं मैं कुछ और गलत कर रहा हूँ?

किसी भी मदद के लिए अग्रिम धन्यवाद!

सम्मान, सेलेस्टियलोरब।

उत्तर

20

हां कैमरे द्वारा समर्थित चित्र आकार प्राप्त करने के लिए उपलब्ध तरीके हैं। कैमरे द्वारा समर्थित चित्र आकार प्रदान करने वाले कैमरे के पैरामीटर वर्ग को विधि समर्थित है चित्रित आकार(); इस विधि का उपयोग करके, आप कैमरे द्वारा समर्थित आकार प्राप्त कर सकते हैं। कोड स्निपेट इस तरह दिखेगा: -

Camera camera = Camera.open(); 
Parameters params = camera.getParameters(); 
List<Camera.Size> sizes = params.getSupportedPictureSizes(); 

मुझे आशा है कि यह आप में मदद मिलेगी।

धन्यवाद नवाब

+0

कैमरा पदावनत किया गया है और camera2 द्वारा बदल दिया है, लेकिन मैं नई एपीआई में एक अनुरूप विधि नहीं मिला – Price

2

मुझे जवाब मिला है, जाहिर है कि मेरा स्वयं का स्क्रीन रेज़ोल्यूशन कैमरा के लिए समर्थित आकार नहीं है। मुझे कैमरे के बारे में पता नहीं था केवल कुछ आकारों का समर्थन करने में सक्षम है क्योंकि मैं 1.6 एसडीके के साथ प्रोग्रामिंग कर रहा हूं।

क्या 1.5/1.6 के लिए कैमरे के समर्थित आकार को पुनर्प्राप्त करने का कोई तरीका है?

संबंधित मुद्दे