2018年7月13日金曜日

nifcloud-python-sdk で MagicMock を使う方法

概要

結構手こずったのでメモ
ポイントはどのモジュールに @patch を当てるのかとメソッドをモック化するときは return_value が必要な点かなと

環境

  • macOS 10.13.5
  • Python 3.6.5

テスト対象のコード

  • vim nif.py
from nifcloud import session

class Nif(object):
    def __init__(self):
        self.cli = session.get_session().create_client(
            "computing",
            region_name="jp-east-1",
            aws_access_key_id="xxxx",
            aws_secret_access_key="xxxx"
        )

    def desc(self):
        return self.cli.describe_security_groups()

これをテストします

普通にテストすると

  • vim test_nif.py
import unittest
from nif import Nif


class TestNifClass(unittest.TestCase):

    def test_desc(self):
        n = Nif()
        res = n.desc()
        print(res)


if __name__ == '__main__':
    unittest.main()
  • python3 -m unittest test_nif.py

で普通に describe_security_groups がコールされます

モック化してみる

先ほどのテストをモック化して describe_security_groups を呼ばないようにしてモックがレスポンスを返却するようにしてみます

import unittest
from nif import Nif
from unittest.mock import patch, MagicMock


class TestNifClass(unittest.TestCase):

    # @patch('nif.session.get_session')
    @patch('nifcloud.session.get_session')
    def test_get(self, mock):
        mock_res = MagicMock(return_value={'RequestId': 'xxxxxxx'})
        mock.return_value.create_client.return_value.describe_security_groups = mock_res
        n = Nif()
        res = n.desc()
        print(res)


if __name__ == '__main__':
    unittest.main()

ポイントは 2 つでパッチを当てるのは @patch('nifcloud.session.get_session') というのと describe_security_groups のレスポンスをモックから返却させるために mock.return_value.create_client.return_value.describe_security_groups = mock_res をしている点です

前者は @patch('nif.session.get_session') でも動作します
後者はメソッドに対してモックを割り当てるため return_value が必要です
get_sessioncreate_client もメソッドになります

とりあえずこれでテストするとレスポンスが以下のようにモックからのレスポンスに変わります

  • pipenv run python3 -m unittest test_nif.py
{'RequestId': 'xxxxxxx'}
.
----------------------------------------------------------------------
Ran 1 test in 0.001s

OK

最後に

Python3 の unittest.Mock は非常に便利なモックライブラリかなと思います
メソッドだけでなく属性やクラス全体をモック化することもできます
ただ、使い方が結構複雑なのでマスタするまでに多少の学習が必要かなと思います

2018年7月8日日曜日

メルカリさんをちょろっと使ってみた感想

概要

タイトル通りなんですがちょろっと使ってみたので感想書きます
使い方などの説明はないです
長文です

価格帯の事前調査が必要

出品するにあたって価格を自分で決められるのが特徴なのですが、この価格の設定が重要な気がします
単純に高すぎると売れません、逆に安すぎると少し損をした気分になります (売れればそもそも損ではないですが)
いわゆる商品の「相場」を知りたいわけです
個人的には他に同じものを出品している人の価格や過去に購入された金額を参考にしています

時期によって価格が変動するものもあると思います
いわゆる「プレミア」になったものは価格が上がります
逆に旬が去ったものは過去の価格では絶対売れないので、安く設定しなければなりません
こんな感じで出品時期に応じて価格には適正があるかなと思いました

別に適正な価格を付けることは強制ではありません
少し深く考えすぎな気もするので単純に「自分が売りたい価格」を設定すれば良いと思います
ただ、その辺りの価格の相場を調べてその時期の適切な価格を設定しないとずっと売れ残ってしまうケースもあるかなと思います

値段交渉

メルカリ上でのやり取りでよくあるのは値段交渉です
購入者からコメントで「xxx 円でどうですか?」みたいなコメントはよくあります

