curious4dev

中国旅行、Arduinoなどを使った電子工作、その他色々。

*

8bitサウンドを出すAndroidアプリをリリースしてみた。

 

お疲れ様です。高橋です。

先日の「Androidで8bitサウンドをモノフォニックな感じで実装してみた。」で音を出す所までは行けたので、今日は画面のタッチ操作に合わせた音程の強弱の操作に移りました。

image01

こんなインターフェイスしかありませんが、低い所から高いところへ指をグリグリ動かしてみると、デロデロ~ピロピロまでが流れるようになります。

が、Windows上のAndroidエミュだとマウスでの操作しか出来ず、実際の指で操作した場合の感じがどんなもんなのか実験してみたくなりました。

ので、アプリをリリースし、明日以降、誰かの実機で試験させてもらおうと思っています。

先日のソースからの主な変更点

MainActivity内に下記のようなメソッドを追加しています。

    @Override
    public boolean onTouchEvent(MotionEvent event) {

        Log.d("TouchEvent", "X:" + event.getX() + ",Y:" + event.getY());

        switch (event.getAction()) {
        case MotionEvent.ACTION_DOWN:
            Log.d("TouchEvent", "getAction()" + "ACTION_DOWN");
            break;
        case MotionEvent.ACTION_UP:
            Log.d("TouchEvent", "getAction()" + "ACTION_UP");
            break;
        case MotionEvent.ACTION_MOVE:
            Log.d("TouchEvent", "getAction()" + "ACTION_MOVE");
            if (beforeY + 10 < event.getY() || beforeY - 10 > event.getY()) {
                playNote = (double) event.getY();
                beforeY = event.getY();
                Thread thM = new Thread(MainActivity.this);
                initScoreData();
                thM.start();
            }
            break;
        case MotionEvent.ACTION_CANCEL:
            Log.d("TouchEvent", "getAction()" + "ACTION_CANCEL");
            break;
        }
        return true;
    }

既にリリースしているというのに、Log.dを仕込ませているあたりが、漢らしいと自画自賛しております。

冗談はさておき、指の動きに合わせた音程の変化と発音部分は、onTouchEventの中で、MotionEvent.ACTION_MOVE箇所にて実装しています。

単純にY座標をそのまま周波数として利用しています。普通に考えたら可聴領域と画面サイズをダイナミックにマッピングして、高音から低音までまんべんなく鳴らすことを考えると思いますが、ここも、あえて画面サイズで表現しようとしています。

また、起動時と終了時にログを送出する機能も入れ込んでいます。

先ほどリリースしたばかりなので、まだダウンロード出来ませんが、ダウンロード出来たら少しだけ触っていただければ幸いです。

8bit Sound Generator

 

以上、よろしくお願い致します。

 - アプリ開発

  関連記事

リリースしたアプリ達が累計200DLを突破!

お疲れ様です。高橋です。 2014/12/04に最初にリリースした「カナかな?」 …

遅刻の言い訳アプリ ~ボタンの幅を動的に決定~

お疲れ様です。高橋です。 遅刻の言い訳アプリを着々と実装しています。 全体進捗 …

Google Play Developer登録

お疲れ様です。高橋です。 本日は引き続きwordpress周りの設定を行うと同時 …

androidアプリの作り方

お疲れ様です。高橋です。 androidアプリの作り方は、ググったところ大体下記 …

街頭インタビュー 入力UI実装

お疲れ様です。高橋です。 今日は文字入力UI及び、背景人物の切り替え機能を実装し …

Win7(64bit)+Unity4.5.5f1で作った物をAndroidエミュで動かしてみた

お疲れ様です。高橋です。 先ほどはcocosを使ったサンプルをエミュで動かす所ま …

TwitterアナリティクスからCSVがダウンロード出来ない

お疲れ様です。高橋です。 TwitterアナリティクスのCSV 遅刻の言い訳提案 …

androidアプリから総務省APIをコールしてみる

お疲れ様です。高橋です。 androidアプリから総務省APIをコールする事に成 …

Win7(64bit)+cocos2dx-3.2でAndroid開発環境を構築してみた

お疲れ様です。高橋です。 ゲームを作る際に、自分で1から細々とした部品を作らなく …

遅刻の言い訳アプリのDL数が急増した原因

お疲れ様です。高橋です。 ふとgooglePlayのダウンロード状況を見たら、言 …