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

 

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

 - アプリ開発

  関連記事

歌詞生成アプリ「カナかな?」の動詞をチューニングしてみた。

お疲れ様です。高橋です。 昨日はサーバ周りに熱中してしまってクライアント側を全く …

Androidで8bitサウンドをモノフォニックな感じで実装してみた。

お疲れ様です。高橋です。 Arduino+YMZ294で、8bitサウンドがマイ …

DAWを使って、ゲームの裏側で鳴らす音楽を作ってみた。

お疲れ様です。高橋です。 既に時期を逸してしまった、「選挙運動シミュレータ 衆院 …

総務省統計APIで引っ張ったデータをHoloGraphLibraryで可視化してみた

お疲れ様です。高橋です。 先日の「総務省の統計APIからデータを取得する」ではデ …

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

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

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

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

遅刻の言い訳提案システム 稼働四日目

お疲れ様です。高橋です。 本日も遅刻の言い訳提案システムのデータの分析と改善のた …

遅刻の言い訳アプリをリリースしてみた。

お疲れ様です。高橋です。 2/20あたりから、「合理的な遅刻の言い訳生成アプリ。 …

街頭インタビュー生成アプリ

お疲れ様です。高橋です。 街頭インタビューっぽいアプリ 街頭インタビューっぽい画 …

「遅刻の言い訳」実機デバッグ結果

お疲れ様です。高橋です。 本日、Androidを持っている同僚にお願いして、実機 …