オークション形式の出品と大きく違うのはこの値段交渉で、メルカリの場合は値段を下げていくのですがオークション形式の場合は値段が上がっていきます
出品時に自分が設定した価格以上では絶対に売れません (さすがにメルカリで値段を釣り上げる人は自分は見たことがないです、もしかしたらいるかもしれないですが)

要するに何が言いたいかというと設定した値段以下でしか売れないということを頭に入れておいたほうがいいかなと思います
一度値下げしてしまうと再度価格を上げるのは難しい気がします (そっと戻すのは全然可能ですが)
どうしても売りたくて値段交渉の結果売れるという可能性があるのであれば下げざるを得ないかなと思います
ただ、値段を下げたからといって必ず売れるとも限りません
その辺の購入者との探り合いというか駆け引きがあるのかなーと思いました

まぁこれも深く考えすぎな気がしますが

梱包が面倒

売れたあとに必ずしなければいけないのが梱包と発送です
特に梱包が個人的に面倒だなと感じました

これはフリマ系のアプリでは必須なのでメルカリに限った話ではないのですが毎回面倒だなと思います
慣れればそこまで面倒でもないのかもしれませんが、そもそも梱包のための道具を揃えなければいけなかったりするのでそれも面倒です

自分の場合はプチプチやハサミ、テープなどをホームセンターで揃えました
ここにもコストがかかっているので、できれば無料で手に入れられるタイミングでストックしておいてそれを使い回すなどしたほうが良いかなと思います
ただそれをストックしておく場所も必要になるのでそれも個人的には微妙かなと思っています

また梱包の仕方ですがこれまたいろいろと面倒で適当に梱包して送ったりすると配送の途中で箱が凹んだりしてクレームになったりします (自分は今までないですが)
評価にもつながる点かなと思っていて梱包が悪かったりすると低評価になることがあると思います
低評価は結局商品が売れるかにつながってくるのでできれば低評価はつけてほしくないところです

とかとかいろいろ考えると結局ある程度の梱包技術が必要になり、これもやり方を調べたり道具が増えたりと結構たいへんなことになります

発送は楽ちんなのですが、この梱包に関しても楽ちんな仕組みを作っていただけると助かるかなーと思いました

らくらくメルカリ便について

自分は配送に関してはらくらくメルカリ便しか使ったことがありません
超ざっくりとらくらくメルカリ便について説明すると

  • 購入後、QR コードが発行される
  • ファミマに行ってファミポートで QR コードをスキャン
  • レシートが発行されるのでレジに持っていく
  • 発送する商品にラベルなどを張って終了、あとは商品をコンビニに渡す

という流れになります
配送に必要な料金は自動的に購入金額から差し引かれます
サイズに応じて料金が変わるので詳細は公式を見てください

個人的にこれが良いと思う点は

  • コンビニから発送できる
  • 配送料金を支払う必要がない

かなと思います
郵便局を使ってゆうパックなどで発送することもできるのですが近くに郵便局がない場合に役に立ちます
また郵便局の場合はその場で発送料金を精算する必要があります
コンビニは 24 時間やっているので、発送受付自体も 24 時間受け付けてくれるのも助かる点かなと思います

定形外郵便などに比べると少し値段が高いですが手間を考えると、らくらくメルカリ便を使うほうが良いかなと思います
また宅急便として送るのであれば、配送日指定も可能です

売れ残りになってしまう

急に話が変わりますが、商品を出品してから 1, 2 週間以上売れないケースは結構あります
売れない商品は大抵「いいね」も「コメント」も付きません

自分は売れ残りになってしまった場合は一応値下げをします
しかしそれでも売れず、一向に「いいね」や「コメント」が付かない場合もあります
要するに「需要」がない商品なんだと思います

別にメルカリで出品し続けておくこと自体、維持費はかからないのでいつか売れればいいやという人は永遠に出し続けておけば良いと思いますが、自分は売ろうと思ったものがずっと家に放置されているのが嫌なので何とか売ろうとします

いろいろ試行錯誤してそれでもダメな場合は自分は潔く出品を取り下げて売るのを諦めます
だいたい諦めるのは 2 週間くらい音沙汰がないときかなと思います

