2018年6月21日木曜日

Audio MIDI アプリを使って USB マイク 2 本で収録する方法

概要

前回 ECM-PCV80U 2 本と Mac を使って録音する方法を紹介しました
問題としてトラックが同じになってしまうという問題がありました
Mac に標準で搭載されている Audio MIDI アプリを使うと解決することができたので紹介します
そしてこの方法を使えば Soundflower も LadioCast もいらないので標準のアプリだけで完結されることができます

環境

  • MacBook Air (10.13.5)
  • GarageBand 10.2.0
  • Audio MIDI
  • SONY ECM-PCV80U

Audio MIDI でマイクをバンドルする

Audio MIDI は複数の入力/出力機器を束ねて 1 つの仮想的な装置を作成することができます
GarageBand は 1 つの入力しか受け付けることができませんでしたがこの機能を使うと 1 つの入力の中に複数の入力装置を含めることができます

まず Audio MIDI 設定アプリを開きます
そして、一番下の「+」ボタンから「機器セット作成」を選択します
audio_midi_podcast1.png

新たに機器セットが作成されます
使用するデバイスを右ペインから選択しましょう
今回は USB 接続した UAB-80 x2 を選択します
また機器の名前も決めることができるので好きな名前を設定します
audio_midi_podcast2.png

GarageBand の設定

まず設定から入力装置を選択しましょう
システム設定になっている場合は Mac のサウンドの設定から出力装置を先ほど作成した Podcast Mics にしてください

そして 2 つのトラックを作成します
1 つ目のトラックの入力は「1 (Podcast Mics)」を選択します
audio_midi_podcast3.png

そして 2 つ目のトラックは「2 (Podcast Mics)」を選択します
こうすることで 1 つの GarageBand への入力から複数のトラックでの録音を実現することができます
audio_midi_podcast4.png

また各トラックの設定を「録音可能状態」にしておきましょう
デフォルトだと ON になっていないので、トラックを右クリックして「トラックヘッダを設定」->「録音可能」にチェックをしてください
こうすることで録音ボタンを押した際にすべてのトラックの録音が同時に開始されます
audio_midi_podcast6.png

動作確認

あとはマイクを ON にして録音を開始すれば OK です
それぞれのマイクの声がそれぞれのトラックとして録音されると思います

もしマイクの音を調整したい場合は普通にサウンドからそれぞれのマイクの設定を変更すれば OK です
audio_midi_podcast5.png

最後に

Audio MIDI アプリを使って複数の USB マイクの声を別のトラック情報として録音する方法を紹介しました
Podcast の収録方法はいろいろと紹介してきたのですが、USB マイクを使う場合おそらくこれが一番簡単で王道な方法だと思います

まず一番に純正アプリだけでできるというのが嬉しい点です

参考サイト

2018年6月20日水曜日

SONY ECM-PCV80U 2 本と Mac 1 台を使って Podcast を録音する方法

概要

過去に Skype を使った Podcast 収録方法をご紹介しました
今回はマイク 2 本と Mac 1 台を使ってローカルに 2 人の声を収録する方法を紹介します

環境

  • MacBook Air (10.13.5)
  • Soundflower
  • LadioCast 000012004
  • GarageBand 10.2.0
  • SONY ECM-PCV80U

マイクは USB 端子を使って直接 MacBook Air に接続すれば OK です
two_mic_podcast1.jpg

なぜこの構成にするのか

遠隔地の方とやる場合は過去に紹介した Skype をつかう方法でいいのですが対面で収録する場合には Skype は不要です
逆に Skype を使ってしまうと収録している声とリアルで聞こえることにラグが生まれてしまい非常にしゃべりづらいです
なので、対面の場合にはローカルに直接録音しています

実は過去にマシンを 2 台使ってそれぞれのマシンに録音する方式をとっていました
それぞれのマシンにそれぞれの声を録音しあとで 2 つの声を合体することで会話にしていました
それでも問題ないのですがそれだと単純に 2 台のマシンを持ち歩かないといけないので大変です

という理由でマイク 2 本+ Mac 1 台という構成で録音する方法を紹介します

あとは実はこの構成を紹介しているサイトや情報があまりなく、同じように困っているように人が多いように見受けられ、やってみたところ上手くいったので紹介します

設定方法

