2013-04-22 15 views
6

क्या मैं एक ही समय में एंड्रॉइड मीडिया रिकॉर्डर क्लास के दो उदाहरण चला सकता हूं? उदाहरणएंड्रॉइड: एक ही समय में मीडिया रिकॉर्डर के दो उदाहरण

public MediaRecorder mrec1 ; 
public MediaRecorder mrec2 ; 


mrec1.setCamera(mCamera); 
mrec1.setPreviewDisplay(surfaceHolder.getSurface()); 
mrec1.setVideoSource(MediaRecorder.VideoSource.CAMERA) 
. 
. 
. 
. 
mrec2.setAudioSource(MediaRecorder.AudioSource.MIC); 
mrec2.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP); 
mrec2.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB); 
. 
. 
. 
. 
mrec1.prepare(); 
mrec2.prepare(); 
mrec1.start(); 
mrec2.start(); 

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

04-22 11:08:45.869: E/MediaRecorder(7742): start failed: -2147483648 
04-22 11:08:45.869: W/dalvikvm(7742): threadid=9: thread exiting with uncaught exception (group=0x40018578) 
04-22 11:08:45.869: E/AndroidRuntime(7742): FATAL EXCEPTION: Thread-10 
04-22 11:08:45.869: E/AndroidRuntime(7742): java.lang.RuntimeException: start failed. 

उत्तर

0
documentation के अनुसार

:

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

मेरे असफल प्रयासों ने कुछ भी नहीं किया।

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