投稿記事

拍手プランの記事 (7)

シユカ 2023/05/27 17:58

Twitterプロフィールへのリンク表現方法いろいろ

はじめに

バーチャルタレントの活動において広く利用されているプラットフォームには、投稿型動画共有サイト以外にも、TwitterやDiscordなどのテキストを主軸としたソーシャルネットワーキングサービスがあります。
特にTwitterは閲覧者の匿名性の高さや速報性の高さから広く利用されており、多くのバーチャルタレントがアカウントを1つかそれ以上所有していると考えます。

他のバーチャルタレントとコラボレーションする場合など、他の利用者やそれによる投稿へ言及することはしばしばありますが、この表現方法には複数のパターンがあります。

この記事では、Twitter上のユーザへ言及する際に利用できるいくつかのパターンについてまとめていきます。

なお、本記事は執筆時点である 2023年5月27日 の仕様に基づき記述しています。現在のTwitterは目まぐるしいスピードで変化している為、将来的に挙動が変わる可能性があります。

Twitterにおけるユーザの "名前" と "ID" とは

ユーザプロフィールへのリンクについて解説する前に、Twitterにおける名前およびID概念について言及しておきます。
Twitterにおいてを一意に特定できる手段は一般に2つあり、また一意に特定できない単なる名前も同時に存在します。

厳格に区別して表現することが必要不可欠なシーンでは、たとえば

  • 名前: display name
  • ユーザー名: screen name
  • ユーザーID: user id

などと呼ぶことで、ある程度判別しやすくなるのではと思います。

名前

プロフィール上で設定するユーザの名前です。自由に変更可能で、他のユーザと重複しても問題ありません。

ユーザ名

一般に @ を先頭に付与し表現されている名前です。他ユーザへメンションを送る時などで使います。自由に変更できますが、他のユーザと重複することはできません。

ユーザID

ほとんどのユーザは目にすることのない情報です。アカウントを作成した際に付与されるIDで、Twitterの内部的なデータ表現や、サードパーティのアプリからTwitterへ読み書きをする際に使われることがあります。変更することはできず、他のユーザとも重複しません。またユーザ名を変更しても、この値が変わることはありません。

ユーザのプロフィールへリンクする

いくつかの方法があります。一般的には下記の形式であることが多く、また通常はこれで十分でしょう。

  • ツイート上の場合
  • 他媒体の場合
    • ユーザのプロフィール上で もっと見る メニュー内の プロフィールのリンクをコピー をクリックし、クリップボード内へコピーされるURLを利用する

ツイート上の場合

@{screen name}の形式でツイート内に記述する

ツイート中で@twitterのように本文中へ@から始まりscreen nameを記述することで、ツイート中の当該部分が当該ユーザへのリンクとなる機能があります。これをTwitterでは@ツイート、あるいはmentionと呼んでいます。この方法は最も一般的であり、推奨される方法です。

ツイートされると言及されたユーザは通知を受け取り、また当該のツイートが「いいね」されたり「リツイート」されたりと何らかのリアクションがあれば、同様に通知を受け取ることになります。

@ツイートをツイートの先頭で行う時の注意例

なお、ツイートの先頭で@ツイートを行う場合は注意が必要です。Twitterは@ツイートから始まるツイートを「相手ユーザへの返信」として取り扱う為、プロフィールやタイムラインでの表示に制限が掛かります。具体的には、あなたと相手ユーザの両者をフォローしている場合しか表示されない点に注意してください。
この仕様は以前に一度変更されたこともありますが、執筆時点では従来どおり有効です。

たとえば自身がこのようにツイートします。仮に「@kiganix をフォローしているが、@null はフォローしていない」というフォロワーがTwitterを閲覧した場合、

タイムライン上ではこのような見え方になってしまいます。またこのユーザからプロフィールを閲覧する場合、

上記のように1件しか見えない形となり、先頭に@ツイートを含むツイートは、返信タブ内でのみ閲覧可能となります。

これを回避するには、ツイート内で先頭に@を記述しないよう文章を工夫すれば問題ありません。たとえばオーソドックスな方法としては.@twitterのような形式で、.などの@以外の文字を先頭とする方法が挙げられますが、なんらかの自然な文章の形を取るとより良いでしょう。

ツイートに画像を添付しタグ付けする

@ツイートと同様にTwitter上で他のユーザへ言及する方法として強力なのが、画像へのタグ付けです。これはツイートに画像を添付している場合のみ利用可能です。

この場合も「いいね」等のリアクションがあれば、言及されたユーザは通知を受け取ることができます。

なお、この方法は相手方のコントロールできる余地が最も大きいものであり、

  • 相手方がプロフィールを非公開としている場合、タグ付けができない
  • 相手方がタグ付けを禁止できる
  • 相手方がタグを自身で削除できる

という特徴があります。これは裏を返せば条件が揃わないと利用できない機能とも言えますので、利用したい場合は相手方と事前に調整する必要がある場合も考えられます。

ツイート中に#{screen name}の形式で記述する

ここまでの方法はTwitterが公式に用意した機能であり、推奨される方法です。原則としてこれらを使うべきでしょう。
しかしツイートへなんらかのリアクションがあった場合に相手へ通知を送信したくない場合、これらの機能を利用することは少々抵抗があるかもしれません。

そのような場合の方法として、相手のscreen nameをハッシュタグの形式で記述するというハックがあります。