マイクと Mac は上の写真のように USB 端子を使って直接接続すれば OK です

事前準備

今回使用するソフトウェアは

  • Soundflower (公式から)
  • LadioCast (Mac App Store から)
  • GarageBand (Mac App Store から)

です
こららのソフトは事前にインストールしておいてください

Mac のサウンド設定

two_mic_podcast2.png

入力装置を「Soundflower (64ch)」にします
2ch でもできると思いますが今回は 64ch にしました
また、マイクが 2 本認識されていることも確認してください

GarageBand 設定

two_mic_podcast3.png

環境設定です
出力デバイスと入力デバイスは先ほど設定したシステム設定を使います

two_mic_podcast4.png

トラックはオーディオトラックを 1 つ追加します
そして下部のトラックの入力を「Soundflower (64ch)」にします

LadioCast の設定

two_mic_podcast5.png

入力1 を「UAB-80」入力2 をもう一方の「UAB-80」にします
表示上はどちらも同じなのですがプルダウンを開くと 2 つの UAB-80 があるのでそれぞれで別のものを選択してください

そして入力1 と入力2 の「メイン」のボタンを有効にします

出力メインは「Soundflower (64ch)」にします

ようするに 2 つのマイクの入力を Soundflower (64ch) にまとめて 1 つのチャネルにしそのチャネルへの出力を GarageBand で録音する感じです

今回の構成のデメリット

LadioCast で 2 つの入力を 1 つの出力にまとめている関係上、GarageBand でそれぞれの声を別のトラックとして録音することができません

これは例えば自分の声だけゲインするということができません
録音したら相手の声があまり聞こえないから相手側だけゲインしたり相手のノイズが酷いので相手側だけノイズ削除するということもできません

録音した結果お互いの声がほぼ同じ声量であれば問題ないのですがそうでない場合に今回の構成は弱いです
特に ECM-PCV80U はマイクと口の距離が離れていると声が小さくなりがちです
10cm 以内であればはっきり声が聞こえますがそれ以上離れると途端に声が小さくなってしまいます
なのでなるべくマイクを近づけて収録しなければならないというデメリットもあります

そういった場合には実は Skype を通して録音したほうが良いというケースもあります
Skype には自動でマイク音量を調整する機能があるので、声が小さい場合に自動で大きくしてくれます

あとは単純に他のマイクを使うという手がありますが、そうすると逆に今回の構成は取れないと思います
ECM-PCV80U はバスパワー方式のコンデンサマイクで USB 端子で動作するのが最大の特徴です
他のコンデンサマイクのようにファンタム電源のような特殊な電源が不要で USB に挿すだけで使えるので今回の構成を取ることができます

最後に

ECM-PCV80U 2 本と Mac 1 台を使って Podcast を収録する方法を紹介しました
ECM-PCV80U はコスパが良いマイクとして有名ですが、使ってみた感じだと正直 Podcast には向いていない気がしています

ただバスパワー方式という特徴を利用して今回のような構成を取ることができるのは嬉しい点かなと思います

2018年6月11日月曜日

ニフクラ DNS でサブドメインを委譲してみよう

概要

サブドメインの委譲とは簡単に言えば別の DNS サーバでレコードを管理することができる機能です

環境

  • ニフクラ (2018/06/11 時点)

やりたいことは以下の通りです
nifcloud_dns0.png

A 側が委譲する側で B 側が委譲される側です
委譲されたあとは B 側に対して操作することになります

A側: サブドメインを登録する

まずは A 側にサブドメインを登録しましょう
この段階ではまだ登録できません
nifcloud_dns1.png

「登録する」を選択すると次の画面で登録する TXT レコードの情報が表示されるのでメモしておきましょう

B側: TXT レコードを登録する

先程表示された TXT レコードを B 側に登録しましょう
要するに委譲する B 側がちゃんと自分の持ち物であるかチェックします
以下のように登録しましょう
nifcloud_dns2.png

タイプに TXT を選択して値に認証用の文字列を入力します
問題ないなら「確認へ」を選択しましょう
こんな感じで登録されれば OK です
nifcloud_dns3.png

A側: 認証する

あとは先程認証できなかった A 側で認証すれば OK です
「認証処理を実行する」を選択しましょう
ちゃんと B 側の DNS サーバに TXT レコードが設定されていれば以下のように認証完了画面が表示されます
nifcloud_dns4.png

