जब मैं सोनी एरिक्सन एक्सपीरिया एक्स 10 पर एंड्रॉइड 2.3 (पावरअंप सहित विभिन्न खिलाड़ियों का उपयोग करके) पर संगीत खेलने की कोशिश करता हूं, तो मुझे विश्वसनीय ध्वनि नहीं मिलती है। संगीत थोड़े समय के लिए रुक जाता है, उदाहरण के लिए, जब:
- मैं पावर बटन दबाता हूं (विशेष रूप से बार-बार) (
request_suspend_state: sleep;request_suspend_state: wakeup
dmesg में) - जब मैं संदेश जैसे
send sigkill to 15497 (ndroid.settings), adj 8, size 6428
dmesg में देखता हूं - जब कुछ प्रोग्राम बदली हुई स्क्रीन अभिविन्यास पर प्रतिक्रिया करता है।
- जब वाईफ़ाई कनेक्शन स्थापित हो जाता है, जब मैं इसे "पुन: व्यवस्थित करने" के लिए मजबूर करता हूं
- जब मैं होम स्क्रीन (AWDLauncher) से / WidgetLocker स्क्रीन को छोड़कर / से एप्लिकेशन पर जाता हूं।
- जब मैं हवाई जहाज मोड को सक्षम / अक्षम करता हूं।
- जब प्रदर्शन बंद होता है (सबसे कष्टप्रद)
जब केवल संगीत बजाने का स्थिर तरीका है, तो डिस्प्ले को बलपूर्वक चालू करने के लिए स्टेअक का उपयोग करें, वाई-फाई को बंद करें, एयरप्लेन मोड को चालू करें और एप्लिकेशन को स्विच न करें। सीपीयू हॉग शुरू करने से चॉपिंग while true; do true; done
प्रभावित नहीं होती है।
और यह एंड्रॉइड 2.1 पर कम या ज्यादा ठीक खेल रहा था।
"mediaserv" प्रक्रिया (जो / dev / msm_pcm_out को लिखती है) में रीयलटाइम io और शेड्यूलिंग प्राथमिकता है, लेकिन ध्वनि वैसे भी तड़का हुआ है। अगर मैं कंसोल mplayer -ao pcm:file=/dev/msm_pcm_out
से ध्वनि चॉप कम से खेलना शुरू करता हूं (विशेष रूप से यह पावर बटन / भारी प्रक्रियाओं के लोडिंग बंच से बाधित नहीं होता है), लेकिन फिर भी स्क्रीन बंद होने पर भी सामान्य रूप से व्यवहार नहीं किया जाता है (यहां तक ionice -c1 -p4 cat /dev/urandom > /dev/msm_pcm_out
कि तड़का हुआ है)
जब मैं सामान्य तरीके से संगीत ए शुरू करता हूं और म्यूजिक बी का उपयोग करता है तो मेपलर को / देव / msm_pcm_out (उन्हें मिलाया जाता है) संगीत ए चॉप सामान्य से अधिक होता है और मैं आमतौर पर ए सुनता हूं जब ए चॉप में होता है। जब मैं स्क्रीन बंद करता हूं, तो सिंक में ए और बी दोनों चॉप होते हैं (बी रोकना ए के इस तरह अपेक्षाकृत अधिक धाराप्रवाह प्लेबैक की ओर जाता है)।
पृष्ठभूमि लोड की उपस्थिति में एंड्रॉइड पर संगीत को मज़बूती से कैसे खेलें? क्या मुझे कहीं बग की सूचना देनी चाहिए?
अद्यतन संगीत खेलने का एक तरीका मिला। असुविधाजनक, लेकिन बिना काट :
- WakeLock को "सीपीयू ऑन, स्क्रीन ऑफ, कीबोर्ड ऑफ" मोड में शुरू करें
- Android को बायपास करने के लिए म्यूजिक प्ले करने के लिए mplayer का उपयोग करें:
ionice -c1 -n4 \
schedtool -R -p 3 -e \
mplayer -really-quiet \
-af volume=-26 -quiet \
-ao pcm:file=/dev/msm_pcm_out,nowaveheader \
/mnt/sdcard/music/something.ogg
# (created script to start it easily, of course)
चाहे मैं कितने भी आवेदन क्यों न शुरू कर दूं, बिना वाईफाई, ओरिएंटेशन और एयरप्लेन मोड के क्या खेलता है। यहां तक कि "पॉवरसेव" cpufreq गवर्नर के साथ (सब कुछ बहुत धीमा है, लेकिन संगीत ठीक चलता है)। इसलिए हार्डवेयर में इसे चलाने के लिए पर्याप्त संसाधन हैं।
अपडेट 2 करने जैसा लगता है
for i in `pgrep ''`; do schedtool -D $i; done
यानी "सभी प्रक्रियाओं के लिए आइडल प्राथमिकता निर्धारित करें" जब मैं {स्टार्ट प्रोग्राम, लॉक स्क्रीन, रोटेट स्क्रीन, तब भी म्यूजिक प्ले को ठीक बनाता है; यह गेम में कुछ इनपुट लैग की कीमत पर अन्य मोबाइल नेटवर्क स्टेशनों पर फिर से जुड़ता है। पता नहीं क्यों ऐसा होता है।