मुझे लाइव ऑडियो स्ट्रीम चलाने की ज़रूरत है, वास्तव में यह रेडियो है। समस्या यह है कि मुझे स्ट्रीमिंग के लिए 20 मिनट बफर का प्रबंधन करने की भी आवश्यकता है। जहां तक मैं समझता हूं कि एंड्रॉइड के साथ कार्यान्वित करना आसान नहीं है।ऑडियो स्ट्रीम बफरिंग
सबसे पहले मैंने मीडियाप्लेयर की जांच की, लेकिन यह बफर प्रबंधन के लिए कोई भी तरीका प्रदान नहीं करता है। वास्तव में आप सीधे बफर आकार भी सेट नहीं कर सकते हैं।
दूसरी बार मैंने स्थानीय फाइलों का उपयोग करके बफर का प्रबंधन करने की कोशिश की: प्रगतिशील रूप से स्ट्रीम को अस्थायी फ़ाइलों में डाउनलोड करें और उन्हें स्विच करें। लेकिन जब आप निम्न फ़ाइल पर स्विच करना चाहते हैं (MediaPlayer में डेटास्रोत बदलें), ऑडियो लगातार नहीं खेला जाता है। आप छोटी बाधाओं को सुन सकते हैं।
अंतिम विचार स्ट्रीम प्रॉक्सी का उपयोग करना है। आमतौर पर इसका उपयोग नीचे दिए गए एंड्रॉइड संस्करणों में स्ट्रीम खेलने के लिए किया जाता है। स्ट्रीम प्रॉक्सी में आप सर्वरसॉकेट बनाते हैं, ऑडियो स्ट्रीम से पढ़ते हैं और प्लेयर को लिखते हैं। तो वास्तव में मैं वहाँ बफरिंग का प्रबंधन कर सकते हैं। मैं स्ट्रीम कैश कर सकता हूं और मीडियाप्लेयर को जो कुछ भी चाहता हूं उसे लिख सकता हूं। परंतु। यह एंड्रॉइड 8 के साथ काम नहीं करता है।
मुझे अपवाद मिला: सहकर्मी java.net द्वारा कनेक्शन रीसेट। सॉकेटएक्सप्शन: सहकर्मी द्वारा कनेक्शन रीसेट। MediaPlayer 8 सॉकेट से डेटा नहीं पढ़ना चाहता है।
इस प्रकार मेरे पास दो प्रश्न हैं: 1) स्ट्रीम बफरिंग को लागू करने का दूसरा तरीका क्या है? 2) एंड्रॉइड 8 के लिए StreamProxy को कैसे अनुकूलित करें?
किसी भी विचार की सराहना की जाती है।
धन्यवाद
"2) कैसे एंड्रॉयड 8 के लिए StreamProxy अनुकूल करने के लिए?" ... जब तक आप कोड का उपयोग कर रहे दिखाने के लिए, यह किसी को भी मदद करने के लिए के लिए असंभव है। – Squonk
आप मीडियाप्लेयर को स्ट्रीम कैसे लिख रहे हैं क्या आप थोड़ा और समझा सकते हैं? –