動作確認

あとは A 側に A レコードを追加してみてちゃんと IP が引けるか確認してみましょう
特に問題なく引けると思います

また認証が完了した後は B 側の TXT レコードは削除して OK です

最後に

ニフクラ DNS でサブドメインの委譲やってみました
委譲する側で TXT レコードを設定するだけなので簡単です
今回はニフクラ DNS -> ニフクラ DNS でやりましたが、ニフクラ DNS -> Route53 なども同じやり方でできます

サブドメインは別の DNS で管理するということはよくあるユースケースかなと思います

2018年5月24日木曜日

ゲスト一覧ページ、ゲストが登場したエピソード検索、文字列によるエピソード検索機能を追加しました

概要

Podcast 用のページに 3 つほど機能を追加したので紹介します

環境

  • Ruby 2.4.1p111
  • Sinatra 2.0.1
  • jQuery 3.3.1

ゲスト一覧ページ

これまで参加していただいたゲストの一覧ページが確認できるようになりました

podcast_new_functions1.png

あまりいけてない実装なのですがページにアクセスするごとに Twitter API と Github API をコールしています
メタ情報が更新されること考慮した対応なのですが、そのせいで若干ページの読み込みに時間がかかります
またアクセスしすぎると Rate Limiting に引っかかる可能性もあるので頻発するようならデータをキャッシュしてそれを表示するような仕組みに変更します

ゲストが登場したエピソード検索

先ほどのゲストの一覧ページに Search episodes というリンクがあります
例えば kakakikikeke の場合以下のように参加したエピソードの一覧が表示されます

podcast_new_functions2.png

「あの人が出たエピソードどれだっけな」という場合に使える機能かなと思います
URL でアクセスすることもできるのでゲスト名がわかれば直接 URL でアクセスして確認することもできます

文字列によるエピソード検索機能

エピソードの一覧ページに検索バーを設置しました
ここに自然言語を入れてもらうとエピソードの一覧を検索できます

podcast_new_functions3.png

現在はページ内で見えている自然言語のみに対応しています
サーバサイドに問い合わせて検索しているわけではなく jQuery の filter 機能を使って DOM の制御をしているだけです
もしエピソードの内で登場した内容や言葉で検索したいというケースが出てきた場合には、そういった機能も今後追加しようかなと思っています

最後に

自分のページはレスポンシブデザインに対応しているはずなのでスマホでも良い感じに使えると思います
機能の要望などがあれば Twitter またはブログのコメントなどでご連絡ください

なお本機能はサイトのみの提供になるので Podcast アプリなどでは使えません
サイトで聞いていただく場合にご利用いただければと思います

2018年5月23日水曜日

Podcast を始めてみました

概要

ここ 1 ヶ月で Podcast を始めてみました
収録環境や始めるまでの手順、躓いた点などを紹介します
また、初めに説明しておきますが本 Podcast は完全に個人で進めているものなので所属する団体、組織の見解は一切含まれておりません (念のため)




収録環境

過去にさらっと紹介した環境が何だかんだ詳しいのでそちらを御覧ください
基本は Skype を使って録音しています
上記の方式だとゲストの人数分マシンが必要になります




配信に必要なもの

Podcast を始めるのに最低限必要なものは諸説ありますが個人的にこれらが必要だと思ったものを紹介します

  • マイクなどの機材
  • 専用サイト (ドメイン+サーバ)
  • 配信サーバ
  • RSS フィード
  • ゲストの皆々様
  • Podcasts Connect への登録 (最終段階)

それぞれ詳細に説明します

マイクなどの機材

これは冒頭で説明した環境の通りなのですが言いたいこととしては

スマホだけとか、PC の内蔵マイクとか使わないでちゃんと専用の機材を買ったほうが良い

ということです
「何故か」答えは簡単で「良い音源にするため」が全てだと思います

また機材さえあればいつ誰とでも録音できるのもメリットかなと思います (持ち歩くのは非常に大変ですが)
ただ「どこでも」というわけにはいかずゲストと遠隔で収録する場合はゲストの機材がそろっている必要があります

あとはちゃんと機材を購入したほうがそれとなく続けられるモチベーションを保てるというのもあるかもしれません

専用サイト

