aboutsummaryrefslogtreecommitdiffstats
path: root/src/com/pheelicks/app/MainActivity.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/pheelicks/app/MainActivity.java')
-rw-r--r--src/com/pheelicks/app/MainActivity.java208
1 files changed, 0 insertions, 208 deletions
diff --git a/src/com/pheelicks/app/MainActivity.java b/src/com/pheelicks/app/MainActivity.java
deleted file mode 100644
index a2d52dd..0000000
--- a/src/com/pheelicks/app/MainActivity.java
+++ /dev/null
@@ -1,208 +0,0 @@
-/**
- * Copyright 2011, Felix Palmer
- *
- * Licensed under the MIT license:
- * http://creativecommons.org/licenses/MIT/
- */
-package com.pheelicks.app;
-
-import java.io.IOException;
-
-import android.app.Activity;
-import android.graphics.Color;
-import android.graphics.Paint;
-import android.graphics.PorterDuff.Mode;
-import android.graphics.PorterDuffXfermode;
-import android.media.MediaPlayer;
-import android.os.Bundle;
-import android.view.View;
-
-import com.pheelicks.utils.TunnelPlayerWorkaround;
-import com.pheelicks.visualizer.R;
-import com.pheelicks.visualizer.VisualizerView;
-import com.pheelicks.visualizer.renderer.BarGraphRenderer;
-import com.pheelicks.visualizer.renderer.CircleBarRenderer;
-import com.pheelicks.visualizer.renderer.CircleRenderer;
-import com.pheelicks.visualizer.renderer.LineRenderer;
-
-/**
- * Demo to show how to use VisualizerView
- */
-public class MainActivity extends Activity {
- private MediaPlayer mPlayer;
- private MediaPlayer mSilentPlayer; /* to avoid tunnel player issue */
- private VisualizerView mVisualizerView;
-
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- }
-
- @Override
- protected void onResume()
- {
- super.onResume();
- initTunnelPlayerWorkaround();
- init();
- }
-
- @Override
- protected void onPause()
- {
- cleanUp();
- super.onPause();
- }
-
- @Override
- protected void onDestroy()
- {
- cleanUp();
- super.onDestroy();
- }
-
- private void init()
- {
- mPlayer = MediaPlayer.create(this, R.raw.test);
- mPlayer.setLooping(true);
- mPlayer.start();
-
- // We need to link the visualizer view to the media player so that
- // it displays something
- mVisualizerView = (VisualizerView) findViewById(R.id.visualizerView);
- mVisualizerView.link(mPlayer);
-
- // Start with just line renderer
- addLineRenderer();
- }
-
- private void cleanUp()
- {
- if (mPlayer != null)
- {
- mVisualizerView.release();
- mPlayer.release();
- mPlayer = null;
- }
-
- if (mSilentPlayer != null)
- {
- mSilentPlayer.release();
- mSilentPlayer = null;
- }
- }
-
- // Workaround (for Galaxy S4)
- //
- // "Visualization does not work on the new Galaxy devices"
- // https://github.com/felixpalmer/android-visualizer/issues/5
- //
- // NOTE:
- // This code is not required for visualizing default "test.mp3" file,
- // because tunnel player is used when duration is longer than 1 minute.
- // (default "test.mp3" file: 8 seconds)
- //
- private void initTunnelPlayerWorkaround() {
- // Read "tunnel.decode" system property to determine
- // the workaround is needed
- if (TunnelPlayerWorkaround.isTunnelDecodeEnabled(this)) {
- mSilentPlayer = TunnelPlayerWorkaround.createSilentMediaPlayer(this);
- }
- }
-
- // Methods for adding renderers to visualizer
- private void addBarGraphRenderers()
- {
- Paint paint = new Paint();
- paint.setStrokeWidth(50f);
- paint.setAntiAlias(true);
- paint.setColor(Color.argb(200, 56, 138, 252));
- BarGraphRenderer barGraphRendererBottom = new BarGraphRenderer(16, paint, false);
- mVisualizerView.addRenderer(barGraphRendererBottom);
-
- Paint paint2 = new Paint();
- paint2.setStrokeWidth(12f);
- paint2.setAntiAlias(true);
- paint2.setColor(Color.argb(200, 181, 111, 233));
- BarGraphRenderer barGraphRendererTop = new BarGraphRenderer(4, paint2, true);
- mVisualizerView.addRenderer(barGraphRendererTop);
- }
-
- private void addCircleBarRenderer()
- {
- Paint paint = new Paint();
- paint.setStrokeWidth(8f);
- paint.setAntiAlias(true);
- paint.setXfermode(new PorterDuffXfermode(Mode.LIGHTEN));
- paint.setColor(Color.argb(255, 222, 92, 143));
- CircleBarRenderer circleBarRenderer = new CircleBarRenderer(paint, 32, true);
- mVisualizerView.addRenderer(circleBarRenderer);
- }
-
- private void addCircleRenderer()
- {
- Paint paint = new Paint();
- paint.setStrokeWidth(3f);
- paint.setAntiAlias(true);
- paint.setColor(Color.argb(255, 222, 92, 143));
- CircleRenderer circleRenderer = new CircleRenderer(paint, true);
- mVisualizerView.addRenderer(circleRenderer);
- }
-
- private void addLineRenderer()
- {
- Paint linePaint = new Paint();
- linePaint.setStrokeWidth(1f);
- linePaint.setAntiAlias(true);
- linePaint.setColor(Color.argb(88, 0, 128, 255));
-
- Paint lineFlashPaint = new Paint();
- lineFlashPaint.setStrokeWidth(5f);
- lineFlashPaint.setAntiAlias(true);
- lineFlashPaint.setColor(Color.argb(188, 255, 255, 255));
- LineRenderer lineRenderer = new LineRenderer(linePaint, lineFlashPaint, true);
- mVisualizerView.addRenderer(lineRenderer);
- }
-
- // Actions for buttons defined in xml
- public void startPressed(View view) throws IllegalStateException, IOException
- {
- if(mPlayer.isPlaying())
- {
- return;
- }
- mPlayer.prepare();
- mPlayer.start();
- }
-
- public void stopPressed(View view)
- {
- mPlayer.stop();
- }
-
- public void barPressed(View view)
- {
- addBarGraphRenderers();
- }
-
- public void circlePressed(View view)
- {
- addCircleRenderer();
- }
-
- public void circleBarPressed(View view)
- {
- addCircleBarRenderer();
- }
-
- public void linePressed(View view)
- {
- addLineRenderer();
- }
-
- public void clearPressed(View view)
- {
- mVisualizerView.clearRenderers();
- }
-} \ No newline at end of file