2014-05-24 9 views
8

मेरे पास लैंडस्केप मोड में कस्टम पूर्ण स्क्रीन कैमरा है। डिवाइस आकार 1024 x 600.कैमरा - वीडियो रिकॉर्डिंग शुरू करने के बाद पूर्वावलोकन परिवर्तन

समर्थित पूर्वावलोकन आकार सूची
चौड़ाई x ऊँचाई
176 x 144
320 x 240
352 x 288
528 x 432
640 x 480
है 1024 x 576
1024 x 768

समर्थित वीडियो आकार सूची
चौड़ाई x ऊँचाई
176 x 144
320 x 240
352 x 288
640 x 480
720 x 480
1280 x 720

setPreviewSize बिना मेरा पूर्वावलोकन बाएं और दाएं से ऊपर और नीचे और से संपीड़ित है।

मेरे पूर्वावलोकन getOptimalPreviewSize वापसी 1024 x 576 आकार, और पास वीडियो आकार 1280 x 720

तो है, वीडियो आकार की स्थापना और शुरू रिकॉर्डिंग वीडियो

mediaRecorder.setVideoSize (1280 के बाद, 720);

सतह दृश्य में परिवर्तन (इस मामले में ज़ूम किया गया)।

मुझे आश्चर्य है कि आकार अंतर समस्या को हल करने के लिए और रिकॉर्डिंग से पहले और बाद में हमेशा एक ही पूर्वावलोकन दिखाई देता है?

उत्तर

0

मैं बस 1280x720 तक रहूंगा। अगर आप वीडियो रिकॉर्ड न करते समय इस पूर्वावलोकन आकार का उपयोग करते हैं तो मुझे एक महत्वपूर्ण प्रदर्शन हिट होता है।

मुझे स्पष्ट करने दें: संकल्प आप setPreviewSize() में चयन दो प्रभाव होते हैं: यह छवि है कि आपके SurfaceView या TextureView द्वारा प्राप्त होता है के पक्ष अनुपात को परिभाषित करता है, और यह Camera.PreviewCallback.onPreviewFrame में प्राप्त डेटा बफर के आकार को परिभाषित करता है() (यदि आप setPreviewCallback() का उपयोग करते हैं)। यह संकल्प सतह या बनावट पर पूर्वावलोकन प्रस्तुत करने के लिए समय को प्रभावित नहीं करता है, क्योंकि ये ऑपरेशन हार्डवेयर में किए जाते हैं।

1

वास्तव में, यह एक मुश्किल मुद्दा है और हार्डवेयर के साथ बदलता है। स्पष्ट रूप से डालें, कभी-कभी कुछ हार्डवेयर विक्रेताओं को हासिल करना असंभव होता है।

हार्डवेयर विक्रेता कच्चे कैमरा सेंसर रिज़ॉल्यूशन, अनुरोधित पूर्वावलोकन दृश्य और वीडियो कैप्चर आकार, और बाद में प्रसंस्करण (इंटरपोलेशन के साथ आकार बदलें) के बीच आकार और पहलू अनुपात अंतर को संभालने का तरीका बताते हैं ताकि स्क्रीन रिज़ॉल्यूशन में पूर्वावलोकन को फिट किया जा सके।

आमतौर पर, "निपटने" शामिल है:

  • फसल, जिसका अर्थ है कि कच्चे छवियों में से कुछ हिस्सा - मार्जिन - बस छोड़ दिए जाते हैं।
  • आकार बदलना - जिसका मतलब है कि एक इंटरपोलेशन और औसत एल्गोरिदम का उपयोग विभिन्न आकार के साथ एक छवि उत्पन्न करने के लिए किया जाता है। पहलू अनुपात बदला जा सकता है।

दोनों को आमतौर पर समर्पित हार्डवेयर या GPU पर चलाने के लिए प्रोग्राम किया जाता है। सिस्टम-ऑन-चिप (एसओसी) का अर्थ है कि सीपीयू और जीपीयू के अलावा बहुत सारे समर्पित हार्डवेयर हैं जो विक्रेता (और केवल विक्रेता) प्रसंस्करण के लिए उपयोग कर सकते हैं।


आप एक उपकरण है जो आकार फिट करने के लिए एक साधन के रूप फसल का उपयोग करता है, तो पूर्वावलोकन और अंतिम छवि/वीडियो सीमा से मेल नहीं खाएगी। इस डिवाइस मॉडल के लिए अतिरिक्त प्रोसेसिंग कोड तैयार करने तक आप इसके बारे में कुछ भी नहीं कर सकते हैं।

इसके अलावा, सभी पूर्वावलोकन आकार कैमरे सेंसर के समान पहलू अनुपात में वापस नहीं आते हैं। यह स्पष्ट होना चाहिए क्योंकि पूर्वावलोकन आकार में पहलू अनुपात का मिश्रण होता है।

0

मुझे एक ही समस्या थी। दस्तावेज़ों को पढ़ना और सुनिश्चित करना कि मैं सही रिकॉर्ड में सभी रिकॉर्डर और कैमरा विधियों को कॉल कर रहा हूं।

https://developer.android.com/guide/topics/media/camera.html

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