ピアノ練習記

ピアノを練習している。 なんで練習しているのか、といえば、ピアノで弾きたい曲がたくさんあるからだ。
いい加減ギター以外にもウワモノ楽器を弾きたい、という欲求があったからだ。

一週間ほどかけて、ようやく beatles の lady madonna のイントロくらいは弾けるようになった。 経験者なら3分で弾ける曲だろう。

自分は今までギターくらいは多少弾けたが、ピアノとかドラムみたいに両手が別々に動く系の楽器は一切弾けなかった。 何でピアニストとかはそんなこと出来るのだろう、ということが度々謎だった。 ただ、練習していて思ったのだが、ピアノという楽器は、両方の手を「同時に」動かそうと思って弾けるわけでは無いということに気づいた。

右手と左手両方に脳のメモリを使って演奏出来るわけがないのである。 実際に人間同時に2つのことができない。

じゃあどうするか、というと、課題曲に対し、右手は何も考えないで弾けるようになるまで練習する、が解な気がしている。 右手は勝手に動かしておいて、左手に意識を集中するのだ。

これはギターの弾き語りの感覚に近い。 コードチェンジとかは、ほぼ意識の二割程度しか利用しない。

多分このやり方でしばらくいろんな曲は練習出来るのじゃないか、と思う。

乃木坂のバスラ 2018 に行った

2018/07/06 と 2018/07/07 で参加した。 両日とも秩父宮ラグビー場である。

アイドルのライブに行くのは初めてだった。
「ライブなら行き慣れている、いくら行ったことの無いジャンルとはいえスタンスを崩しはしない、俺はそうしてきた」と出川○朗風の心持ちで会場に向かった。

会場である秩父宮ラグビー場に入場した。
会場のファン層はかなり若く、10代 〜 20代がメイン層だった。
女子もいるとはいえ、8:2 くらいで男性ファンが多かったろうか。
遊園地でよくある、「女子トイレの列が異常に長い」というやつの性別逆転現象が起こっていた。

ライブが始まる。
会場の9割9分5厘が、サイリウムとメンバーの名前入りタオルを持って全力でコールしていた。
「ライブってのは、演奏なりを聴きに行くところだろう、"ヲイヲイ"声を出すのは何か間違っている。ミュージシャンに失礼だ」
などと 本気で 思っていたので、サイリウムもタオルも持たなかった。

ライブ中、頑なにコールもしなかった。 ただし、敬意を表するため曲終わりの拍手は必ずした。

(コールをしないという行動が)少数派だった中で自分は

「自分のスタンスは間違っていない」
「楽しみ方は人それぞれだ」

と必死に自分を説得した。

何でそういう思考になったのかわからないが、やっぱ同調圧力みたいなのが働いているのかもしれない。 コールをして、タオルを振り回してる周りの人が楽しそうだったのもある。

何故サイリウムをアイドルのライブに用いるのか、というと「自分がノッていることをアイドル側にアピール」することが目的なんじゃないだろうか、と思う。
ステージ側からみて、体を揺らしてもアイドル側からしたら分からないからだろう。

普通に参加しても楽しかった。 でも次はコールとか全力でしようと思ったので、帰ってからとりあえずサイリウムとタオルを買った

Garageband から MIDI 出力して、Piapro studio で import する

背景

  • 最近初音ミクを買った。
  • ボカロやってる会社の後輩と以下のような会話を行った。

会話内容

- 自分「piapro studio ってやつ触ってみたけど、死ぬほど使いづらいのでは」
- 後輩「そうですね〜」
- 自分「だいたいどうやって曲作ってんの?」
- 後輩「midi ファイル export して piapro に読み込ませてますね〜」


  • というわけで、midi ファイルで読み込ませることにした。

  • 自分は Logic とか Cubase とか高尚な DAW は利用できないので、庶民的な DAW である Garageband を使うことにしている。

しかし

  • 色々ググった結果、Garageband は、midi を 吐くのをサポートしてないっぽい。
  • なので、色々ググった結果を示す(結果として出来た)。

本環境

結論

  • MIDIGarageband で作る。
  • Apple Loops として aif として export する。
  • aif を GB2MIDI で mid ファイルとしてアウトプットする。
  • mid ファイルを piapro studio で import
  • めでたしめでたし

詳細

MIDIGarageband で作る => aif で export する

  • これは普通にやる

f:id:fjwr38:20171029064212p:plain

  • edit => join region でリージョンをつなぐ

f:id:fjwr38:20171029064411p:plain

  • Apple Loops として保存する
  • これは aif ファイルとなる
  • 名前はなんでも良い(ここでは midi-test とする)

f:id:fjwr38:20171029064522p:plain

f:id:fjwr38:20171029064611p:plain

aif を mid に変換する

  • どうやら自分の場合は以下のパスに 前項で出力した aif があった。
  • $HOME/Library/Audio/Apple Loops/User Loops/SingleFiles
  • これはバージョン(GarageBand のバージョン)によって違うかも

nf:id:fjwr38:20171029064903p:plain

  • 適当に デスクトップにファイルを移動する
  • 下記のような mv コマンドを打てば OK
  • どうやら Library ファイル配下は、 root になっても良い感じに Finder とかで開けないっぽい(多分 GUI が root じゃないからだろうが)。
$ mv midi-test.aif $HOME/Desktop
  • GB2MIDIをダウンロードする
  • zip を解凍して、アプリを開く
  • 「RUN」でファイル選択画面になるので、上記の midi-test.aif を開く

f:id:fjwr38:20171029065216p:plain

piapro で読み込む

  • あとは piapro studio から midi を読み込めば良い

f:id:fjwr38:20171029065429p:plain

ソース