自分は http://kakakikikeke.com/pocast という Podcast 用のサイトというかページを作成しています

専用サイトの役割としては

  • エピソードの一覧の紹介、検索
  • ゲストの紹介
  • RSS フィードの配信 (詳しくは後述)
  • 音源の配信

などを行っています
正直、専用サイトは必須というわけではありません
がこれもあったほうが良いと思います

特にエピソードの紹介ページでそのエピソード内でどんなことを話したかという Show note を掲載することができます
テキストで残しておくことで配信を聞くことなくどんな内容なのか知ることができます
これはリスナーの方々ためでもあり自分が聞き直すときにエピソードを探すのにも役に立っています

音源 (mp3) の配信もサイトと同じサーバで行っています
実はこれはあまり良くないかなと思っていていずれどこかのクラウドサービスに移行する予定です
というのも音源は今後も増え続けることが考えられストレージを逼迫し続ける問題があるからです
当然逼迫すればストレージの拡張が必要になり運用も必要です
なので、それらを解決するためにクラウドサービスを使う予定です
とは言え現状はそこまでエピソードもアクセスも多くないのでサイトから配信しています

この辺、個人でやるのにおすすめのクラウドサービスがあれば教えていただきたいです

ドメインに関して

よく Podcast をやっている方のサイトのドメインを見ると .fm ドメインが多いです
当然ですがこれも必須というわけではないです
.fm ドメインは少し特殊なドメインでかつ値段もそれなりなのでコストを考えて .com などで配信しても全く問題ないと思います

配信サーバ

主には音源 (mp3) を配信するサーバになります
他のコンテンツ、例えば RSS フィードなどを配信する専用のサーバを立てても OK です

先程も少し説明したとおりサイトとは別のサーバもしくはクラウドサービスから配信するのをおすすめします
お金はかかるかもしれませんが Podcast を長く続けたい場合は必須かなと思います

このあたりは運用という面も絡んでくるのでそういうのが好きな方は自分で構築、管理しても全然良いかなと思います
自分は面倒なことは極力避けたいタイプなのでクラウドサービスに移行予定です

RSS フィード

Podcast というかネットラジオを始めるのに必須というわけではありませんが iOS の Podcast に登録するには RSS フィードが必須です

Podcast の仕組み自体たくさんの RSS フィードを配信しているサービスになり、登録するための Apple のサイト Podcasts Connect にアクセスするといきなりフィードの登録画面になるくらいです

また配信する RSS フィードも少し特殊なフィードになっており必要なタグがいくつかあるので公式のヘルプページなどを参考に RSS フィードを構築するようにしてください

ちなみに自分は他の有名な配信者のフィード情報を幾つか見て作成したのでその手もあると思います
ちなみに自分は今のところ

で配信しています
これももしかするといずれ移行するかもしれませんが、おそらく RSS フィードを移行した場合は再度 Podcasts Connect でフィードの登録が必要になると思います (編集だけで新規登録は不要かもしれません)

RSS フィード配信テクニック

いろいろ調べてみると WordPress を使うのがいろいろと手っ取り早く Podcast を始めることができるらしいです
WordPress は言わずと知れたブログツールですが、これのプラグインに Podcast を始めるためのプラグインがたくさんあるようです

要するにエピソードを記事としてポストすると RSS フィードにも自動的に載りかつ Podcasts Connect に対応したフィードを生成してくれるようです
他にも音源の配信などを手助けもしてくれる機能もあるようです (詳しく見ていないので不確かです)

「podcast wordpress」あたりでググればたくさん出てくるので興味あれば調べてみてください
まぁただ Wordpress 自体はどこでホスティングするんだという問題は別途発生してしまいます、、、
最近だと heroku でも簡単にホスティングできるので heroku + CNAME でやるのは手かなと思います

ゲストの皆々様

自分の Podcast は独り語り Podcast ではなく毎回ゲストを読んでお話する感じで進めています
というのも独り語りできるほど話術、語彙力があるわけではないので単純に複数人いたほうが話しやすいのでゲストを招待して話しています

また一応テクノロジー系 Podcast にしようかなと思っているので、各分野 (インフラからミドルウェア、アプリ、スマホなど) に精通したたくさん方々に出ていただくことでおもしろいコンテンツになるかなと思っています

