2012-11-16 26 views
16

मैं एंड्रॉइड में अंतराल के बिना ध्वनि लूप करना चाहता हूं। मैंने ध्वनि को लूप करने के लिए mediaplayer.setLooping(true) कोड का उपयोग करने का प्रयास किया, लेकिन पहली आवाज खत्म हो जाने पर अगली ध्वनि शुरू होने पर हमेशा थोड़ी देर रुक जाती है।एंड्रॉइड में अंतराल के बिना ध्वनि कैसे लूप करें?

+0

मैं भी नया हूं, लेकिन मेरे पास एक सवाल है। हो सकता है कि आपकी आवाज में अंतराल हो? –

उत्तर

15

अपने आवेदन में ध्वनि फ़ाइलों के लिए .ogg फ़ाइल स्वरूप का उपयोग करें। मैं इस एक ही मुद्दा था, और अनुसंधान के एक बहुत बाद, मैं .ogg प्रारूप की कोशिश की और यह एंड्रॉयड में बिना किसी रिक्ति लूप

जानकारी .ogg प्रारूप के बारे में:। http://en.wikipedia.org/wiki/.ogg

आप आसानी से .mp3 से अपने ध्वनि फ़ाइल परिवर्तित कर सकते हैं या आप क्या, लोकप्रिय का उपयोग कर .ogg करने के लिए है ओपन सोर्स ऐप VLC Media Player

+1

टैंक, यह काम करता है ... – BrantYu

+1

'SoundPool' – weston

+6

का उपयोग करते समय भी मदद मिली मेरे मामले में प्रभाव नहीं पड़ता है:/ – gkiko

1

यह आमतौर पर ठीक काम करता है, जब तक कि आपके पास वास्तव में धीमी फ़ोन न हो।

मैं ऑडैसिटी जैसे ऑडियो संपादक के साथ ध्वनि फ़ाइल को दोबारा जांचूंगा, यह सत्यापित करने के लिए कि फ़ाइल की शुरुआत या अंत में कोई मौन नहीं है।

+0

अन्य लोगों ने जो कहा है उसे दोहराने के लिए बस टाइमस्टैम्प लॉल –

7

इस एंड्रॉयड ऑपरेटिंग सिस्टम :(में एक बग है http://code.google.com/p/android/issues/detail?id=18756

+0

देखें, ओजीजी प्रारूप का उपयोग करें और आप अच्छे हैं। मैंने पाया है कि ऑडसिटी फाइलों से किसी भी "ब्लैंकस्पेस" को काटने और इसे ओजीजी को सहेजने का अच्छा काम करता है। सबसे अच्छा हिस्सा यह है कि ऑडसिटी मुक्त है। –

+2

मैंने ऑडैसिटी के साथ बनाए गए ओजीजी पर स्विच करने की कोशिश की, और मुझे यह नहीं मिला कि यह मेरे 21 सेकंड ऑडियो नमूने के लिए अंतहीन प्लेबैक प्रदान करता है। –

+1

आपको अदभुत बनाने के लिए ऑडियो फ़ाइल को वास्तव में ट्रिम करने के लिए ऑडैसिटी का उपयोग करना होगा। –

3

यह भी ध्यान देने योग्य है कि जेली बीन (एपीआई स्तर 16) के साथ अंतहीन प्लेबैक जोड़ा गया था। यह आपको एक माध्यमिक मेडियाप्लेयर सेट करने की अनुमति देता है जिसका उपयोग अगली ऑडियो स्ट्रीम खेलने के लिए किया जाना चाहिए, जब तक कि प्राथमिक प्लेयर ने अभी तक वर्तमान ऑडियो नहीं खेलना समाप्त कर दिया हो। यह संभावित रूप से एक अंतराल 'लूप' बनाने के लिए भी इस्तेमाल किया जा सकता है।

public void setNextMediaPlayer (MediaPlayer next)

जाहिर है इस बाजार (वर्तमान में < 3% of the devices is running JB) के अधिकांश के लिए ज्यादा मदद नहीं होगा, लेकिन फिर भी उल्लेख के लायक।