個人的な最終手段

では、諦めた商品はどうするかというと別の手段で売ります
自分の場合「買取王子」を使ってしまいます

正直、買取王子は高く売れません
というかものすごい安い値段でしか買い取ってくれません
なので、本当に最終手段として使っています
金額で言うとメルカリで売ろうとした金額の 1/100 くらいかなと思います

ただ、買取王子の良いところは売りたいものを梱包して集荷さえすれば、あとは特に何もしなくて良い点です
しかも梱包に必要なダンボールや集荷の際の料金などは無料です
なので梱包や配送などにかかるコストや作業は全く必要ありません

その変わりと言っては何ですが買い取り価格が激安です
なので、もう絶対売れない、需要が全くない、そして自分でも使わない、必要ない商品であれば使っても良いかなと思います
商品の査定結果を確認してから実際に売るかどうか決めることはできますが、その場合は当然商品が返ってきます

自分はもう手放す気まんまんで使うので査定結果を確認せずに売ってしまいます
またお金には変えず多少なりと売上金額が上がる Amazon ギフト券にしています

API があれば

メルカリは基本的にスマホを使って操作することを想定しています
Web 版もありますが操作が限定されたりしています (自分は Mac で普段作業をしているので Web 版しか使ったことないですが)

スマホと Web 版があれば、取り引きや出品などの操作は十分なのですが、もし API があれば、いろいろ自動化できておもしろいんじゃないかなーと思いました

出品などもそうですが、価格の再設定や停止など何かをトリガーにしてできると楽になるかなーと思いました
発送はさすがに自動がするのは難しいかなと思いますが QR コードの取得などが API でできると更に楽になるかなと思いました

最後に

メルカリを使ってみた感想を思うがままに記載してみました
深く考えすぎな気もしますがメモとして残しておきたかったので書きました
みなさんも良いメルカリライフを

2018年7月6日金曜日

ゲームを辞めたら全然スマホを使わなくなった

概要

タイトルの通りです
スマホゲームをやめたら全くスマホを使っていないことに気が付きました
気がついたので思うところを書き留めてみました

冷静に考えるとゲームしかやっていなかったと思う

今や家庭用ゲーム機でゲームをするよりもスマホでゲームをする人のほうが多いんじゃないかなと思います
AR もできますしヘッドセットはいりますが VR もできます
またハードウェアスペックもパソコンと同等のレベルになりつつあり、3D グラフィックも簡単に動きます

単純にスマホのゲームのほうがおもしろい時代になったのではないでしょうか
自分もスマホを使っていろいろとゲームしてました

最近のスマホゲームはリワードの仕組みがえぐいです
「毎日ログインすると報酬 1 個」「今週 xxx を達成すると報酬 10 個」「イベントをクリアすると報酬 10 個」などユーザが継続してゲームするための仕組みがたくさんあります
そんな自分もこの仕組にまんまと嵌りゲームを続けていました

そんなある日、作業的にゲームを続けている自分に気が付きました
ゲームの楽しみ方は人それぞれなので何とも言えませんが自分は惰性でゲームを続けているのが虚しくなりました
朝起きてとりあえずログインして報酬をもらって、、、みたいな生活を何十、何百日と続けているじゃないかと

と思って辞めようと思ったが辞められない、、、
なぜか、それは簡単でせっかくここまで続けたのにここで辞めちゃうのかという「未練」みたいなものがあるのかなと思います
たぶんこれがスマホゲームを依存させる要因の 1 つなのかなと思いました
自分はあっさり辞めちゃいましたが

スマホでゲームをしていると暇さえあれば、アプリを開いていた気がします
たぶんゲームの特性にもよるのですが最近のゲームアプリはリアルタイム連動しており、ある時間にしか発生しないイベントなどを逃してしまう可能性があるからだと思います

本当に最近のスマホゲームはユーザの心理をよく考えたものになっていると思います

パソコンがある人はパソコンを使う

