Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 如何获取Soundpool的持续时间大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用soundpool播放音频文件,我的目标是播放音频文件,完成后播放另一个音频文件.

这是我的代码

String source_path = "/sdcard/varun/audio.mp3";



mSoundPool = new SoundPool(10,Au@L_429_7@manager.STREAM_MUSIC,0);
mSoundPool.setOnLoadCompleteListener(new OnLoadCompleteListener() {
public void onLoadComplete(SoundPool soundPool,int samplEID,int status) {
                            loaded = true;
                        }
                    });
                    sound1  = mSoundPool.load(source_path,1);

                    hand1.postDelayed(new Runnable() {

                        public void run() {
                            // TODO Auto-generated method stub
                            if (loaded) {
                                mSoundPool.play(sound1,1,time - 1,1);
                                System.out.println("playing=== a");
                            }
                        }
                    },21000);

在这里,我将值硬编码为21000,但我需要获取音频文件的持续时间,因为持续时间随每个文件而变化.我正在使用android 2.2

如何实现这一点请帮忙?

解决方法

然看起来效率低下,但您可以使用所需的声音创建MediaPlayer,然后使用mymediaPlayer.getDuration()方法为剪辑提供毫秒数.

然后,您可以@L_430_16@mymediaPlayer.release()来消除任何不需要的内存占用.在做更多研究的同时,我发现我不是唯一得出这个结论的人.这个库:

Get Duration Of Sound

使用这种确切的方法解决问题.我认为这是一种合法的方式,因为这个人看起来非常合法.

大佬总结

以上是大佬教程为你收集整理的android – 如何获取Soundpool的持续时间全部内容,希望文章能够帮你解决android – 如何获取Soundpool的持续时间所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。