たとえばTwitter Supportscreen name@TwitterSupportです。これを当てはめて#TwitterSupportとし、ツイート内に記述します。

これは単なるハッシュタグですから、クリックしても遷移先は検索画面です。しかしTwitterでは検索ワードと完全一致するscreen nameがある場合には検索結果の最上位に当該のユーザを表示するので、結果的にフォロワーは当該のユーザを発見することができます。

なお、この方法は冒頭でも述べたとおりあくまでハックですから、どうしても相手方に通知を送りたくない場合以外では使うべきではないでしょう。通知を受け取りたいか否かは受け取り手自身が決めることができ、このような方法を取ると、本来受け取りたかった通知に気付けない原因となります。

ツイート中にリンク形式で記述する

もう一つ相手へ通知を送りたくない場合の方法として、相手のプロフィールへのリンクを用いるというハックが考えられます。

具体的にプロフィールへのリンクとして利用できる形式は後述します。

なお、この方法は冒頭でも述べたとおりあくまでハックですから、どうしても相手方に通知を送りたくない場合以外では使うべきではないでしょう。通知を受け取りたいか否かは受け取り手自身が決めることができ、このような方法を取ると、本来受け取りたかった通知に気付けない原因となります。

他媒体の場合

Twitter以外の媒体からTwitter上のユーザへ言及するには、通常そのユーザのプロフィールへのリンクを記述することになります。
Twitterでのリンク取得および記述形式には複数のパターンがあります。

ユーザのプロフィール上でもっと見るメニュー内のプロフィールのリンクをコピーをクリックする

最もオーソドックスな方法です。この方法を用いることで、クリップボード内に当該ユーザプロフィールへ直接遷移可能なURLが発行されます。
このURLは特段加工せずそのまま利用して問題ないと考えます。

自動付与される?s=について

この操作を行なった場合、URLの末尾に?s=から始まる数値が付与されます。これはTwitterが何らかの理由で付与しているものです。
一般的にこのような末尾文字列は利用状況の追跡を目的として付与するものですが、Twitterは公式には理由を公表していません。

後述する形式と照らし合せるとわかるとおり、当該querystringは削除しても正常に動作します。

  • 例: https://twitter.com/Twitter?s=20 -> https://twitter.com/Twitter

https://twitter.com/{screen name}の形式で記述する

Twitterプロフィールへ直接遷移可能なリンクは非常にシンプルな形式です。具体的には、https://twitter.com/の直下にscreen nameを記述するのみです。
たとえば@Twitterの場合、https:/twitter.com/Twitterと記述すれば問題ありません。

User IntentsのMini-Profileを使う

Twitterの機能として、Web Intentsというものがあります。あまりメジャーではありませんが、この内のMini-Profileを用いることで、User IDを用いた恒久的な固定リンクを作ることができます。
これは即ちscreen nameを如何に変えても利用し続けることが可能なURLですから、リンク切れの心配が少なく多くのケースにおいて有用なものであると考えます。

URL形式は下記のとおりです:

  • https://twitter.com/intent/user?user_id={user id}

対象とするユーザのUser IDを取得し、?user_id=のパラメータとして設定すればよいでしょう。
たとえば下記のような形式です。

  • 例: https://twitter.com/TwitterJP -> https://twitter.com/intent/user?user_id=7080152
    • @TwitterJPUser ID7080152である為

User IDを特定する

User IDは普段ほとんど目にすることがありません。ご自身の手でTwitter APIを用いて特定するのが最も良い方法ですが、たとえば下記のような第三者のアプリでも特定が可能です。

おわり

以後の部分にコンテンツはありませんが、有料プランに加入するとシユカが最近食べた冷凍食品ドリアの商品名(約24文字)を知ることができます。

【 拍手プラン 】プラン以上限定 支援額:110円

このバックナンバーを購入すると、このプランの2023/05に投稿された限定特典を閲覧できます。 バックナンバーとは?

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

シユカ 2023/05/23 22:16

初めてでもYouTubeやニコ生向けに配信音声のラウドネス設定を無償の範囲内で作れるリファレンス

はじめに

YouTubeやニコニコ生放送でライブ配信をしていると、自身が思っているよりも音声が小さくなっていて視聴者から指摘を受けるということがしばしばあります。
これは多くの場合、配信内の音声について大小の幅が大きすぎる故にベースとする音量を小さくしてしまっていることに起因します。

またその逆に、急に大きな音を出した際に配信の音声が消えてしまう(本来の語意と異なりますが、俗に "ノイキャン" などと揶揄されていることもあります)現象に遭遇した方もいらっしゃるかもしれません。

この記事では、そのような配信音量に関する問題を解決する為、初めての方向けのリファレンス構成をまとめていきます。

なお、本記事で解説する範囲はあくまでも初めての方が無償ソフトウェアのみを使って構成する際の参考情報です。実際にはより高度なVSTプラグインを購入するなどして実現することを推奨します。

あわせて読みたい

前提

Kilohearts Essentialsとは

今回利用するKilohearts Essentialsは、スウェーデンのKilohearts ABが提供するプラグインバンドルです。
会員登録をすれば、Kilohearts Installerから30を超える高品質なVSTを導入することができます。

Kilohearts Essentialに含まれるVSTは無償で利用できますが、より高度な追加VSTプラグインを利用したい場合、買い切りのKilohearts Ultimate Bundleや、サブスクリプション型のKilohearts Subscriptionを購入することもできます。

