文字っぽいの。

文字を書いています。写真も混ざります。

`.safeAreaBar` を設定すると SwiftUI.TextEditorの `.focused` が動かなくなる。

環境

起きること

まずは動くコード

import SwiftUI

struct ContentView: View {
    @State var text: String = ""
    @FocusState var focus: Bool

    var body: some View {
        TextEditor(text: $text)
            .focused($focus)
            .onChange(of: focus) { oldValue, newValue in
                print(oldValue, newValue) // => (false, true)
            }
    }
}

当然ながらこのコードは動く。TextEditorをタップしてカーソルが表示されれば、focusが変更されてprintされる。

次に動かなくなるコード

import SwiftUI

struct ContentView: View {
    @State var text: String = ""
    @FocusState var focus: Bool

    var body: some View {
        TextEditor(text: $text)
            .focused($focus)
            .onChange(of: focus) { oldValue, newValue in
                print(oldValue, newValue) // => Not work
            }
            // ↓追加
            .safeAreaBar(edge: .bottom) {
                HStack {
                    Image(systemName: "globe")
                }
            }
    }
}

こうするとprintされないだけでなく、

Button("Close Keyboard") {
    focus = false
}

といった、@FocusState経由でキーボードを閉じる処理も動かなくなる。.onChange が呼ばれないわけではなく、内部的にBindingされていなさそう。

対策

@FocusState が生まれる前の古き良き手法を使うしか無い。

キーボードを閉じるには、

