Android StudioでのVisualizerについて
Android Studioで、音楽を再生しているときの波形を発生できるか試しています。
下記URLのプログラムを作成した際に、Visualizerの初期化で例外処理が発生してしまいます。
対処方法がわからないため教えていただきたいです。
発生している問題・エラーメッセージ
java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.androidaudiovisualizer/com.example.androidaudiovisualizer.MainActivity}: java.lang.RuntimeException: Cannot initialize Visualizer engine, error: -3 at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2919) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3054) at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:78) at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:108) at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:68) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1814) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:280) at android.app.ActivityThread.main(ActivityThread.java:6710) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) Caused by: java.lang.RuntimeException: Cannot initialize Visualizer engine, error: -3 ←ここです at android.media.audiofx.Visualizer.<init>(Visualizer.java:218) at com.example.androidaudiovisualizer.MainActivity.setupVisualizerFxAndUI(MainActivity.java:68) at com.example.androidaudiovisualizer.MainActivity.initAudio(MainActivity.java:52) at com.example.androidaudiovisualizer.MainActivity.onCreate(MainActivity.java:35) at android.app.Activity.performCreate(Activity.java:7136) at android.app.Activity.performCreate(Activity.java:7127) at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1272) at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2899)
該当のソースコード
private void setupVisualizerFxAndUI() { // Create the Visualizer object and attach it to our media player. mVisualizer = new Visualizer(mMediaPlayer.getAudioSessionId()); ←ここで落ちます。 mVisualizer.setCaptureSize(Visualizer.getCaptureSizeRange()[1]); mVisualizer.setDataCaptureListener( new Visualizer.OnDataCaptureListener() { public void onWaveFormDataCapture(Visualizer visualizer, byte[] bytes, int samplingRate) { mVisualizerView.updateVisualizer(bytes); } public void onFftDataCapture(Visualizer visualizer, byte[] bytes, int samplingRate) { } }, Visualizer.getMaxCaptureRate() / 2, true, false); }
試したこと
・<uses-permission android:name="android.permission.RECORD_AUDIO"/>と
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS"/>はいれています。
・setupVisualizerFxAndUI()をコメントアウトした状態では正常に動作します。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2019/03/10 05:39