この記事で利用するVSTプラグインは、

のみであり、これはEssentialsに含まれる無償プラグインです。

想定する配信構成

今回は所謂ストリーマー活動における配信を想定します。具体的には、

  • ゲームやBGMに相当するトラック
  • ストリーマー自身の音声に相当するトラック

の2つを持つ形式です。


要はこういう感じ

1. 素材となるスピーチを収録する

下記2つの収録をし、保存します。

  • 最も小さなスピーチ
    • ストリーマー自身の発声の内、配信上で発生しうる、かつクリアに聞こえていることを期待する音量で収録をします
    • いわゆる "小声"、"囁き" をメインコンテンツとして据えない限り、これは自然に発声しうる中での "小さい声" の範疇に留めるようにしてください
  • 最も大きなスピーチ
    • ストリーマー自身の発生の内、配信上で発生しうる、かつクリアに聞こえていることを期待する音量で収録をします
    • いわゆる "叫び声" などが発生する場合はそれを、そういった音声が発生が起き得ない場合は自然に発声しうる中での大きな声にしてください

音声の収録方法

配信で利用するハードウェア構成で収録しましょう。エフェクト等を掛けず加工前の状態で保存することを強く推奨します。

音声収録で日常的に利用しているツール(DAW等)が無い場合、

などの利用が可能であれば、それらで問題ないかと思います。

2. VSTホストで収録した音声を読み込む

収録したスピーチについて、お使いのVSTホストに読み込んでください。今回はElementの利用を想定します。Elementには Audio File Player というプラグインがビルトインされていますので、こちらを使うとよいでしょう。

この時点で Loop を有効にしておきましょう。
まだPlayをクリックする必要はありませんが、このあと検証の際では再生されている必要がありますので、今の内にクリックしておいても構いません。

この操作は収録したスピーチ2種類それぞれで行う必要があります。


設定例

3. BGMやゲーム音声を読み込む、またはキャプチャする

2と同様に、VSTホストアプリにゲーム音声やBGMが取り込まれた状態にしてください。
(OBS等を経由し)常に音声が入力され続ける状態にしても構いませんし、先程の要領でBGMをファイルとして設定しておく形式で再現しても構いませんが、配信と同じ音声やキャプチャ時のボリュームとなるよう注意してください。


例として、今回はファイルを指定してみました

4. 一時的に検証用ファイルで入力を置き換える

通常は配信用のソース(キャプチャ)をElement上でInputとし、Audio Mixerへ接続するような形式を取っているかと思います。
このInputについて、さきほど2で設定した検証用のものに置き換えます。

今回は2種類の収録をしているので、後続のステップではそれぞれで検証を行う必要があります。まずは 最も小さなスピーチ を接続しておきましょう。

また3でBGM等を(本番で利用するソースではなく)ファイルなどで再現する判断をされている場合、同様に差し替えをしてください。


設定例。あくまで一時的なものです。

5. ラウドネスメータを追加する

Mix済みの音源をラウドネスメータで分析できるようにします。今回は Youlean Loudness Meter 2を前提としますが、普段お使いのものがあればそれでも構いません。


設定例

6. Dynamicsを追加する

具体的にどのような値を目指すべきかは個々の好みや配信の性質により異なりますが、

  • SHORT TERMINTEGRATEDが配信先サービスの基準となる値を越えていないこと。またそれを下回りすぎないこと。
    • YouTube等の場合は-14.0 LUFSが現時点の基準値であるとお考えください
  • TRUE PEAK MAX-0.1 dB を越えないこと。また下回りすぎないこと。

を全体を通してのひとつの目安とお考えください。
上記の範囲内へ音声を調整する為、Dynamicsプラグインを追加します。

6-1. プラグインを接続する

kHs Dynamicsという名称で利用できます。挿入すべき位置は、音声のInputとAudio Mixerの間です。


設定例

6-2. 初期設定をする

ここで行う設定は、あくまでも初めてこの作業を行う方であり、かつ対象とする音声がストリーマー自身の声であることを前提としています。
そのような前提において、下記に記す項目の値は下記のとおり決め打ちにしてよいでしょう:

  • Low Ratio: 1.0:1
    • 最も左下にある をデフォルトのままにすればOKです
  • High Ratio: 30:1
    • 最も右上にある をドラッグし、可能な範囲の最も下まで下げればOKです
  • Attack: 20%
  • Release: 200%
  • Knee: 2.5 dB
  • Out Gain: 0.0 dB
  • Mix: 100%

また、続くステップで変更する内下記2つの値についてはこのように変更しておいてください:

  • High Threshold: 0.0 dB
    • 右側の縦線をドラッグし、可能な範囲の最も右まで動かせばOKです
  • Low Threshold: 0.0 dB
    • 左側の縦線をドラッグし、可能な範囲の最も右まで動かせばOKです


まずはこの状態を作ってください

7. モニターしながら、最小値の調整をする

各Inputについて再生された状態にし、ラウドネスメータを見ながらモニターしてみましょう。まずはこの状態で聴こえる音声を最小での基準とし調整をします。

7-1. BGMやゲーム音声を小さくする

多くの場合、BGM相当によってストリーマー自身の声がかき消されてしまっているはずです。Audio Mixer の当該トラックで音量を小さくしましょう。
この時点で値を決定することは難しいかと思いますので、まずは日常的に動画を視聴する際のスピーカー/ヘッドホン音量にて大体動画BGMってこのくらいかなというモニター時音量まで下げれば十分です。


