मैं एक ऐप बना रहा हूं जिसमें रिकॉर्ड किए गए वीडियो का 60 सेकंड बफर होगा। वीडियो रिकॉर्डिंग को एक विस्तृत अवधि (24-48 घंटे) के लिए चलाने की जरूरत है। मुझे रिकॉर्डिंग के साथ कोई समस्या नहीं प्रतीत होती है, लेकिन ऐसा प्रतीत होता है कि कुछ घंटों के बाद मैं अपने Camera
या Surface
के साथ कनेक्शन खो देता हूं।अंतहीन वीडियो रिकॉर्डिंग
मैं अधिकतम अवधि निर्धारित कर रहा हूं: MediaRecorder.setMaxDuration(10 * 1000)
ताकि रिकॉर्डिंग 10 सेकंड सेगमेंट में टूट गई हो।
हर बार जब मैं अपनी रिकॉर्डिंग को पुनरारंभ करता हूं तो मैं आउटपुट फ़ाइल को इस तरह से बढ़ा रहा हूं कि 6 फाइलों का पुन: उपयोग किया जाता है। इसका उद्देश्य हर समय 60 सेकंड का इतिहास रखना है।
यदि मैं 1-2 घंटे बाद रिकॉर्डिंग को रोकता हूं तो वीडियो ठीक से खेलते हैं। हालांकि, अगर मैं इसे 3-4 + घंटे तक चलाता हूं और रिकॉर्डिंग को रोकता हूं, तो वीडियो ऑडियो के साथ केवल काले आउटपुट दिखाता है। दूसरे शब्दों में, ऐसा लगता है कि यह कैमरे या सतह के साथ कनेक्शन खो गया है लेकिन ऑडियो रिकॉर्डिंग जारी है।
क्या कोई इस व्यवहार को समझा सकता है?
यदि कुछ और नहीं है, तो एक्स वीडियो के दूसरे खंड रिकॉर्ड करने का एक बेहतर तरीका है?
एफवाईआई: मैं एक वेक लॉक का उपयोग कर रहा हूं ताकि स्क्रीन/सीपीयू चालू रहे।
मैंने कभी ऐसा कुछ भी नहीं किया है। लेकिन अगर आपको बिना किसी समस्या के 1-2 घंटे मिल सकते हैं तो त्वरित गंदी फिक्स खत्म() की तरह लगती है और आपकी रिकॉर्डिंग गतिविधि को पुनरारंभ करें। लेकिन यह आपको रिकॉर्ड किए गए वीडियो में एक अंतर छोड़ने जा रहा है जो आपकी गतिविधि स्टार्टअप समय का आकार है। यदि आपके पास 2 डिवाइस हैं तो आप दोनों और वैकल्पिक पुनरारंभ समय से रिकॉर्ड कर सकते हैं? – FoamyGuy
हम्म, दिलचस्प विचार। हकीकत में मेरा मानना है कि मैं रिकॉर्डिंग परिचालन के साथ कुछ कर रहा था। जैसा कि, यह सामान्य रूप से * कैमरे से फिर से कनेक्ट करने में सक्षम हो सकता है, लेकिन 1% मामला हो सकता है जहां यह स्वयं से आगे हो जाता है (MediaRecorder फिर से रिकॉर्डिंग शुरू करने का प्रयास करते समय आउटपुट फ़ाइल लिखना/बंद करना समाप्त नहीं होता है?) –