quick time playerでPCの音のみを録音する
quick time playerでPCの音のみを録音したかったのですが、内臓マイクしか選択できず、外部の音も拾われてしまい困っておりました。
quick time playerでPCの音のみを拾わせる方法についてメモしておきます!
方法
sound flowerという仮想オーディオデバイスをインストールします。
以下のリポジトリのSoundflower-2.0b2.dmgをダウンロードします。
この際、スムーズにインストールされないので以下の設定を変更します。
システム環境設定→セキュリティとプライバシー→一般→AppStoreと確認済みの開発元からのアプリケーションを許可
インストールされたら、以下の設定を変更します。
Macでシステム環境設定→サウンド→出力→Soundflower(2ch)を指定
すると、以下のようにQuickTimePlayerにもSoundflower(2ch)の選択肢が出てくるので選択します。
これでPCの音のみを録音できる状態になりました!!
感想その他
デフォルトでPCの音のみを録音できないとは知りませんでした。
SQLの実行される順番
先日、HAVING構文について調べた時、条件を指定するのはWHEREと同じですが、実行される順番が違うと知りました。
そこでSQLの実行される順番について興味が湧いたので調べてみました!
SQLの実行される順番
- FROM(テーブルを指定)
- ON(テーブル結合の条件を指定)
- JOIN(テーブルを結合)
- WHERE(条件を指定)
- GROUP BY(グループ化)
- SUM、MAX、MIN、AVG、COUNT(集計関数)
- HAVING(条件を指定)
- SELECT(取得するカラムを指定)
- DISTINCT(重複行を除外)
- ORDER BY(データの取得順を指定)
- LIMIT(取得するデータの数を指定)
早い段階でデータを絞る方が処理が早くなるようです。
実際に書くときの順番
- SELECT(取得するカラムを指定)
- DISTINCT(重複行を除外)
- SUM、MAX、MIN、AVG、COUNT(集計関数)
- FROM(テーブルを指定)
- JOIN(テーブルを結合)
- ON(結合の条件を指定)
- WHERE(条件を指定)
- GROUP BY(グループ化)
- HAVING(条件を指定)
- ORDER BY(データの取得順を指定)
- LIMIT(取得するデータの数を指定)
感想その他
機会があったら大量のデータで処理速度の実験をしてみたいです!!
GROUP BYとHAVING
なんとなくの理解だったGROUP BYとHAVINGについて調べました〜
GROUP BYとは
データをグループ化する関数です。
使い方
GROUP BY カラム名 とする事で、カラムの値が同じものをグループ化してくれます。
以下のようなreviewsテーブルがあるとします。
以下のSQLだと、カラム名と値が同じデータをまとめて、その数を返してくれます。
SELECT * FROM reviews GROUP BY rate; だと変な形。。。
HAVINGで抽出結果を絞る
条件を絞る関数です。
GROUP BYと一緒に使う事で、グループ化したデータをHAVINGで絞り込むことができます。
条件を絞るという点ではWHEREと同じですが、実行される順番が違います。
WHEREはGROUP BYより先に実行され、
HAVINGはGROUP BYより後に実行されます。
感想その他
SQLの関数の実行順序や、それによって気をつけないといけない事柄についても整理したいです。
shallow: true オプション
ルーティングファイル内でshallow: trueオプションを見かけることはあったのですが、何者なのかよく分かっていなかったので調べました!
shallow: true オプションとは
ネストしたパスを作る際にshallow: trueオプションを付けることで、
show/edit/update/destroyのように親レコードのidが無くても実行できるアクションはネストしないパスを生成してくれます!
index/new/createのように親レコードのidが分からないと実行できないアクションはネストしたパスを生成してくれます。
使ってみる
- shallow: tureをつけない
Prefix Verb URI Pattern Controller#Action
reviews GET /reviews(.:format) reviews#index
POST /reviews(.:format) reviews#create
new_review GET /reviews/new(.:format) reviews#new
edit_review GET /reviews/:id/edit(.:format) reviews#edit
review GET /reviews/:id(.:format) reviews#show
PATCH /reviews/:id(.:format) reviews#update
PUT /reviews/:id(.:format) reviews#update
DELETE /reviews/:id(.:format) reviews#destroy
review_comments GET /reviews/:review_id/comments(.:format) comments#index
POST /reviews/:review_id/comments(.:format) comments#create
new_review_comment GET /reviews/:review_id/comments/new(.:format) comments#new
edit_review_comment GET /reviews/:review_id/comments/:id/edit(.:format) comments#edit
review_comment GET /reviews/:review_id/comments/:id(.:format) comments#show
PATCH /reviews/:review_id/comments/:id(.:format) comments#update
PUT /reviews/:review_id/comments/:id(.:format) comments#update
DELETE /reviews/:review_id/comments/:id(.:format) comments#destroy
- shallow: tureつける
Prefix Verb URI Pattern Controller#Action
reviews GET /reviews(.:format) reviews#index
POST /reviews(.:format) reviews#create
new_review GET /reviews/new(.:format) reviews#new
edit_review GET /reviews/:id/edit(.:format) reviews#edit
review GET /reviews/:id(.:format) reviews#show
PATCH /reviews/:id(.:format) reviews#update
PUT /reviews/:id(.:format) reviews#update
DELETE /reviews/:id(.:format) reviews#destroy
review_comments GET /reviews/:review_id/comments(.:format) comments#index
POST /reviews/:review_id/comments(.:format) comments#create
new_review_comment GET /reviews/:review_id/comments/new(.:format) comments#new
edit_comment GET /comments/:id/edit(.:format) comments#edit
comment GET /comments/:id(.:format) comments#show
PATCH /comments/:id(.:format) comments#update
PUT /comments/:id(.:format) comments#update
DELETE /comments/:id(.:format) comments#destroy
感想その他
ルーティングをネストさせ、パスで親レコードのidを渡すこともあれば、別の方法で渡すこともあるので、よい使い分けについても今度考えてみたいです。
working copyの使い方模索
一昨日、gitを使えるアプリworking copyをiPad に入れたのですが、まだ余り使い方が分かっていないので使い方を模索してみました〜
clone、ブランチ切り替え、コミット確認
左上のプラスボタンを押すと自分がアクセスできるリポジトリ一覧が出てきます。
そのほかパブリックなリポジトリであればどこでも選択できます。
リポジトリを選択したらプロトコルやパスを選択してクローンします。
クローンしてくれてます。
クローン後は左にファイルツリーが表示され、右はコミットが表示されます。
右やや上のブランチタブからブランチを切り替えることも出来ます!
画像はマスターだけですが、、、
複数ブランチが存在するリポジトリで確認した際はtigのようにブランチの関係をビジュアルで分かりやすく表示してくれました!!!
感想その他
まだまだ使い方がよく分からずスムーズな操作が出来ておりませんが、使いこなしていきたいです!!
PCよりiPadの方が持ち運びだいぶ楽なので、編集、コミット、プッシュ、プルの操作はサクッと出来るようにしたいです!!