設定例。黒いバーを下方向にドラッグし、耳を頼りに -xx.xx dBのような表示にすればよい
もし自身の声質に合わせて細かくミキシングする場合は、ご自身の使い慣れたプラグインで調整してください

上記を行ったら、ラウドネスメータの値を一度リセットしてください。


この✖ボタンです

7-2. スピーチのゲインを上げる

ラウドネスメータの値を確認しながら調整していきます。

具体的にどのような値を目指すべきかは個々の好みや配信の性質により異なりますが、今回は例として、最小値として

  • SHORT TERM-20.0 LUFS を下回らない
  • TRUE PEAK MAX-0.3 dB を越えない
  • 自身の声が聴こえる

を目安としてみましょう。全てが当てはまるなら、ゲインを上げる必要はありませんので次のステップへ進んで構いません。当てはまらない場合、スピーチの音量を上げていきます。

In Gain を上下にドラッグすれば、音量が変わり SHORT TERM 等の表示も変化することを確認できるはずです。


設定例。環境やご自身の声質により値は大きく変わるはずです。

必要に応じ、BGMの音量も再調整したり、改めてラウドネスメータの値をリセットしながら確認してください。

8. モニターしながら、最大値の調整をする

次に、最大値の調整を行います。

8-1. 検証用ソースの差し替えをする

現在検証用の音声として 最も小さなスピーチ を利用しているかと思いますので、これを 最も大きなスピーチ と差し替えましょう。


設定例

8-2. スピーチにコンプレッサーを掛ける

ラウドネスメータの値を確認しながら調整していきます。

具体的にどのような値を目指すべきかは個々の好みや配信の性質により異なりますが、今回は例として、最大値として

  • SHORT TERM-14.0 LUFS を上回らない
  • INTEGRATED-14.0 LUFS またはそれに近い
  • TRUE PEAK MAX-0.1 dB を超えない
    • 音割れリスクを恐れる場合は -0.3 dB を目安としても良いでしょう
  • BGMが辛うじて聴こえる

を目安としてみましょう。

現時点で INTEGRATED の値が常に -14.0 LUFS を下回る(-20 に近いなど)場合、7 で行った In Gain の値を上げて -14.0 LUFS へ近づけるようにしてください。コンプレッサーを掛ける必要はないと考えます。
この逆に現時点でひとつでも当てはまらず、かつ SHORT TERM の値が -14.0 LUFS を一度でも上回ってしまう場合、このステップに従いスピーチにコンプレッサーを掛けていきましょう。


設定例

具体的に行う作業は、Low ThresholdHigh Thresholdの両方を同時に動かし、ラウドネスメータ上の値を -14.0 LUFS へ揃えていくだけです。縦線のコントロールを左方向へスライドさせればOKです。

9. 接続を元に戻す

ここまでで利用していたのは検証用の音声なので、これを元のInputから取るよう元に戻してあげてください。


設定例

なお、これで検証用の音声は不要となりますので、23で追加したAudio File PlayerがあればElement上から削除して構いません。

10. 調整する

最終的に、自身が声を吹き込んだりBGMやゲームの操作を行いながら調整を行ってください。具体的には、

  • SHORT TERM の値は -14.0 LUFS を目標とし、上回らない範囲で近い値となる
  • INTEGRATED の値は -14.0 LUFS を目標とし、上回らない範囲で近い値となる
  • TRUE PEAK MAX の値は -0.1 dB(または -0.3 dB)を越えないようにする

を意識するとよいでしょう。これらの値を踏まえ、自身の感覚で問題ないボリュームバランスを作ればよいかと思います。Audio Mixer のボリュームや、DynamicsIn GainHigh ThresholdおよびLow Thresholdを調整してみてください。

ちなみに

今回 6 から 10 にかけて行った作業はあくまで無償にて利用できるプラグインを用いて実現可能な範囲の基本的な設定を行ったにすぎません。また、現実には配信中も都度状況に応じた調整を行うべきです。

下記のような製品を利用することで、これらの作業をより簡潔にし、またさらなるクオリティの向上も図ることができます。
ある程度配信経験を積んだら必要を実感することがあるかと思うので、検討してみてください。

おわり

以後の部分にコンテンツはありませんが、有料プランに加入するとシユカが先日試したイチオシのエナドリ(約5文字)を知ることができます。

【 拍手プラン 】プラン以上限定 支援額:110円

このバックナンバーを購入すると、このプランの2023/05に投稿された限定特典を閲覧できます。 バックナンバーとは?

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

シユカ 2023/05/22 22:58

OBSで疑似的にBusトラックを作りラウドネス分析や複雑なエフェクトを実現する

はじめに

OBSの各種キャプチャ機能は非常に優れています。プラットフォーム問わず同一のインターフェイスであること、複数種類のキャプチャ手段を備えること、無償であることなど、ゲームプレイの配信だけでなく様々なユースケースにおいて利用を検討できます。

しかしながら現状のOBSは高度な音声処理については実現が難しい部分が多く、特にMaster trackや複数トラックを束ねて(Bus track)なんらかの分析やエフェクトを掛ける為の機能は用意されていません。