いきなりつらつら書きましたがスマホはゲーム以外のことも当然できます
が、パソコンがある人はパソコンでもできるケースがほとんどです

例えば Slack などはスマホ版もありますが Mac 用のクライアントも用意されています
Google ドライブや Evernote など最近のメジャーどころのアプリは必ずと言っていいほどパソコン版のクライアントも用意されています

なのでスマホがなくてもパソコンがあれば代用できます
むしろメインがパソコンでの操作でスマホはちょろっと確認したいときなどに使う感じかなと思います

なので、その辺のユーティリティアプリに関してはパソコンがあれば十分というかパソコンで使うのがメインになります

要するにスマホがなくてもスマホと同じ (もしくはそれ以上) の内容をパソコンで確認、操作できるのでスマホが不要ということになります

じゃあいつ使うのか、何に使うのか

基本的にはパソコンがある場合はパソコンを使います
なのでスマホは外出時にしか使いませんが、スマホでしかできないこともあるのでその辺り何に使っているのか紹介します

カメラ

最近のスマホのカメラはデジカメレベルのものが多いです
パソコンで代用は厳しいのでカメラは使います

監視カメラ

スマホのアプリで監視カメラアプリが最近はたくさんあります
カメラとして常駐させるアプリとそのカメラの画面を確認するビューワのアプリに分かれているケースがほとんどです
自分の場合、使わなくなってスマホを監視カメラにしています
これはパソコンでは厳しいのでスマホを使っています

開発機

主に iPhone ですが実機でビルドする際にスマホを使っています
使っていますというか使わざるを得ません

Kindle

本を読む際に Kindle アプリを入れて電子書籍で読んでいます
もしかするとゲームを辞めてからはこれが一番開いているアプリかもしれません
Kindle アプリを使うようになってからは電子書籍でしか本を読まなくなりました
当然パソコン版のクライアントもあるので外出時とパソコンがあるときで使い分けています

動画鑑賞

テレビが使えない、モニタが使えない、パソコンすら使えないという場合にスマホで見ています
長時間見る用途ではなく単発で見る用途で使っています

電話

実はスマホのメインの機能である電話ですが最近はほとんど使いません
が、これもスマホでしかできないのでたまーに使っています

連絡を取る

いわゆるメッセージアプリ系で使っています
主に LINE と Slack ですがどちらもパソコン版のクライアントがあるので、これも外出時にしか使いません

その他

あとは SNS やニュースなど情報収集で使っていますが、これらも正直パソコンがあれば事足りるのでスマホを使って確認するケースはほとんどないです

ゲームを辞めてどうなったか

一番はゲームをしている時間がなくなったのが大きいかなと思います
その時間を別の趣味にあてたりしています
毎朝ログインしていた謎の作業もなくなりました

あとはゲームに関する情報収集もしなくなりました
これも今となって考えると結構時間を割いていたんだなーと思います
スマホゲームは日々変化するので最新情報にアンテナを張っていた気がします

最後に

今回のケースが当てはまるのは大前提として「パソコンを常時使っている人」かなと思います
そうでない人は結局スマホ必須になると思います

今回のケースのようにスマホをほとんど使わない人で MVMO にしていない方はすぐにキャリア変更することをオススメします、、、
使わないのに毎月 3,000 円くらい支払うのはもったいないですからね

みなさんも実はゲームを辞めたらスマホいらなくなるかも
スマホを使わなくてもパソコン使ってたらそんなに変わらないんですけどね、、、

2018年6月28日木曜日

ニフクラ VPN をリージョン間で接続するのはそこそこ簡単

概要

ニフクラ VPN よくわからないという場合にとりあえず成功する感覚をつかみたい場合におすすめ (なはず) です
手順は多いですが、とりあえず同じやり方でやればリージョン間で VPN が張れます
今回は east-1 と west-1 でやっていますが別のリージョン間でもおそらく可能だと思います

環境

  • ニフクラコンパネ (2018/06/28 時点)

VPN ゲートウェイの作成

east-1

プライベート LAN 作成 (CIDR: 172.16.1.0/24)
nifcloud_vpn1.png

