ステレオ・バランスド経路を排他的に2分岐するスイッチが欲しかったが見つからず、仕方ないので作った。

GND もスイッチしたかったが6回路の物理スイッチというのはかなり入手しにくいので諦めてHOT/COLDだけスイッチとした。それでも4回路2接点スイッチが必要なため面倒くさい。今回は4回路3接点のロータリースイッチ を2接点に制限して使っている。

電源が必要でいいならリレーでいいが、電源の用意がめんどくさい。やるとしたらラッチングリレー(切り替え時だけ通電させるリレー)を使いたいが高価……

やりたかったこと

スピーカーがオンのままヘッドフォンをつけてしまい、スピーカーが鳴っていることに気付かないことが時々ある。これが嫌なので物理的になんとかする。

こんなことしなくても出力するインターフェイスを分けてPCから切り替えれば普通はいいはずだけど、アナログミキサーへ出力していて、そのモニター出力からスピーカーとヘッドフォンを出しているので、そうできなかった。

  1. トップ
  2. tech
  3. ステレオ・バランスド経路 (4ch) 切り替えスイッチ

書き出しするとき、YouTube 設定でマーカーをチャプターにしてくれる機能がある。書き出したあとに再生成とかしたいので、どこかから普通にテキストとして書き出して欲しいが、たぶんできない? ので他の方法でなんとかした。

  1. マーカーのあるタイムラインを選択して右クリック
    • [タイムライン] → [書き出し] → [タイムラインマーカーからEDL…] を選択して保存
  2. 以下のスクリプトを実行する
#!/usr/bin/env ruby

TC_POS = 0
TARGET_COLOR = "ResolveColorBlue"

chapters = []
tc = nil
while l = gets
    l.chomp!
    case l
    when /(\d\d):(\d\d):(\d\d):(\d\d) (\d\d):(\d\d):(\d\d):(\d\d) (\d\d):(\d\d):(\d\d):(\d\d) (\d\d):(\d\d):(\d\d):(\d\d)/
        tc = Regexp.last_match.captures.each_slice(4).to_a[TC_POS].map(&:to_i)
    when / \|C:(.+?) \|M:(.+?) \|/
        color, name, *_ = *Regexp.last_match.captures
        if color == TARGET_COLOR
            chapters << {
                name: name,
                color: color,
                tc: tc,
            }
        end
    end
end


remove_hh = chapters.map {|c| c[:tc][0] }.uniq.size == 1

chapters.each do |c|
    c[:tc].pop # frame
    if remove_hh
        puts "%02d:%02d %s" % [ *c[:tc][1..], c[:name] ]
    else
        puts "%02d:%02d:%02d %s" % [ *c[:tc], c[:name] ]
    end
end
  1. トップ
  2. tech
  3. DaVinci Resolve のマーカーから YouTube のチャプターを書き出した後に生成する