केवल वीडियो, ऑडियो नहीं - एंड्रॉइड

यह अजीब है लेकिन यह मेरा प्रोजेक्ट हैआवश्यकता। अपने प्रोजेक्ट में मैं ऑडियो सप्रेशन वाला वीडियो चलाना चाहता हूं। ऑडियो के लिए हमारे पास एक और योजना है। तो मैं एक वीडियो चलाने के लिए VideoView का उपयोग कर सकता हूं। लेकिन यह उस फाइल का ऑडियो भी बजाता है (जिसकी मुझे आवश्यकता नहीं है)। तो मैं इस अजीब आवश्यकता को कैसे प्राप्त कर सकता हूं, अर्थात् ऑडियो के बिना वीडियो चला रहा हूं। http://developer.android.com/reference/android/widget/VideoView.html

उत्तर:

उत्तर № 1 के लिए 1

यह लिंक ऑडियो के साथ या बिना वीडियो चलाने के लिए उपयोगकर्ता को विकल्प की आपूर्ति करना मेरे वीडियो की ध्वनि को म्यूट करने में मेरी मदद की। फिर MediaExtractor, AudioTrack API (ओं) का उपयोग करके मैं फ़ाइल से ऑडियो नमूने निकाल सकता हूं और फिर मैं AudioTrack ऑब्जेक्ट का उपयोग करके उन निकाले गए नमूनों को चला सकता हूं। केवल एहतियात जो मुझे लेना है, ऑडियोट्रैक ऑब्जेक्ट का उपयोग करते समय AudioManager.STREAM_RING को बनाते हैं

audioTrack= new AudioTrack(AudioManager.STREAM_RING, 44100, AudioFormat.CHANNEL_OUT_STEREO, AudioFormat.ENCODING_PCM_16BIT, 44100, AudioTrack.MODE_STREAM);

इसलिए videoView मेरा वीडियो चलाता है, लेकिन मैं ऑडियो को सुन नहीं सकता क्योंकि STREAM_MUSIC मूक में है, ऑडियोट्रैक ऑब्जेक्ट मेरे ऑडियो को अलग से चलाता है।


उत्तर № 2 के लिए 1

मेरी राय में ऐसा करने का सबसे अच्छा तरीका वीडियो तैयार होने पर वॉल्यूम 0 पर सेट करना है। अन्य सभी समाधान जो मैंने पाया है कि अपग्रेड किए गए एपीआई का उपयोग होता है जो पूरे सिस्टम को म्यूट करता है।

यह एक सरल उपाय है

VideoView videoPreview = (VideoView) findViewById(R.id.video_view);
videoPreview.setOnPreparedListener(
new MediaPlayer.OnPreparedListener()
{
@Override
public void onPrepared(MediaPlayer mp)
{
mp.setVolume(0f, 0f);
}
}
);