VPN ゲートウェイ作成
nifcloud_vpn2.png

VPN ゲートウェイの FW 作成
とりあえずプライベート LAN に割り当てた範囲からは全許可しておきます
nifcloud_vpn3.png

完成図
nifcloud_vpn4.png

west-1

同様に west-1 も作成します

プライベート LAN (CIDR: 172.16.2.0/24)
nifcloud_vpn5.png

VPN ゲートウェイ
nifcloud_vpn6.png

FW
nifcloud_vpn7.png

完成図
nifcloud_vpn8.png

お互いの FW にお互いのグローバル IP を許可する

VPN ゲートウェイにはグローバル IP が付与されています
east-1 に作成した VPN ゲートウェイのグローバル IPからの通信許可を west-1 側の FW に追加します
west-1 に作成した VPN ゲートウェイのグローバル IPからの通信許可を east-1 側の FW に追加します

east-1

east-1 (vpngw1 ファイアウォール)
nifcloud_vpn9.png

west-1

west-1 (vpngw2 ファイアウォール)
nifcloud_vpn10.png

カスタマーゲートウェイの作成

そろそろややこしくなってきます
カスタマーゲートウェイは相手側の VPN 機器の情報なので今回であれば双方の VPN ゲートウェイの情報になります

east-1

  • 対向機器 IP アドレスは west-1 の VPN ゲートウェイのグローバル IP
  • 対向機器 LAN 側 IP アドレス帯は west-1 に作成したプライベート LAN の IP 帯
  • 対向機器 LAN 側 IP アドレスは west-1 の VPN ゲートウェイのグローバル IP

を入力します
最後のやつは「あれ?」と思いますが IKE ID として送られるようでその場合はグローバル IP じゃないとダメなのでグローバル IP を指定します

nifcloud_vpn11_2.png

west-1

同様に west-1 にも作成します

nifcloud_vpn12_2.png

VPN コネクションを作成

双方に作成した VPN ゲートウェイに対してコネクションを作成します
VPN コネクションの作成方法がよくわからなかったのですが、VPN ゲートウェイを選択して左下のプルダウンから選択するようです
nifcloud_vpn13.png

east-1

east-1 の VPN コネクション
nifcloud_vpn14.png

事前共有鍵を空にすると自動生成してくれるようです
で、自動生成された鍵をどこで確認するんだろうと思ったらネットワーク一覧から VPN ゲートウェイとカスタマーゲートウェイを結ぶ線をクリックすると VPN コネクションの情報が確認できます
(確認するのが面倒な場合は適当な文字列を自分で決めても OK です)
nifcloud_vpn15.png

ここに表示されている事前共有鍵をコピーしておきましょう

west-1

そして west-1 側に VPN コネクションを作成します
先ほどの事前共有鍵を設定しましょう
nifcloud_vpn16.png

これで双方で VPN を張れば双方のコネクションのステータスが緑になるはずです
nifcloud_vpn17.png

動作確認

一番てっとり早いのはプライベート LAN 上に VM を作成して IP を手動で振ってそれぞれアクセスできるか確認する方法です
てっとり早いといいつつ

  • VM 作成 (プライベート LAN に入れる) -> FW 設定 -> グローバル IP で SSH してプライベート IP を手動で設定

という作業が 2 台分必要になります
操作は割愛しますが成功すると以下のようになります
nifcloud_vpn_demo.gif

またルートテーブルを初めに見せていますが以下のコマンドでルートを追加しています
これがないと通信できません

east-1 側の VM

  • ip r add 172.16.2.0/24 via 172.16.1.1 dev ens192

west-1 側の VM

  • ip r add 172.16.1.0/24 via 172.16.2.1 dev ens192

うーんそれでもダメだなーという場合は FW を全開放にして一度試してみてください

最後に

ニフクラ VPN を使ってリージョン間で VPN を張ってみました
VPN をちょっと試してみたい場合にはいい方法かなと思います

参考サイト

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 で管理するということはよくあるユースケースかなと思います