上記故、OBSにおいて音声のクオリティを高めようとした場合、通常は外部のソフトウェアでオーディオのキャプチャとミキシングを行い、OBSはその取り込みと映像の処理だけを行うような構成を考えることとなりますが、インタラクティブな機能などの都合でどうしてもOBSによるキャプチャが必要なケースもあります。

この記事では、OBSにより映像や音声のキャプチャを行いながら、高度な音声処理を行う場合の構成についてリファレンスとしてまとめを書いていきます。

なお、この記事で解説する方法は少々荒業的な感覚を筆者自身が強く持っておりますので、今後よりgracefulな手段(たとえばOBS上のグループ機能でオーディオフィルタを利用する機能の追加など)が生まれれば、そちらを推奨したいと考えています。

また、この記事中で利用するReaStreamはその仕組み上音声の遅延が発生しやすく、音声の遅延が致命的な配信形態では利用が難しい点もご注意ください。

前提

ReaStreamとは

今回利用する ReaStream とは、ReaPlugs VST FX Suiteに同梱されるVSTプラグインです。
このVSTプラグインを利用すると、ネットワーク越しに同プラグイン間で音声やMIDI信号の送受信が可能になります。今回はこれを用いることで、VADを占有せずに外部のVSTホストアプリとOBSでキャプチャした音声を送受信します。

ReaPlugs VST FX Suiteは無償で利用できますが、これらのVSTプラグインが本来同梱されるREAPERを有償で購入することもできます

Elementとは

今回利用する Element とは、米国のKushviewという小規模企業が開発しているVSTホストアプリです。DAWのような高度な作曲用機能を持たないシンプルな構成であることが特徴です。
今回はOBSでキャプチャした音声をReaStreamを経由しこのElementへ送ることで、高度な音声処理を実現します。

なお、Elementの開発は現在GitLab上で行われていますが、インストーラ等のバイナリはGitLabから取得することができません。Kushviewの公式ウェブサイトは本日404ですが、バイナリだけであればGitHubから取得可能です。

ElementはGPLv3で提供されている為無償から利用することができますが、さまざまな方法で開発を支援することができます。

OBSとVSTホストアプリの接続

今回の肝となる作業です。

1. 必要なソフトウェアをインストールする

今回はOBS以外のソフトウェアとして下記を利用します。事前にインストールしてください。

  • ReaStream
    • ReaPlugs VST FX Suiteをインストールすることで導入できます
  • なんらかのVSTホストアプリ
    • 普段お使いのもので構いません
    • 今回は、無償から利用できるElementを例に取ります

2. OBSで必要なソースを追加する

配信において利用したい音声のキャプチャをひととおり済ませてください。ここでは普段と変わらない方法で構いません。

3. 各音声ソースをミュートにする

2で追加した各音声ソースについて、音量をミュートにしてください。対象は今回ReaStreamを用いて外部VSTホストアプリへ送信したいソース全てです。


VDO.Ninjaのブラウザソース、マイク、ゲームキャプチャなど様々

念のため書いておくと、この操作から察せられるとおり、各ソースの音量調整をしようとOBSの音量設定を操作しても無視されることとなり、原則送信先のVSTホストで行うこととなります。注意してください。

4. 各音声ソースにReaStreamを設定する

各音声ソースの フィルタ音声フィルタ として、VST 2.x プラグイン を追加します。

ReaStream を選択します。具体的には reastream-standalone となっているはずです。

選択したら、プラグインインターフェイスを開く をクリックし、

  • Enabled を選択
  • Identifier: このトラックを一意に識別できる任意の文字列
    • 他のトラックと同じにならないよう上手く設定してください
  • Send audio/MIDI を選択
  • IP: * local broadcast

となるように設定しましょう。


設定例。

ここでの操作は全ての音声ソースで繰り返し行う必要があります。


設定例。今回は対象とするトラックが2つなので、それぞれこんな感じにしてみた。

5. Element上でReaStreamを経由し音声を受信する

Element(またはお使いのDAW)を起動し、ReaStreamを追加します。
Graph 内でコンテキストメニューを開き、PluginsからReaStream (reastream-standalone) を選択すればよいでしょう。

さきほどOBSで行ったのは送信側ですから、ここでは対応する受信の設定を行えばOKです。具体的には、

  • Enabled を選択
  • Identifier: さきほど設定したトラックの識別子
  • Receive audio/MIDI を選択

のような形です。これもトラックごとに繰り返し行う必要がある点に注意してください。


設定例。

6. 必要に応じてエフェクトを掛ける

適用したいエフェクトを、5で追加したReaStreamから接続する形で行ってください。場合により、後続7のMixer後が適切なケースもあります。

具体的には、本記事にて後述する使用例「ラウドネス分析をする」などの作業を行うとよいでしょう。

7. Mixerを通す

あくまでイメージですが、受信した音声をMaster trackへ束ねるとお考えください。
Graph 内のコンテキストメニューから ElementAudio Mixer を追加してください。

Audio MixerのInputへ、各ReaStream(またはその配下のエフェクト)のOutputを接続してください。


設定例

8. Mix後の音声をOBSへ戻す

7時点では実際の配信に音声が載ってくれません。これをOBSへ戻す必要があります。
手法としてAとBを用意しました。お好みの方法を選んでください。

8-A. VADを使う

ElementからVAD = 仮想オーディオデバイスへ音声を出力し、これをOBSで取り込む方法です。
VADの導入が必要な他、当該VADを他の用途で使っていないこと(今回の用途で占有できること)が条件です。