scotttroyer.com

773mbar GarageBandからmidiファイルに書き出す

homebrew の formula ロールバック

背景

  • ricty を入れようとしたら、華麗にバグを踏んだ。
    • homebrew で入れるとバグるらしい

github.com

  • so I manually reverted to the previous version of Fontforge with brew edit fontforge (just copied and pasted the old formula). とあり、$ brew edit なるコマンドがあることを知り、適当にいじる。
  • 適当にいじりすぎたので、華麗にエラーしまくった。

ロールバック方法を調べる

  • 何か設定ファイル消すか何かして、戻せばええやろって思ってたけど、homebew 弱なので、調べてもよくわからない。
  • どうやら、Formula は git で管理されてるっぽいので、戻せるらしい

stackoverflow.com

なので、

  • brew edit して、shift-g してフルパスを表示させてやることでどこにファイルがあるか、とりあえず分かる。

f:id:fjwr38:20170811064410p:plain

Git で Version から当時のソースをあさりたいとき

背景

  • bundler / Gemfile.lock みたいに色んなバージョンが可視化されて、管理されていれば良いが実際はそんなユートピアでは無い。
  • 低意識で yum install とかした日には、最新版が入ってくる
  • 原因を特定する際にソースを漁ったりするが、その時に結構忘れるので、アレだな、って思ったのでメモっとく

具体例

  • 何となく puma の例で見る
$ git clone https://github.com/puma/puma
$ cd puma
  • タグを見る
$ git tag
v1.0.0
v1.1.0
v1.1.1
v1.2.0
v1.2.1
v1.2.2
v1.3.0
v1.3.1
v1.4.0
v1.5.0
v1.6.2
v2.0.0

version => revision

  • バージョンから リビジョンを見る
$  git rev-list -n 1 v1.0.0
cd4d8722ccd6027c4e6a6d7998d6e117998945a8
  • github でみる(プラットフォームにロックインしているので汎用的では無い)
ブラウザで 以下のURL を開く https://github.com/puma/puma/tree/cd4d8722ccd6027c4e6a6d7998d6e117998945a8

ローカルに clone して当時のソースを漁る

  • checkout するらしい
$ git checkout cd4d8722ccd6027c4e6a6d7998d6e117998945a8

Reference

  • 何かググったら出てきた気がする

高いバイオリンとそうでないものの違いについて

専門的にバイオリン弾いている人に聞いてみた所

  • 正直差は分からないと思う。
  • が、出る音の幅の違いは結構ある。
  • 「この曲にはこういう音色が必要だよね」っていうのがやっぱりあるらしい。
  • というわけで、良いバイオリンは色々な音色が出せる、また弾き手によって違うってこともあるかな、っていう。

top を ローカルでビルド => gdb でアタッチする

動機

  • なんかやりたかった

下準備 / インストー

$ git clone git@github.com:soarpenguin/procps-3.0.5.git
  • とりあえず 無意識で install すると、/usr/bin にインストールされるので、注意( VM ならまぁ問題なかろう)
  • tmp に作ることにする。
  • なお、Makefile の書き方も読み方も全く知らない
$ mkdir /tmp/sample

$ cd procps-3.0.5

$ make 

# 空気的に DESTDIR で ビルドディレクトリ指定するっぽいのでしている
$ sudo make install DESTDIR=/tmp/sample
install -D --owner 0 --group 0 --mode a=rx --strip uptime /tmp/sample/usr/bin/uptime
install -D --owner 0 --group 0 --mode a=rx --strip tload /tmp/sample/usr/bin/tload
install -D --owner 0 --group 0 --mode a=rx --strip free /tmp/sample/usr/bin/free
install -D --owner 0 --group 0 --mode a=rx --strip w /tmp/sample/usr/bin/w
install -D --owner 0 --group 0 --mode a=rx --strip top /tmp/sample/usr/bin/top
install -D --owner 0 --group 0 --mode a=rx --strip vmstat /tmp/sample/usr/bin/vmstat
install -D --owner 0 --group 0 --mode a=rx --strip watch /tmp/sample/usr/bin/watch
install -D --owner 0 --group 0 --mode a=rx --strip skill /tmp/sample/usr/bin/skill
  • ここまで来たら、ビルドしたバイナリにアタッチする
$ gdb /tmp/sample/usr/bin/top
GNU gdb (GDB) Red Hat Enterprise Linux (7.2-92.el6)
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /tmp/sample/usr/bin/top...(no debugging symbols found)...done.
  • と思いきや、no debugging symbols found と出る
  • 明らかにダメっぽかったので、StackOverflow で聞いてみた。

stackoverflow.com

  • すると、gdb の オプションの strip がダメっぽかったので、--strip オプションを外してみた
  • 以下は git diff の結果

f:id:fjwr38:20170519232103p:plain

  • 今度はビルドメッセージに --strip が出なかったので、起動してみる
$ gdb /tmp/sample/usr/bin/top
GNU gdb (GDB) Red Hat Enterprise Linux (7.2-92.el6)
Copyright (C) 2010 Free Software Foundation, Inc.
License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
This is free software: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
and "show warranty" for details.
This GDB was configured as "x86_64-redhat-linux-gnu".
For bug reporting instructions, please see:
<http://www.gnu.org/software/gdb/bugs/>...
Reading symbols from /tmp/sample/usr/bin/top...done.
  • すると今度は no debugging.. が出ない
(gdb) b configs_read
# Ctr-x + a で画面を出す
(gdb) r
  • すると、以下のような画面になる

f:id:fjwr38:20170519232354p:plain

  • どうやらアタッチ出来たっぽい。
  • これで恐らくソースを追うことが出来るだろう。
  • 次回に続く(多分)