UIApplication.shared.sendAction(#selector(UIResponder.resignFirstResponder), to: nil, from: nil, for: nil)

キーボードの表示非表示でハンドリングしたいなら

.onReceive(NotificationCenter.default.publisher(for: UIResponder.keyboardWillShowNotification)) { _ in
    // キーボード表示時
}
.onReceive(NotificationCenter.default.publisher(for: UIResponder.keyboardWillHideNotification)) { _ in
    // キーボード非表示時
}

を使うことでなんとか迂回は可能。

感想

そもそも .safeAreaBariOS 26.0+のため、使えるアプリはかなり少なくハマることは少なそう。

同じ現象が自分の環境だけかと思って調べてみたけど、Redditでも同じ現象を話している人が居た。

ウキウキで最新APIを使って「これめっちゃ便利じゃーん」ってしてたら無駄に時間が消費されて悲しい。

さいごに

Apple Feedback Assistant経由でバグ報告はしておきました。

Package.swiftのdependenciesを文字列を使わず(タイプセーフ?)に補完を効かせながら指定できるようにする。

はじめに

よくあるPackage.swiftはこんな感じになると思う。

gist.github.com

文字列で指定をする場所が多いため、とにかくタイプミスが多発する。また、この程度の分量であればまだ良いが、規模が大きいアプリの非常に長大なPackage.swiftの中から、該当の.product.targetを箇所を探すのは非常に手間がかかる。

やりたいこと

文字列で指定せずに、

.product(.rswift),
.target(.welcome)

と指定できるようにしたい。

Productを対応する

まずは外部ライブラリから対応していく。Package.swiftにこういったコードを用意しておく。

gist.github.com

ExternalPackageProducts が分離しているので冗長な気もするが、firebase-ios-sdk のように1つのPackageに複数のライブラリが含まれていたり、R.swiftのようにライブラリとプラグインが含まれている場合に対応するには、この定義方法だと都合が良かった。

上述したコードを利用することで、最初に示した Package.swiftはこのようになる。

gist.github.com

.product(.firebaseCrashlytics) と指定でき、もちろん補完も聞くので簡単にライブラリを指定できる。

Targetを対応する

Productと同じ流れで .target も対応していく。

gist.github.com

これによって、最初に示した Package.swift はこのようになる。

gist.github.com

Pluginを対応する

gist.github.com

こういったコードを書いてあげることで、Targets内で次のように書ける。

case .welcome: .target(
    name: "Welcome",
    dependencies: [
        .product(.rswift),
        .product(.firebaseCrashlytics),
        .product(.firebaseAnalytics)
    ],
    plugins: [
        .plugin(.rswiftGenerateInternalResources)
    ]
)

TestTargetを対応する

.testTarget も同じ流れで対応できる。

private enum TestTargets: CaseIterable を新たに実装して、そこにTestたちを集めても良いし、上述した private enum Targets: CaseIterable 内部に書いても良い。 TargetとTestTargetが1対1で対応することが多いのであれば、Targetsで隣に書いてあげることで探しやすいかもしれない。 各々のプロダクトで管理しやすい場所に書くのが良いだろう。

完成品

最終的な Package.swift はこのようになる。

gist.github.com

今回のコードではenum内部で分岐をして記述しているが、これをstructに分離したりstatic letに分離することも可能だろう。

さいごに

.product(.hoge)と書けて補完も効くのは非常に便利。しかし、この方式で最も便利さを感じたのは、ProductやTargetを削除したときだった。 今までは大元を削除したとしても、その呼び出し方は

.product(name: "FirebaseAnalytics", package: "firebase-ios-sdk"),
.target(name: "Search")

と文字列で指定されているため、エラーを眺めたり検索機能で探す必要があった。この方式ではenumのcaseが消えるため、 Type 'Targets' has no member 'setting' といったエラーが出て簡単に該当箇所を探しやすくなった。

新生児育児の感想、そして育児うつ。

喉元過ぎれば熱さ忘れる。今のうちに書いておかないと、将来「子どもなんて放っといても勝手に育ちますからね。がはは。」とか血迷ったことを言いかねないので書いておこうと思う。

はじめに

育児も色々、家庭状況も色々。前提が違えば育児で大変なポイントも異なるのでざっくり書いておく。

自分は6ヶ月、妻は1年の育児休業を取得して絶賛育児中である。実家周辺に産院がないため里帰り出産はせず、退院後にすぐ夫婦二人で育児を開始した。義理の両親は車で1時間半くらいの距離なので、来てもらうことはできるがそこまで気軽ではない。

育児は大変

大変だとは聞き及んでいたので気合を入れて挑んだけれど、それでもやっぱり大変。 社会人歴も10年を超えたので今までヤバい仕事にはいくつも出会ったが、そんなものは霞んで見える。

どれだけプロジェクトが炎上しようと、ヤバい人間に振り回されようと、退勤後や休日は仕事から逃れられるし、どこかでリリースしたりプロジェクト中止になったりとなにかしらの終わりもある。ヤバいな人間に振り回されたなら、そこには明確な敵が居てくれる。 一方で育児(特に新生児期)は退勤も休日もないし、明確な終わりはなく、敵も居ない。

筆舌に尽くしがたいとはまさにこのことで、どれだけここで大変さを羅列しても完璧には伝わらない。 ハンバーグを食べたことがない人に、それを食べた時に感じる全てを言葉だけで伝えることが難しいように、育児未経験者には育児のつらさは真に理解できないだろう。 実体験と聞き及んだことには大きな乖離がある。

当然ながら「育児の経験がない者は、育児を理解できないので言及するな」という話ではない。 そんなことを言い始めれば、病気も鬱も心身的障害も老化による様々も「未経験なので無関係」となってしまう。 何事も『どれだけ学んでも当事者の実体験とは乖離があることを忘れず、それでもなお学び知り続けること』が非常に重要だ。

育児の大変さは細かい疲弊が積み重なっていく大変さだ。 寝ない、飲まない、泣き止まない、寝れない、食べられない。

授乳、おむつ、あやす。

授乳、おむつ、あやす。

授乳、おむつ、あやす。

一つ一つはそこまで大変ではないが、五月雨式に積み重なることで乗算式に大変さが増える。

例えば予防接種や血液検査で一箇所に注射を刺されるのは、耐えられる人が多い。 しかし五月雨式に全身に注射を刺され続け、それがいつ終わるかも分からなければ、頭もおかしくなるものだ。

独身の延長線上からの脱出

結婚に付随していた「家に入る」、「家同士のもの」、「養う」という感覚は、特に都市部で希薄になってきたと思う。 「男は仕事、女は家庭」という価値観も、もはや昔話になりつつある。

昨今の結婚は「自立した独身の大人ふたりが同棲生活をしている」という状態の延長でしかない。 良くも悪くも自立した大人ふたりの生活は「私とあなた」であり「わたしたち」が占める割合は少ないため、独身時代の時間感覚や金銭感覚が無意識に続いてしまうことも多い。

しかしながら、子どもが生まれると「私とあなた」が終わり、「わたしたち」が始まる。 「旅行がしたい」「飲みに行きたい」「映画が見たい」「ゲームしたい」「個人開発がしたい」「仕事をしたい」「外食がしたい」など、「私とあなた」時代では気軽に叶えられた様々な欲求は、立ち止まって考える必要がある。

これを抑え込むのがなかなか難しい。気を抜くとすぐ「銭湯に行きたいなぁ」とか「ラーメン食べに行きたいなぁ」とか「新作のゲームしたいなぁ」といった「私」の欲求が溢れ出してくる。自分の欲求を解消する為の時間は全く取れないことを頭では理解しているが、それに慣れきった心はそんなにすぐに切り替えられない。

当然ながら「自分を殺して育児にのみ邁進すべき」という話ではない。 環境が変わったのでまずそれに合わせるという当たり前の行動が必要になる。 例えば通勤に片道30分かかる家から1時間かかる家に引っ越したのに、前と同じ時間に起きていたら遅刻必至だ。 30分早く起きないといけないし、そのためには30分早く寝るか睡眠時間を削るしかない。

「わたしたち」の暮らしに慣れてくると、段々と「私」の時間もとれるようになってくる。もし子どもが生まれた後に何よりも先に「私」を守り抜こうとすると「私とあなた達」になりかねないので、まずは「わたしたち」の暮らしを丁寧に構築していくのが良いと感じた。

陰キャのメリット

長らく職場から離れ、人間たちと会話することも減った。育児の諸先輩方は「大人と話したくてたまらん」と言っていたので自分もそうなるかと思っていたが、現時点では存外大丈夫だった。 そもそも根が陰キャであることと、コロナ禍で人と会わない生活に慣れていたこともあり、インターネットとパソコンがいじれていれば暮らしていけるようだ。 これはなかなか良いメリットであった。育児中に「じゃあ飲み行ってくるんで」とかは不可能なのだが、それが最もストレス解消につながる人であれば非常につらかっただろう。

一方で会社で労働をすることで、強制的に対人コミュニティーに入っていたのは重要に感じた事例がある。育休期間中にちょうど参院選があったため、ニュースや党首討論でも見ておくかとYouTubeを徘徊していた(深夜はTVがやっていない)。その結果、おすすめ欄が政治まみれになってしまった。視聴数を稼ぐために「スカッと」「義憤」「正義の鉄槌」「隠された真実」な方向でサムネイルも作られているので、どうしても気になってしまう。 XはXでかなり前から「怒りはバズる」方向で、世の中の悪い面だけが拡散されているので、それが目に入るようになっている。 こんなものばかり見ていては、すぐに「真実()を知る正義の小市民」のできあがりだ。

『小人閑居して不善をなす』とはよく言ったもので、家の中で情報収集(に錯覚するインスタントコンテンツの暴飲暴食)を繰り返していると、思想は歪み先鋭化してしまう。

思想のズレを調整するためにも、様々な人間と会話していく機会を持たなければ危ないと感じた。

若ければ体力があるが

とかく育児は体力が必要だ。この体力はムキムキマッチョで重いものがいっぱい持てるという体力ではなく、『徹夜してもデバフが小さい』という意味合いが大きい。もちろんムキムキマッチョで楽になることも多い。よく中年が「徹夜できなくなった」と話しているだろう。学生時代であれば徹夜で一夜漬けしてテストに挑むなんてこともしていたが、加齢に伴って徹夜翌日の脳みそはパッパラパーになって、なにもできなくなる。

育児は24時間365日続く。24時間働けますか?状態。1日のほとんどの時間が抱っこしてあやしているか、ミルクを飲ませているか、おむつを替えていることになる。運が良ければ大人が食事をしたり家事をしたり寝たりできるが、結局運なので短い睡眠でも動き続けられる体力が非常に重要になる。

「一ヶ月検診が終わると楽になる」「三ヶ月検診が終わると楽になる」「腰がすわると楽になる」と先輩たちはバラバラのことを言ってくるが、これは嘘をついているのではなく「子どもによる」ので参考にできないのだ。つまるところ全て運。よそはよそ、うちはうち。祈りと気合と根性でカバーするしかない。

ここまで書くと、若くて体力があるほうが有利に感じるが、実はそうでもない。もし自分が今25歳の新卒で子どもが生まれ、産休に入っていたらこんなことを考えるかもしれない。

  • 世間ではAIコーディングが流行っているがそれを勉強する暇が無い
  • 同期が新規プロジェクトに参加して楽しそうにしているが自分はなにもできない
  • 同期が出世して昇給しているが自分は据え置きのまま
  • 会社で人の動きがあったり新プロジェクトが始動したり制度が変更されたが何もわからない

などなど、世間や会社の動きからどんどんと取り残されていき、自分が無価値な人間になってしまうかもしれない恐怖心が芽生えてくるだろう。1ヶ月程度の育休であればまだしも、半年や1年といった長期間の育休で労働から離脱してしまうと、その不安感は非常に大きくなる。

特にITエンジニアという職種では、新しい技術・ライブラリ・ノウハウが次々と出てきては栄枯盛衰しているため、常に学び続けることがよしとされている。周りの人間がどんどんと先を走っている様子を、自分だけ立ち止まって見ている焦りは大きい。

25歳くらいで高収入でキャリアも順調であればもっと楽なのかと思いもするが、そうなると今度は「仕事が楽しくてしょうがない」時期でもあるので、それはそれでむず痒いだろう。

仕事は全部やらない

自分は社長や役員のような決裁権を持った人間ではなく、ただの雇われなので居なくなっても問題ない。とはいえカバーしている労働領域はあるので、なるべく早く引き継ぎをしたり、仕事をなくしていった。

出産後にすぐ育休をとる予定だったため、予定日1ヶ月前(いわゆる臨月)からは「もうすぐ消え去りますよ〜役に立たない人ですよ〜」という雰囲気を出していき、いなくても良い人になるように各種引き継ぎやタスクの調整をした。出産は「予定日です。はい誕生。」とはならない。早産になって予定日より1ヶ月以上早く産まれることもあれば、予定日を過ぎてもなかなか産まれないこともある。大きなタスクを持ったまま突然消え去ってしまっては迷惑がかかる。

また、先輩各位が育休中でも頑張って仕事を回そうとして、重大なボトルネックになってしまった事例も見たことがあるため、そうはならないように気をつけた(つもり)。中途半端に手や口を出して家庭も仕事もズタボロになるよりも、育児にフルベットして仕事では「もういない人」として扱われたほうが良いと考えていた。

現時点ではやらないといけない労働は特にないため、安心して育児に集中できている。たまにチャットを覗くと任せた人たちが期待以上に動いてくれているので「たすかる〜」と安心していられる。また、半年の育休をさらっと取れるのは、先輩パパ各位がガンガン育休を取ってくれていたおかげなので、この点も非常にありがたかった。1年育休をとった前例もあるし、全く問題なかったが自分が「仕事戻れなくない?」と日和ってしまった。

これは副次的効果ではあるが、仕事から長期間離れられたのは良かった。多くの人が「1ヶ月とかドカッと休みたい〜」と言いながら、(申請すれば休めるのにも関わらず)休むことなく、なんなら休んでいても暇になって結局仕事をしてしまう労働大好き日本で、仕事から長期間離れられる稀有な時間を得られた。ここまで読んできた読者からすれば、これは休みではないことはご理解いただけていると思う。しかし、育児に翻弄されることで「有給休暇だけどやることないから、仕事関係で触りたかった技術調査でも」などと思うヒマがなくなることで、強制的に仕事から離れることができた。

そろそろ仕事 "のみ" から充実感と幸福と自己表現を得るのはマズイと考えていたので、良い機会となった。

両親は万能薬ではない

両親、つまるところおじいちゃんおばあちゃんのサポートが得られるなら得たほうが良い。しかし、万能薬ではない。

もしあなたの両親が30歳のときにあなたを産み、あなたも30歳で子どもを産んだとしたら、両親はもう60歳。還暦で赤いちゃんちゃんこ。人によっては定年を迎えて年金ぐらしの穏やかな老後が始まるような人々を、育児という過酷な戦場に呼びつけるのは流石に酷に感じる。

なおかつ両親の育児知識は30年前のものになる。例えば、2007年以前は粉ミルクを溶かすお湯の温度は40〜60度程度が一般的だったが、現在では70度以上のお湯で溶かすことが推奨されている1。こういった差異が本当に細かく大量にある上に、30年のブランクは大きい。ママ・パパはある程度情報が同期されているが、これをおじいちゃんおばあちゃんにも伝えていくのは非常に手間がかかる。

育児を手伝ってもらうというよりは、大人の頭数を増やして負担を分散させると考えたほうが良い。たとえば、

  • ご飯を作ってもらう
  • 作り置きをしてもらう
  • 哺乳瓶を洗って消毒してもらう
  • 野菜類を切って冷凍ストックを作ってもらう
  • ベビー用品や食材・日用品の買い出しに行ってもらう
  • 手が回らない細かい掃除をしてもらう
  • 段ボールを畳んでまとめてもらう

などの「ママパパでもできるが、ママパパである必要がない」作業をやってもらうのが良い。これだけでも非常に楽になる。ここらへんは家事代行を使うという手もあるが、(関係性にもよるが)自分の両親のほうが気楽に依頼しやすい。

育児うつにはなる

パパママともに10%前後が育児うつ(産後うつ)になる可能性がある。つまりどちらかがなる可能性は19%ほどあるので、めちゃくちゃ確率がたかい。5組のパパママがいれば1人はかかる。

かくいう自分も育児うつの入口に立っていたと感じる。ただし、病院で診断は受けていない(し病院に行く暇も元気もなかった)ため、「育児うつでした」とは言えない。そのため、ここから先の話は「育児うつっぽかったな」と自己判断している人間の記録として読んでほしい。

症状としては、

  • 喋るために口を動かすのが面倒になる
  • 言葉が出てこなくなりうまく喋れなくなる
  • 咀嚼が面倒になる
  • やる気が出ない
  • イライラする
  • 頭が回らず部屋の真ん中で「何やるんだっけ?」と立ち尽くす
  • 自己肯定感(育児の役に立っている感)がなくなる
  • 寝れない
  • 思考の速度が会話に追いつかないので矢継ぎ早に話されるとパニックになる
  • 子どもが死んだらどうしようという不安が常に付きまとう
  • (妻いわく)笑顔が減った
  • (妻いわく)口数が減った

などが挙げられる。ちなみに、カップヌードル、卵かけご飯、カレーなどはほとんど咀嚼しなくても丸呑みでカロリーが接種できるので非常に便利。

原因としてはまず昼夜逆転生活がある。新生児期はなにが起こるか分からなくて不安だったので、朝から夕方まで妻が、夕方から朝までは自分が子どもを見守っていた。うっかり寝てしまっては困るので、栄養ドリンクとキューピーコーワゴールドαプレミアムとコーヒーを飲み続けて、朝6〜7時に妻を起こして交代する。そこから寝るわけだが、外は明るくなり交通量も増えてトラックやバイクの音は鳴り響き、接種し続けたカフェインも効いている上に、泣き声の幻聴も聞こえるしで、すぐには寝られずなんだかんだ9時頃に寝られる。眠りも浅いので泣き声や妻に呼ばれる幻聴で何度か中途覚醒しつつ、起きるのは15時〜17時頃になるため、すぐに日が暮れ始めて夕方が始まる。こうして、日光を避けた生活が1ヶ月半続いた。

また、父親は育児に関して外部から肯定されるタイミングがほぼ無い。母親は様々な検診や面談などで「おっぱいちゃんとあげられてますよ」や「抱っこはこうやって〜、うんうん上手ですよ。」のように助産師などから直接「あなたの育児は正解です」と肯定してもらえる。一方で父親はこういった検診や面談には基本同席することができないし、なにか言われたとしても「育休を取得していて偉いですね」くらいだ。育休取得率が上昇している昨今からすれば肯定としては弱すぎる。これは「年間5日の有給休暇を取得していて偉いですね」と言われるのと同程度には何も感じない言葉だった。

加えて、よく言われる「産後のママさんは交通事故にあったのと同じくらいなので、パパさんがしっかりサポートしましょう」という言葉が意図せぬ呪縛として父親を追い詰めていく。どれだけ父親が辛くなってきても「それでも母親のほうが大変なのだから、弱音を吐くなんて言語道断」だと考えてしまう。どのような負荷にどれだけ耐えられるかは人それぞれ。ハードな労働に耐えられる人が必ずしも育児の大変さに耐えられるわけではないし、その逆も然り。ちなみに、こういった言葉を伝えなければ真剣にならない父親が多かった結果であることは理解しているが、やる気満々な父親には逆に呪縛としてのしかかるのは、なんとも言えないままならなさを感じる。

ここまでをまとめると、自分がやっている育児が正しいか分からず、まともに寝られず、日光も浴びず、へとへとになっているが「それでも妻のほうが大変だから甘えてはいけない」と頑張り続けた結果おかしくなった。

希死念慮は一切なかったし育児のルーチンワークはできていたが、どうにもやばいということで妻から「泊まりで銭湯に行ったりしてリフレッシュしてきたら」と言われて出かけることになった。この頃の精神状態では出かけるのが面倒すぎたので「家で1日寝かしてもらえれば大丈夫だし、ワンオペでなんかあったら心配。」と伝えたが、「良いから外に行け」と譲らなかったので、渋々出かけることにした。

自分は長野という山の中で生まれ育ったので、山っぽいところに行くと回復しやすい。東京西部の自然が多い地域なら電車でも行きやすいので、武蔵五日市に出かけることにした。相変わらずホテルではよく寝られなかったが、きれいな川や山を眺めたり、温泉に行くことでかなり回復した。重い腰をあげて出かけてよかったし、提案してくれた妻には感謝しかない。さすが優秀な妻である。

ちなみに、こういった状態では産後ケアのショートステイなどを活用するのをおすすめする。我が家も利用しようと3週間ほど抽選申込を続けたが、倍率が高くて全く抽選に当たらなかったため自費での休息に切り替えた。

そんなこんなで、なんとか小康状態になりつつ過ごしていたが、生後2ヶ月ぐらいから子どもが夜にガッツリ寝るようになった。これにより自分も深夜3時頃には寝られる(なんと部屋が真っ暗になる!)ようになり、昼頃には起きて日光が浴びられるようになった。また、うちの子は夕方に寝ると全然起きない2ので、夜間見守りをしながらゲームや映画などで息抜きをする余裕ができたこともメンタル回復に大きく寄与した。

今では育児のルーチンも安定してきたので、元気に暮らしている。

さいごに

ひたすら育児の大変さが続いてしまった。記事を書いていく中で「子作りを考えている人やこれから育児が始まる人に、無意味な恐怖を与えてしまうのでは」とか「このような小規模なブログでは杞憂すぎでは」とか考えたが、「子どもが可愛くて毎日幸せハッピー」と外面を整えて、きれいな部分だけ発信していくのも違う気がしたので公開することにした。

子どもはかわいい。とにかくかわいい。かわいいから大変さが苦にならないわけではないし、大変だからかわいくないわけでもない。たいそうかわいく、すこぶる大変である。

聞くところによると「赤ちゃんはみんなかわいい」と思う人と、「自分ちの子はかわいいが、他所の子は別に」と思う人がいるらしい。自分は後者で、他所の子は「子どもだなぁ」くらいしか感じないが、自分の子供はとてもかわいい。

グラグラだった首が座り、寝返りができるようになり、うつ伏せでよだれを垂らしながらひたすらくるくる回って地獄のルンバになり、手で足を掴んでしゃぶりまくっていたりと、日々の成長を隣で見ていられる事はこの上ない幸福だと感じる。朝起きて様子を見に行くと、こちらを向いて「パパだぁ」と笑う様子は脳みそがとろけて、鼻からとろりと流れ出すほどであり、親バカとはこうやって脳が流れ出した結果生まれるのだと身にしみて感じる。

さて、とても長い記事になってしまったので、最後に俵万智さんの「未来のサイズ」から一首引用して終わる。

最後とは 知らぬ最後が過ぎてゆく その連続と思う子育て

ここまで長い記事を最後まで読んでいただいて、ありがとうございます。


  1. 「乳児用調製粉乳の安全な調乳、保存及び取扱いに関するガイドライン世界保健機関国連食糧農業機関、2007年 [PDF]
  2. 夜泣きがひどいよりは楽ではあるが、これはこれで夜間授乳時に起こすのに難儀する。

僕の考えた最強のオーディオ環境が完成した。

オーディオ環境を整えた。

背景

過去の記事にも書いたが、自分は長年Bose Companion 3 Series II systemを愛用してきた。

www.bose.co.jp

これは非常に良いスピーカーだけど、発売から19年も経ったため無視できないノイズが発生し始めた。また、3.5mmステレオミニプラグでの接続しかできない不便さや、サイズも大きくて邪魔になってきたのもあって1年前に手放した。

手放すタイミングで新しいスピーカーを色々調べてみたけど、ピンとくるものがなかった。 そのため、値段の割に音が良いと評判が高いCreative Pebbleを利用しておくことにした。

本当に安いのにそこそこ良い音がなってくれる。そのため「まぁ一旦こんなもので良いか」とお茶を濁してきたけれど、そこそこの音はやはりそこそこの音であって、どうしても満足できない日々を過ごしていた。

しかし、毎日スピーカーやアンプの動画を見続ける日々を過ごしてストレスをためるのもよくないため、本腰を入れて良い音が得られる環境を整えることにした。

管理したい入力・出力たち

1つのPCからの音をスピーカーから出力するだけなら、結構簡単に選択肢を絞れるが、自分のデスク環境は無駄に複雑化してしまっているので大変だった。

自分のデスクではまず入力として

がある。そして出力先として、

  • スピーカー
  • イヤホン
  • Bluetoothトランスミッター

がある。以前まではこれらを全部3.5mmステレオミニプラグでミックスしたり分岐したりしていた。当然ながらノイズには悩まされるし、高音質とは程遠い環境であった。3.5mmで全部何とかするのをやめて次のようにしたかった。

入力元 接続方法
Mac USB
Windows USB
iPad Bluetooth or ステレオミニプラグ
Nintendo Switch 光デジタル

ゲームやアニメなどのコンテンツをメインで楽しむMac, Windows, Nintendo Switchはなるべく良い音質でスピーカーまでたどり着いてほしい。一方でiPadは「PCスペックを消費させずに動画や音楽を流しておく」という用途に利用している。作業中のながら聞きに高音質は不要なため、3.5mmで適当につながってくれれば良い。

これの厄介な点は、1つの入力だけ鳴らせればよいのではなく、複数の入力をミックスして出力に流す必要があること。つまり、iPadで音を鳴らしつつも、MacやWinで流れた音もミックスしておきたい。PC側での通知音が聞こえなくなるのも困るが、毎回入力を切り替えてあげるというのは非常に面倒なのだ。

AVアンプやアクティブスピーカーを様々調査したが、これだけの種類と数の入力に対応しながらミックスをしてくれるものは非常に数が限られる。3.5mmでのミックスだったり、複数入力を受け付けていてもミックスはできずに排他的に切り替えできるだけだったり、プロ向けの巨大で高価なものだったりと、なかなかちょうどよい商品が見つからなかった。

ものを減らせば良いのに。

新しいオーディオ環境

こういった自分勝手な縛りをなんとか解決したオーディオ環境ができあがった。あまりにもややこしいので配線図から。

どうしてこんなことに。

各機材の解説

USBスイッチャー

WindowsMacからつながっていて、後述するUSB DACアンプに接続している。WinとMacを同時に利用して音を出したいニーズは自分にはないため、このUSBスイッチャーでつなげている。Macで作業する時はMacの音を出力し、Winで作業する時はWinの音が出力できる。

アンプだけでなく、マイク、StreamDeck、マウスやキーボードの受信機などもこれで切り替えている。

手元切り替えスイッチがあって便利。

USB DACアンプ

Sound Blaster X5を導入した。

Sound Blaster X5

https://jp.creative.com/p/sound-blaster/sound-blaster-x5

分類としてはゲーミングアンプなのだが、あまりにも機能が揃いすぎている。 入力だけでも

  • RCAライン
  • 光デジタル
  • USB Type-C(PCやゲーム機)
  • Bluetooth
  • 3.5mmマイク入力

が用意されている。専用アプリではそれぞれの音量を調整してミキシングができる。

ミキサー画面

面白いのがUSBホストが用意されている点で、ここにUSBマイクやヘッドセットをつなげたり、Bluetoothオーディオトランスミッターを挿して使うこともできる。詳しくは公式サイトを見てほしいが、あまりにも高機能になっている。

出力は、

  • RCAアンバランス
  • 3.5mmヘッドホン出力/4極ヘッドホン端子
  • 4.4mmバランスヘッドホン出力
  • 光デジタル出力

が用意されている。これ1台あれば様々な入力を1箇所にまとめて、様々な出力を行うことができる。

また、Directモードにするとミックスを一切行わずにUSB経由の音声だけにできる。Win,Macからの音声をハイレゾで楽しみたい場合はこれを使うと良い。Directとミックスはワンボタンで切り替えられるので非常に便利。

ヘッドホン出力はHP/HPKボタンでまず切り替えが走る。4.4mmに接続されていれば3.5mmには出力されず、4.4mmを抜くと3.5mmに音が流れる。

とにかく多機能で便利。公式サイト経由でしか買えないのがちょっと面倒ではあるけど、すぐに届いて良かった。

HDMI音声分離器

HDMIから光デジタルで音声を分離できるもの。

Nintendo SwitchHDMI出力をこの機械を経由することで、音を光デジタルとして分離出力することができる。まだ手に入れられていないが、Switch2でマリオカートの素晴らしい音楽を聞くのが楽しみ。

以前までPS4もつながっていたので切り替え機能がついているものを紹介しているが、音声分離だけできるものにしたほうが小型になっていいと思う。

スピーカー

ADAM Audio D3Vを導入した。

非常に良い。音質のレビューなどについてはYouTubeなどで見てもらうのが手っ取り早いと思う。昨今は商売上手なEDIFIERのせいで、猫も杓子もEDIFIERが良いしか言わなくなって辟易としていたし、選択肢を探るのが難しくなっていたが、頑張って探しだすことができた。

本製品には小さな音で再生する際に音がこもる問題があったが、ファームウェアアップデートで改善する。製品登録が必要で面倒だが、開封したらすぐににファームウェアアップデートするのが良い。

3.5mmスプリッター

シンプルにステレオミニプラグを分岐するやつ。USB DACからの3.5mmヘッドホン出力をこれに繋げて、後述するインナーイヤーヘッドホンとBluetoothトランスミッターに分岐して出力している。

インナーイヤーヘッドホン

3.5mmスプリッター経由でつながっている。インナーイヤーヘッドホン。

BOSEのインナーイヤーシリーズは最初に出たモデルから買い替えながらずっと愛用している。個人的にこのイヤーピースが非常に耳に合っていて、長時間つけていても疲れないし、耳をぎゅっと塞ぐこともないので圧迫感もない。

Companion 3 Series II systemと同様に、BOSEはこのタイプのイヤホンはもう作っていないので、壊れたら詰んでしまう。

ノイキャンヘッドホン

Bluetoothトランスミッター経由でBluetooth接続されているノイキャンヘッドホン。

kakaku.com

古いモデルなのでBluetoothも4系しかなく、遅延もそこそこあるため、ゲームや動画視聴には向いていない。作業に集中したいけど外音が気になるときにノイキャン+音楽で耳栓代わりにするために利用している。

「それだけのために?」と思うかもしれないが、このヘッドホンは今回のオーディオ環境改善前から使い続けていて、そのときには音楽をがっつり聞くために利用していた。ただ、今回の更新によって後述する開放型ヘッドホンが導入されたので利用頻度は激減している。

開放型ヘッドホン

せっかくアンプにバランス出力があるなら使いたい!と思って購入した。

開放型もバランス接続も初めての導入なので「みんな使ってる無難なやつにするか」と思ってこれにした。当該のゼンハイザーヘッドホンは「セールのときに買え」というのがよく言われていたので、セール時に購入。

あまりに長寿商品なので自分のレビューを読むよりも、様々なサイトや媒体でレビューを見てもらうのが最も良い。 個人的には女性ボーカル系の音楽が非常に心地よく、最近流行りのクリーントーンとも相性がいいと感じている。

開放型が初めてなので「わぁ、外の音が普通に聞こえる」というのも楽しい。

グランドループアイソレーター

ノイズ除去用に導入した。

これだけ色々なものを繋げた結果、グランドループが発生してノイズが乗るようになってしまった。具体的にはiPadBluetoothトランスミッター経由でノイズが入ってくる。そのため、このグランドループアイソレーターを途中でかませることで、ノイズを消すことができた。

ものを減らせば良いのに。

感想

とても良い環境が整った。前から導入したかったバランス接続も用意できているため、音楽も映像もゲームも快適に楽しめている。

以前のそこそこスピーカーでも問題はないといえばなかったが、どうしても解像度の低さを感じた。

例えば解像度の低い粗い画像をパワポ等で拡大するとジャギジャギしてしまうように、音にも同じことが起きていると思う。解像度が低いは聞き取りにくくなり、聞き取れるように音量を上げていくと自分が思った以上に大音量で音を聞いてしまう。良い音響環境を整えていくと、小さな音でも聞き取りやすくなるので無駄に大音量にしなくても良くなる。

逆に大きな音を流した場合でも「うるさい」ではなく「音が大きい」という状態になってくれる。

なかなか言葉では説明しにくいが、音の分離感とか粒感といったものはそういう感じなんだろう。

正直、アンプの後ろに置くからパッシブスピーカーで良いんだよなとか、スピーカーの置く場所とデスクマットが干渉してるからスピーカースタンド買わないとなぁとか、スピーカーがバランス入力できるけどアンプはアンバランス出力なんだよなぁとか、様々な沼が見えているが今は見なかったことにしておきたい。お金がいくらあっても足りない。