ただ、今一番自分が痛感しているのがゲストの方々のブッキングです
数週間くらい前から収録スケジュールを押さえさせていただいてはいるのですが突発的に予定が入ることもありドタキャンをくらうこともしばしばあります
なのでその場合に急遽別のゲストの方をブッキングするのですが、それもまた大変で当然緊急で出ていただける方は多くいません
そんなこんなでゲストのアサインに翻弄される時間のほうが実は収録している時間よりも長かったりするかもしれません

それでもゲストの皆々様には本当に感謝しています

Podcasts Connect への登録

先程 RSS フィードの話をしたときに少し出てきましたが iOS の Podcast から聞きたい場合は登録が必要です
一応審査があり年齢制限に抵触していないかカテゴリと内容はあっているかなどのチェックをしてくれているんだと思います
iOS のアプリの審査よりかは通りやすい印象はあります

ちなみにこの Podcasts Connect への登録も必須ではありません
結局サイトで配信していてそこでブラウザを使って聞けるのであればそれでも OK です

ただ、Podcast から聞けるとメリットもたくさんあり単純に Podcast の検索に引っかかりリスナーさんが増える可能性が上がります
また、レジューム再生やダウンロード機能もあるのでオフラインでも聞くこともできるようになります (自分もサイトも mp3 のダウンロード機能があるのでダウンロードしていただければオフラインで聞けます)
あとは Podcast は実は Android にも進出しており Android 用の Podcast アプリを使っている方にもアプローチできます

という感じでデメリットよりもメリットが多いので RSS フィードを持っているのであればとりあえず登録することを進めます

あとちょっと不明だったのですが Podcasts Connect の登録に Apple Developer への登録が必要なのかどうかわかりませんでした
というもの自分のアカウントはアプリを公開しているものありすでに Apple Developer に登録していたので特に Podcasts Connect へ登録する際にエラーになりませんでした
もし Apple Developer への登録が必須だとすると年額費用がかかるので途端ハードルが上がってしまうかなと思います (先に言えという感じですが)

まとめ

ということで個人 Podcast を始めてみました
どれも必須というわけではありません
結局ネットラジオなので絶対に必要なのは「音源」だけですが、調べるといろいろと奥が深かったので記事にしてみました

最近は日本人の方でも Podcast を始めている方が増えている印象はあります
Podcaster meetup とかもやりたいなーと思ったりしています

目標はエピソード 100 までやることです
興味あれば購読お願いします
Podcast アプリで聞いていただける方は「kakakikikeke」で検索するか以下のリンクから購読お願いします



2018年4月21日土曜日

Mac Book Air で Podcast 収録メモ

概要

とりあえず録音できる環境が整ったので紹介します
とりあえず忘れないようにメモしたいので詳細は省いています
あとでまとまったら清書しようと思います

環境

  • macOS 10.13.4
  • Skype 8.19.0.1
  • GarageBand 10.2.0
  • Ladiocast 000012004
  • Soundflower 2.0b2
  • ソニーコンデンサマイク ECM-PCV80U

マイク接続

今回使用した ECM-PCV80U は USB で使えるマイクです
Mac Book Air の場合マイク端子がないので USB マイクを使いました
podcast_setup0.jpg

Mac Book Air のサウンド設定

podcast_setup1.png

出力装置を Soundflower (2ch)
入力装置を接続したマイクにします UAB-80

また音量は MAX くらいにすることをおすすめします
あとで設定する Skype 側の音量が小さくなるのを防ぐためです

Ladiocast の設定

Ladio キャストはソフトウェアミキサです
マイクと後で紹介するスカイプの音をミックスして一つの出力にまとめます
podcast_setup2.png

入力1 を Soundflower (2ch) で「メイン」と「Aux1」のボタンを ON にします
入力2 をマイクの UAB-80 にしてこちらも「メイン」と「Aux1」のボタンを ON にします
出力のメインを Soundflower (64bit) にします
この出力を GarageBand で録音します
出力 Aux1 は UAB-80 にします
ECM-PCV80U にはヘッドホンの出力端子がありそこでマイクと Skype の音を聞くために Aux1 に設定します

P.S 20180509 Skype を通して音が二重に聞こえる場合の対処