VADとは何か?に関しては下記が参考になります。

Graph 内コンテキストメニューで Audio Outputs にチェックが入っていることを確認してください。

次に OptionsAudio Output Device から、お使いのVADを選択します。

Graph 内に当該VADが表示されていますので、ここにAudio MixerのOutputを接続してください。


設定例

この状態で、当該VADをOBSでキャプチャすればOKです。新たに音声入力キャプチャを追加し、対応するVADを選択してください。


設定例

これで、Element上でMixした音声をOBSでキャプチャすることができました。

8-B. ReaStreamを経由して戻す

既にVADを他用途で占有している場合はこちらを参考にしてください。

こちらの方法ですと、冒頭に書いた "少々荒業的" な感覚を得られるかと思います。よりgracefulな方法があれば教えてください。

Element上でReaStreamを追加し、音声の送信Send audio/MIDI)を行うようにしてください。ここで設定するIdentifierも一意なものになるよう注意しましょう。


設定例

次にOBSのソースとして メディアソース を追加します。

音声ファイルとして無音のファイルを設定してください。無音のファイルはご自身で作成するか、あるいは外部から取得可能なものを設定するとよいかと思います。
常に無音のファイルが再生され続ける状態を作ればOKです。


設定例

次に当該メディアソースフィルタとして、ReaStreamの受信Receive audio/MIDI)側を設定してください。


設定例

これで、Element上でMixした音声をOBSでキャプチャすることができました。

ラウドネス分析をする

使用例です。

配信における音声の設定を考える時、ラウドネス分析は効果的かつ重要です。
OBSではMaster trackへVSTプラグインを適用する手段がないものの、本記事のような構成にすることで全てのトラックをMixした上でのラウドネス分析が容易に行えます。

Youlean Loudness Meterとは

今回ラウドネス分析の設定例中で利用するYoulean Loudness Meterは、Youlean Softwareが提供するVSTプラグインです。

ラウドネスメーターとして広く用いられるVSTプラグインにはMeldaProductionMLoudnessAnalyzerなど実績ある企業の優秀な製品も多くあります。その点Youlean Loudness Meterは新興でありますが、音響を専門としないユーザにとって扱いやすい機能を多数備えている為、手に馴染んだ製品がない場合にはおすすめできます。

Youlean Loudness Meterは無償で利用できますが、より高度な機能を使いたい場合には有償版を購入することができます

なお、執筆時環境はV2.4.3です。

1. ElementにYoulean Loudness Meterを追加する

Element(またはお使いのVSTホストアプリ)の Graph 内で Youlean Loudness Meter を追加します。

追加されたプラグインのInput/Outputを接続します。今回は最終的にYouTubeやTwitch等へ配信する際のMaster trackにおける値を分析することが目的なので、Audio Mixer配下に挿入するのが適切と考えられます。


設定例

2. 値を見ながら調整する

Youlean Loudness Meterの画面に表示される値を確認しながら、各デバイスやトラックの調整をします。
具体的にどのような調整を行うかは個々人の好みや技量にも依る為割愛しますが、

  • 各トラックの音量調整
  • コンプレッサーやイコライザを用いた音圧調整
  • 利用するマイク等ハードウェアの設定や位置調整

などが考えられます。

Youlean Loudness Meter 内での値として初めての方が確認すべき値としては、

  • INTEGRATED (LUFS)
  • TRUE PEAK MAX (dB)

の2点から始めるとよいでしょう。具体的には、

  1. BGM, ゲーム, マイク入力などを含め、トラック全体的に音声が入力されている状態を作る
  2. Clear all measurements.)ボタンをクリックする
  3. INTEGRATEDの値が-14 LUFS程度」「TRUE PEAK MAXの値が-1.0dB程度」となるよう調整する

のような作業を試みれば十分です。


まずはこの3か所だけ。

より具体的な作業については、下記の記事で解説しています。

各トラックの音量調整方法

Audio Mixer を開くことで、接続されている各トラックの音量調整を行うことができます。

各トラックの右にある黒いバーをドラッグすることで、音量を調整できます。またその下部にある M ボタンをクリックすることで、当該トラックをミュートにすることができます。

おわり

以上のように設定することで、OBSにおいて疑似的にBus trackを再現し、高度な音声処理が可能になります。参考にしてください。

以後の部分にコンテンツはありませんが、有料プランに加入するとシユカが今日食べたパスタソース(約24文字)を知ることができます。

【 拍手プラン 】プラン以上限定 支援額:110円

このバックナンバーを購入すると、このプランの2023/05に投稿された限定特典を閲覧できます。 バックナンバーとは?

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

シユカ 2023/05/01 11:11

コラボ配信で「アバターとゲーム」等の複数ウィンドウを共有する using VDO.Ninja

はじめに

VTuberやゲームストリーマー(ゲーム実況者)によるコラボ配信では、アバターやゲーム画面など複数のウィンドウを共有したいニーズが稀にあります。
一般的な手段では一度に共有可能な画面は1つに限られている場合が多く、これを実現する方法は明らかでない場合があります。

この記事では、VDO.Ninjaを用いた配信構成における複数画面共有設定のリファレンスとしてまとめを書いていきます。

前提

あわせて読みたい

本記事ではVDO.Ninjaを用いた映像伝送を行っていることを前提としています。下記の記事などを参考に、配信構成をされた経験が必要です。

Electron Captureとは

