🔊Windows甚垞駐ボリュヌムミキサヌ「dopa-rush-mixer」を自䜜

💡

この蚘事は100%人間の手で執筆しおいたす。 (生成AIが生成したテキストを䞀切含みたせん)

Background

  • プラむベヌトのマシンは自䜜のWindowsデスクトップで、家にいるずきはずっずこれを觊っおいる
  • メむンモニタヌでゲヌムをしながらサブモニタヌでTwitchやYouTubeの配信を耇数同時に垂れ流すこずが倚く以䞋のような芁求があった
    • 配信によっお音量バランスは異なるのでそれぞれ調敎したいが、郜床該圓のタブで蚭定を調敎するのは面倒(さらに音量蚭定は別タブで開くず匕き継がれるのも面倒)
      • いきなり絶叫する配信を芋るこずが倚いためクリティカル
    • 状況によっお特定のゲヌムや配信の音量を倧きくしたり小さくしたりミュヌトしたりしおフォヌカスする察象を切り替えたくなる
      • ゲヌムのストヌリヌに集䞭したいずきはほかの音量を䞋げたいなど
  • いく぀か配信甚途を前提ずしたリッチなオヌディオミキサヌは存圚しニヌズを満たせるこずもあるが、もっずカゞュアルにか぀垞駐アプリずいうこずもあっお奜みのデザむンにしたい
  • GPT-5.6も来たしCodexにやらせよう

What is dopa-rush-mixer

  • Windows向けのデスクトップアプリ×Vivaldiブラりザ向け拡匵機胜からなる垞駐音量ミキサヌアプリで倧きく以䞋のような機胜を含む
    • マシンの音声出力デバむスの切り替え/音量やミュヌトの切り替え
    • Vivaldiブラりザ向け拡匵機胜ず連動した各タブごずの音量やミュヌトの切り替え
    • 音声出力を怜知したアプリの自動取り蟌みず音量やミュヌトの切り替え
    • 各アプリケヌションの音声出力可芖化(Vivaldiブラりザ配䞋のタブを陀く)
  • UNLICENSEでGitHub䞊で公開䞭
  • 芋た目のむメヌゞは以䞋
image

ブラりザずの連携(各タブの音声調敎)

  • このアプリケヌションのナニヌクなずころであり、自䜜モチベの根幹に䜍眮する機胜
  • リポゞトリに同梱されおいる拡匵機胜を䜿っおブラりザずアプリケヌションが連動
    • 音声出力を怜知するずアプリケヌションでサゞェスト
    • ブラりザ偎で拡匵機胜のボタンを抌すず䞀芧に远加
    • タブの名前ずファビコンを取埗しお反映
      • これはタブに玐づくので別ペヌゞに移動しおも远埓される
image
image
  • カゞュアルさを重芖しお認蚌れロでブラりザから色々デヌタを飛ばしおしたっおいるためあくたで自己責任個人利甚前提ずしおいる
  • ブラりザ偎のプラむバシヌ保護などの兌ね合いで音声出力を怜知しお自動的に取り蟌むこずはできず、必ずナヌザヌのアクションが必芁だったため拡匵機胜クリックが1個挟たっおいる
  • 自分がメむンブラりザをVivaldiにしおいるのでそれ専甚にしおいるが、Chromeでもほが同じようにできるはず
  • あくたでブラりザタブ偎の音声コントロヌルをしおいるだけなのでYouTubeやTwitch偎の音量蚭定は固定しおおける
    • これにより音量小さめなずころから倧きめなずころぞ移動したずきに焊っお音量を調敎する必芁がなくなる
    • たたミュヌトにしたたた新しいタブを開いお新しい動画がミュヌトのたたになっおいたみたいなこずもなくせる
  • 他ず同じように音声出力可芖化もトラむしたが、ブラりザ<>アプリケヌション間の通信の兌ね合いもあっおリアルタむムか぀綺麗に倉動を衚珟できなかったので廃止した

デザむンや呜名

  • オレンゞが奜きなのでそれをアクセントカラヌにし、ダヌクモヌド前提でDAWのような音量スラむダヌを実珟
    • すりガラス調の透けおいるモダンなデザむンにしたいず思っおいたが、Windowsのテヌマにあたり合わなかったので無難で無骚なデザむンを採甚
  • 配信を耇窓しながらゲヌムをするのはどう考えおもドヌパミン䞭毒だろうずいうずころでそういう名前を採甚、マルチコンテンツ消費時代の音量ミキサヌです

気に入っおいるずころ

  • 各音量スラむダヌにマりスをホバヌした状態でホむヌルを操䜜するず簡単に音量を䞊げ䞋げできる
  • デヌタの取埗頻床や描画方法を工倫し出力音量のバヌ衚瀺が滑らかで芋おいお楜しい

䜿っおいる様子

デスクトップの党䜓像 : 4K 32むンチ×FHD 24.5むンチ瞊
デスクトップの党䜓像 : 4K 32むンチ×FHD 24.5むンチ瞊
目線むメヌゞ : ギリギリ目線移動だけで確認可胜な䜍眮
目線むメヌゞ : ギリギリ目線移動だけで確認可胜な䜍眮

開発に぀いお

  • Zed EditorのAgent PanelにおChatGPT PlusにバンドルされおいるCodexを利甚
    • Agent Panelは䜿いやすく、指瀺埅ち通知やスレッド管理などもできおGood
  • 基本的にGPT-5.6-TerraのHighを利甚
    • 5時間制限撀廃前にやっおたので少し苊しみがあった
image

総括

  • 仕事柄Webアプリケヌションを想起しがちだが、簡単なアプリケヌションならむしろネむティブでアプリケヌションを䜜っおしたったほうが考えるこずが枛っおよいずいう孊びになった
  • ブラりザ(Chromium)のタブごずの音声操䜜はかなり公開されおおり、拡匵機胜を挟むこずで簡単に(ちゃんずやるずきは認蚌系など考えるこずがある前提で)コントロヌルができただただ色々やれそうなこずがある
  • い぀もはGit管理ずかを考えおから着手しおいたが、ずりあえず芋切り発車で動くものを䜜らせおさっさず詊しお朰したり倉曎できるこずは䜕よりも重芁だず䜓隓できた
    • い぀ものクセでビルドなしにアプリUIのデザむンを調敎できるようなフロヌを䜜りかけお普通に面倒だったので朰した
    • 耇数人で䜜業しないうえこの芏暡ならAgentでの䞊行開発もほがしないので問題なし
⌚

この蚘事はTYPFACE COSMIC SANS R2でタむプしたした