もし相手側の音が二重に聞こえる場合は UAB-80 の音量を少し下げてみてください
コンデンサマイクの感度がかなり良いので相手の声を自分のマイクで拾ってしまっているせいで二重に聞こえることがあるようです
特にこの現象はコンデンサマイク+対面で話などをしている時に発生しやすい現象です
podcast_setup8.png

P.S 20180523 相手と自分の声のバランスが悪い場合の対処

例えば Garageband で録音した場合に波形の高さがバラバラになる場合があります
podcast_setup9.png

この場合は上記の Soundflower の「入力1」と「入力2」のスライドを左右に動かして各音量を調整していください
今回の場合であれば「入力1」が相手側の音量 (Skype からの声)「入力2」が自分の声 (マイクからの声) になります
なので「入力1」を少し左に「入力2」を少し右にスライドすると波形がきれいになると思います

Skype の設定

podcast_setup3.png

オーディオとビデオの設定から

podcast_setup4.png

マイクを USB-80
スピーカーを Sounfflower (2ch) にします
要するに Skype の音を Soundflower に出力することで音をミックスします
(もしかすると「既定のデバイス」でも問題ないかもしれません。既定のデバイスの場合 Mac のサウンド設定を見るので前述したサウンドの設定がちゃんとできていれば Skype 側の設定は不要です)

GarageBand の設定

あとは Ladiocast のメイン出力である Soundflower (64ch) を GarageBand で録音します

環境設定から出力を Soundflower (64ch) にします
podcast_setup6.png

プロジェクトを適当に作成します

podcast_setup5.png

マイクのプロジェクトを作成すると良いと思います
トラックを選択して入力の部分を Soundflower (64ch) にしましょう
これで Skype とマイクの音をミックスした音を録音することができます

ノイズゲートは ON にして -50db くらいにすると良いと思います

録音開始

Skype で相手に電話しましょう
繋がって相手の声が問題なく聞こえたら準備 OK です
あとは GarageBand で録音ボタンを押せば Skype を通じて複数人の相手と自分の声を録音することができます

収録後

GarageBand で mp3 を出力

特に何も設定しないで mp3 で書き出します
raw ファイルを保存しておきます

iMovie でノイズ除去

mp3 を取り込んでノイズ除去をします
プロジェクトを適当に作成し「オーディオ」を選択して mp3 を取り込めます
podcast_setup7.png

軽減率は 65% くらいが良いかなと思います
イコライザはデフォルトのフラットでも良いですが声に合わせてお好みで変更してください
あとは書き出しでオーディオのみにし mp3 形式で出力します

最後に

おそらく今回紹介した方法は Mac で収録するときの王道かなと思います
このページに来た人は環境で紹介しているツールでググれば今回の方法と同じ収録方法を紹介しているページが見つかると思います

この収録方法も「一例」でしかないです
他にもお互いのローカルにお互いの声だけを収録して後から音を合成する方法もあります
またツールも今回紹介したもの以外にもあるので自分なりの録音環境を是非見つけてみてください

2018年4月4日水曜日

Hulu で配信しているジャイアンツライブを通知してくれるボットを作成しました

hulu_giants_icon.jpg

概要

作りましたというか 1 年前に作っていたのですがググってもボットが検索に引っかからないのでググラビリティを上げるために記事にしておきます
作成したのは Twitter ボットです

ボットの動き

以下の 2 パターンでボットはつぶやきます

  1. 配信がある場合にその日の AM 9:00 につぶやきます
  2. 配信開始の 5 分前くらいに再度つぶやきます

なので 1 日 2 回つぶやいてくれます

使い方

https://twitter.com/hulu_giants

このアカウントをフォローするだけでも自分のタイムラインに出てくるので、それで問題なければフォローだけしてください

メンション等はしていないので基本プッシュ通知などは来ません
なので通知がほしい場合は IFTTT などを使ってください
自分は

これで Slack に通知しています

これを使えば LINE にも通知してくれます
ちなみにこれらの Applet は自分で作成したものではございません
公開されている Applet をありがたく利用させてもらっています

その他

たまーにメンテなどをしているので人間がつぶやくこともあるのでご了承ください
フォロー返しなどは特にしていないので、興味があればフォローして好きに使ってください

Hulu をずっと使っていてライブの通知をしてほしいなーと思っていたのですがなかったので作りました
が、実は自分はもう hulu を解約してしまってボットも使っていないのでよくわからない感じになっています