Electron Capture は、VDO.Ninja 向けに設計された簡易ブラウザアプリです。

通常VDO.Ninjaは、

といった形式で利用されます。が、上記にはいくつかの問題があり、それを解決する目的でVDO.Ninjaの開発者自身が公開しているアプリです。

今回はこのアプリを複数の画面を送出したい側、つまり配信ゲストが利用することで、複数画面の共有を実現します。
なお、配信ホスト側もゲスト同様に相手方と相互で複数画面を共有したい可能性がありますが、その場合も当然にホスト側でもこの手順を踏むだけでOKです。

ホストが行う作業

ホストが行う作業を記していきます。

1. 必要な場合、Electron Captureを導入する

ホスト側のElectron Capture導入は通常不要です。が、下記のようなケースに当てはまる場合は事前に導入してください。

  • ホストからも相手方に複数ウィンドウの共有をしたい
  • obs-browserを利用せず、Electron Capture経由でゲストの映像をキャプチャしたい

2. 配信準備やゲスト招待を行う

複数画面の送出を行わない限り、基本的に通常の準備と差分なく進めればOKです。

1に列挙したようなケースでホスト側もElectron Captureを利用したい場合がありますので、そのようなケースでのホスト側参考手順を記しておきます。

2-1. Electron Capture内の権限昇格を実行する

Electron Captureはブラウザアプリなので、任意のウェブサイトを閲覧することが可能ですが、VDO.Ninjaへのアクセス時に一般的なブラウザアプリと異なる動作をさせることで、ウィンドウキャプチャ等の機能を実現させています

VDO.Ninjaでの利用においては非常に便利ですが、その仕組故、Electron Captureでアクセスできる全てのウェブページでそのような動作をさせることは非常に危険です。

そこで、Electron Captureではそのような特権的機能の利用を行う場合には事前操作を行うようになっています。この操作は VDO.NinjaへアクセスするElectron Captureウィンドウのみ 行い、それ以外のウェブサイトへアクセスするElectron Captureウィンドウでは絶対に行わないでください

やりかたは簡単です。Electron Capture起動時のページでコンテキストメニューを開き、⚠️ Elevate Privilege をクリックするだけです。画面が再読み込みされます。

2-2. モニター用デバイスを選択する

Electron Captureは再生デバイスの切替が可能です。VDO.Ninja経由の音声について聴取するデバイスを変更する必要があれば、それに応じて選択してください。

2-3. Electron CaptureでVDO.Ninjaへアクセスする

Electron Captureはブラウザアプリですので、この中でVDO.Ninjaへアクセスしてください。起動時の画面にアドレスバー相当がありますので、ここへVDO.NinjaへのURLを入力し、GOをクリックするのみです。


要は https://vdo.ninja と入力するってこと

2-4. 招待など配信準備を進める

以後の操作は特段通常と差分なく進めて結構です。普段どおり配信準備を行い、ゲストをVDO.Ninjaへ招待し、必要に応じてOBSでキャプチャしてください。

Tips: ブラウザソースとしてElectron Captureを利用するには

せっかくElectron Captureをホスト側でも利用するなら、OBSでゲストの映像をキャプチャする場合にもこれを使うという選択肢があります。マストではありませんが、手順を記しておきます。

まずはゲストの copy solo view link からURLをコピーします。

次に、Electron Captureのコンテキストメニューから ✖ Open New Window をクリック。


なおアイコンは :cross_mark: ではなく :multiply: らしい

表示されたウィンドウで、さきほどコピーしたURLを張り付けて遷移します。

OBSでは上記により表示されたウィンドウを ウィンドウキャプチャ ソースを用いてキャプチャすればOKです。

なお配信レイアウトにおける画面サイズの変更は、OBS上で行う他、Electron Capture自身のウィンドウを拡大縮小する方法が取れます。OBS上で行うより、ウィンドウ自体を変更する方が通常は画質が適切です。

3. 必要なら、ホストからも複数ウィンドウの共有設定をする

ホスト側もゲストに対し複数の画面を共有する必要がある場合、自身をVDO.Ninjaへゲストとして招待し、そこで画面共有をすればOKです。
Electron Captureの新しいウィンドウを作り、権限昇格させ、招待URLから画面共有を掛ければよいでしょう。

具体的な手順はゲスト側作業と全く同じなので、続くセクションをお読みください。

ゲストが行う作業

招待されたゲスト側で行う作業を記していきます。

1. Electron Captureを導入する

今回はゲストのウィンドウを複数共有することが目的なので、事前に導入しておきます。

2. 送信するウィンドウ毎にElectron Captureで設定を行う

複数ウィンドウを共有する場合、そのウィンドウごとに新しいElectron Captureウィンドウを開く必要があります。ここから続く手順を繰り返してください。

2-1. Electron Capture内の権限昇格を実行する

Electron Captureはブラウザアプリなので、任意のウェブサイトを閲覧することが可能ですが、VDO.Ninjaへのアクセス時に一般的なブラウザアプリと異なる動作をさせることで、ウィンドウキャプチャ等の機能を実現させています

VDO.Ninjaでの利用においては非常に便利ですが、その仕組故、Electron Captureでアクセスできる全てのウェブページでそのような動作をさせることは非常に危険です。

そこで、Electron Captureではそのような特権的機能の利用を行う場合には事前操作を行うようになっています。この操作は VDO.NinjaへアクセスするElectron Captureウィンドウのみ 行い、それ以外のウェブサイトへアクセスするElectron Captureウィンドウでは絶対に行わないでください

やりかたは簡単です。Electron Capture起動時のページでコンテキストメニューを開き、⚠️ Elevate Privilege をクリックするだけです。画面が再読み込みされます。

2-2. モニター用デバイスを選択する

Electron Captureは再生デバイスの切替が可能です。VDO.Ninja経由の音声について聴取するデバイスを変更する必要があれば、それに応じて選択してください。

2-3. Electron Captureで招待URLへアクセスする

ホストから貰ったURLを、Electron Captureの起動時画面で入力し、GOをクリックします。


ここがアドレスバーに相当します

2-4. 画面共有準備をすすめる

作業は通常と変わりませんので、ゲストとして画面共有などを進めてください。

2-5. 次のウィンドウキャプチャを準備する

今回は1つだけでなく2つ以上のウィンドウをホストへ送出したいので、これを準備していきます。

Electron Captureのコンテキストメニューから ✖ Open New Window をクリック。


なおアイコンは :cross_mark: ではなく :multiply: らしい

すると新しいウィンドウでElectron Captureの起動時画面が表示されます。ここから改めてゲストとして設定を進めます。2-1. Electron Capture内の権限昇格を実行する まで戻り、各種設定を行い他のウィンドウを選択すればOKです。

おわり

以上のように設定することで、複数ウィンドウを共有したライブ配信が可能です。参考にしてください。

以後の部分にコンテンツはありませんが、有料プランに加入するとシユカが今日飲んでいるドリンク(約4文字)を知ることができます。

【 拍手プラン 】プラン以上限定 支援額:110円

このバックナンバーを購入すると、このプランの2023/05に投稿された限定特典を閲覧できます。 バックナンバーとは?

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

シユカ 2023/04/24 11:47

OBSの「アプリケーション音声キャプチャ」を使わずに特定アプリの音だけをキャプチャする

先日に投稿した「VDO.Ninjaの音声を聴きながらゲーム等の音声をキャプチャする」という記事では、特定アプリケーションの音声だけをキャプチャする方法として アプリケーション音声キャプチャ 機能を紹介しています。

が、この機能は少なくとも執筆時点の最新版である v29.0.2 時点では未だBeta版とされており、実際に一部環境では「長時間利用すると1分ほどノイズが入る」「1分ほど経過すると元に戻る」という不具合が報告されています。

必ずしも発生するものではない為、設定や依存するソフトウェアのシンプルさを勘案し、不具合が発生する可能性を理解した上で利用する選択も十分に取れます。が、やはり一時的とはいえノイズが乗る可能性を知りながら当該機能を利用するのは気持ちが悪いとも言えます。

この記事では、当該機能を使わずに特定アプリケーションの音声のみをOBSへ取り込む設定のリファレンスとしてまとめを書いていきます。

前提

1. 仮想オーディオデバイスを導入する

仮想オーディオデバイス、Virtual Audio Device、VAD、などと呼ばれるソフトウェアがあります。これは通常、仮想音声入力デバイス、仮想音声出力デバイス を対としたものであり、

  • 仮想音声出力デバイスをスピーカーに見立て、アプリケーションの出力先に設定する
  • 上記で出力された音声が、仮想音声入力デバイスから取り込める

という仕組みのものです。
様々な開発者がリリースしていますから、既にお使いのもの、自身の要件に合うものを探してみてください。下記は一例であり、(必ずしも)前提とするものではありません。

2. 「音声出力キャプチャ」 を削除する

もし既に 音声出力キャプチャ をソースとして追加している場合、これを削除してください。既にない場合は作業不要です。


🔊のアイコンが目印

3. アプリから音声を流す

キャプチャしたいアプリから音声を出力してください。

4. 「音量ミキサー」を開く

Windowsの 音量ミキサー を開きます。


🔊のコンテキストメニューから呼び出すと早い

アプリ 内に取り込みたいアプリが表示されていることを確認してください。


今回はChromeを例に取る

5. 出力先をVADに変える

当該アプリの設定を展開し、出力デバイス のドロップダウンから、お使いのVADを選択してください。


用事が済んだら元に戻しておくことを強く推奨します

6. OBSでVADの入力をキャプチャする

OBS上でソースとして 音声入力キャプチャ を追加します。


「音声 出力 キャプチャ」ではない点に注意

デバイスとして、お使いのVADを選択してください。

7. 音声をモニターする

特定アプリの音声のみをキャプチャする設定は完了したので、これを自身がモニターできるようにします。

オーディオの詳細プロパティ を開きます。

当該ソースについて、音声モニタリングモニターと出力 へ変更します。

おわり

以上のように設定することで、アプリケーション音声キャプチャ 機能を使わずに特定アプリケーションの音声のみをOBSで取り込むことが可能です。参考にしてください。

以後の部分にコンテンツはありませんが、有料プランに加入するとシユカが昨日食べたランチ(約20文字)を知ることができます。

【 拍手プラン 】プラン以上限定 支援額:110円

このバックナンバーを購入すると、このプランの2023/04に投稿された限定特典を閲覧できます。 バックナンバーとは?

この記事が良かったらチップを贈って支援しましょう!

チップを贈るにはユーザー登録が必要です。チップについてはこちら

« 1 2

記事のタグから探す

月別アーカイブ

記事を検索