クライアントに複数の Web カメラまたはマイクが接続されている場合、リモート デスクトップのリアルタイム オーディオビデオ機能で使用できる優先 Web カメラと優先マイクはそれぞれ 1 つだけです。優先する Web カメラとマイクを指定するには、ユーザーは[設定] メニューでオプションを設定するか、管理者は構成ファイルを編集できます。
優先する Web カメラまたはマイクを使用できる場合は、これらのカメラまたはマイクがリモート デスクトップで使用されます。使用できない場合は、すべての Web カメラとマイクがリダイレクトされます。
リアルタイム オーディオビデオ機能を使用すれば、Web カメラとオーディオ入力デバイスは USB リダイレクトを使用せずに動作し、必要となるネットワーク バンド幅の量は大幅に削減されます。アナログ オーディオ入力デバイスもサポートされます。
前提条件
- 優先 Web カメラを構成する場合は、その Web カメラがクライアント システムにインストールされ、動作できる状態であることを確認します。
- 優先マイクを構成する場合は、そのマイクがクライアント システムにインストールされ、動作できる状態であることを確認します。
- リモート デスクトップ用に VMware Blast 表示プロトコルまたは PCoIP 表示プロトコルを使用していることを確認します。
優先 Web カメラとマイクの構成の反映
Horizon Client では、リアルタイム オーディオビデオで優先する Web カメラとマイクの構成方法として、[設定] メニューを使用する方法と /etc/vmware/config 構成ファイルを使用する方法がサポートされています。これらの方法で設定した構成は、次のように適用され、他の構成と同期されます。
- ユーザーが [設定] メニューで優先する Web カメラとマイクの構成を変更した場合は、新しい構成がすぐに有効になります。この構成は、/etc/vmware/config で定義されている既存の構成よりも優先されます。
- 管理者が /etc/vmware/config で優先する Web カメラとマイクの構成を変更した場合は、ユーザーが Horizon Client を開始した後かリモート セッションに再接続した後に、新しい構成が有効になります。この時点で、[設定] メニューの構成と同期され、/etc/vmware/config の新しい構成が反映されます。
- 現在の Web カメラとマイクの構成を確認するには、~/.vmware/rtav-preferences ファイルを開きます。
これらの方法で優先する Web カメラとマイクの構成を設定する手順については、次のセクションを参照してください。
設定メニューを使用した優先 Web カメラとマイクの構成
- Horizon Client を起動し、サーバに接続します。
- デスクトップとアプリケーションの選択ウィンドウの右上隅で、[設定] ボタン(歯車のアイコン)をクリックします。
- [リアルタイム オーディオビデオ] を選択します。
- 優先デバイスを構成します。
- 優先 Web カメラを構成するには、[優先 Web カメラ] ドロップダウン メニューから、特定の Web カメラを選択します。
- 優先マイクを構成するには、[優先マイク] ドロップダウン メニューから特定のマイクを選択します。[デフォルト] を選択すると、クライアント システムで設定されているデフォルトのマイクが使用されます。
特定のデバイスを選択すると、そのデバイスのみがリモート デスクトップにリダイレクトされます。
[すべて] を選択すると、次のようにリダイレクトされます。
- Web カメラの場合、Horizon Client は、システムの Video4Linux (V4L) デバイス リストにあるすべてのデバイスをリダイレクトします。
- マイクの場合、Horizon Client は、クライアント システムに接続されているすべてのオーディオ入力デバイスをリダイレクトします。
/etc/vmware/config を使用した優先 Web カメラとマイクの構成
/etc/vmware/config ファイルにプロパティを設定し、優先するデバイスを指定するには、特定のフィールドの値を確定する必要があります。これらのフィールドの値については、ログ ファイルを検索できます。
- Web カメラについては、rtav.srcWCamId プロパティを Web カメラの UserId フィールドの値に設定し、rtav.srcWCamName プロパティを Web カメラの Name フィールドの値に設定します。
rtav.srcWCamName プロパティには、rtav.srcWCamId プロパティよりも高い優先度が設定されています。両方のプロパティでは、同じ Web カメラが指定されるはずです。これらのプロパティが異なる Web カメラを指定する場合、rtav.srcWCamName が存在する場合、このプロパティによって指定される Web カメラが使用されます。このプロパティが存在しない場合、rtav.srcWCamId によって指定される Web カメラが使用されます。両方の Web カメラが見つからない場合、デフォルトの Web カメラが使用されます。
- オーディオ入力デバイスの場合、rtav.srcAudioInId プロパティを Pulse Audio device.description フィールドの値に設定します。
- クライアントを起動し、Web カメラまたはマイクのアプリケーションを開始して、カメラ デバイスまたはオーディオ デバイスの一覧がクライアント ログに出力されるようにします。
- 使用する Web カメラまたはオーディオ デバイスを接続します。
- vmware-view コマンドを使用して Horizon Client を起動します。
- 呼び出しを開始し、その後呼び出しを停止します。
このプロセスでログ ファイルが作成されます。
- Web カメラまたはマイクというログのエントリを探します。
- テキスト エディタでデバッグ ログ ファイルを開きます。
リアルタイム オーディオビデオのログ メッセージが出力されるログ ファイルは、/tmp/vmware-<username>/vmware-RTAV-<pid>.log に保存されています。クライアント ログは、/tmp/vmware-<username>/vmware-view-<pid>.log に保存されています。
- ログ ファイルを検索して、接続されている Web カメラおよびマイクを参照しているログ ファイルのエントリを探します。
- Web カメラを抽出する例を以下に示します。
main| I120: RTAV: static void VideoInputBase::LogDevEnum() - 3 Device(s) found main| I120: RTAV: static void VideoInputBase::LogDevEnum() - Name=UVC Camera (046d:0819) UserId=UVC Camera (046d:0819)#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.4/1-3.4.5 SystemId=/dev/video1 main| I120: RTAV: static void VideoInputBase::LogDevEnum() - Name=gspca main driver UserId=gspca main driver#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.4/1-3.4.7 SystemId=/dev/video2 main| I120: RTAV: static void VideoInputBase::LogDevEnum() - Name=Microsoft® LifeCam HD-6000 for Notebooks UserId=Microsoft® LifeCam HD-6000 for Notebooks#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.6 SystemId=/dev/video0 main| W110: RTAV: static bool AudioCaptureLin::EnumCaptureDevices(MMDev::DeviceList&) - enumeration data unavailable
- オーディオ デバイスとそれぞれの現在のオーディオ レベルを抽出する例を以下に示します。
vthread-18| I120: RTAV: bool AudioCaptureLin::TriggerEnumDevices() - Triggering enumeration vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - PulseAudio Get Source (idx=1 'alsa_output.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-stereo.monitor' 'Monitor of Logitech USB Headset Analog Stereo') vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - channel:0 vol:65536 vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - channel:1 vol:65536 vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - PulseAudio Get Source (idx=2 'alsa_input.usb-Logitech_Logitech_USB_Headset-00-Headset.analog-mono' 'Logitech USB Headset Analog Mono') vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - channel:0 vol:98304 vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - PulseAudio Get Source (idx=3 'alsa_output.usb-Microsoft_Microsoft_LifeChat_LX-6000-00-LX6000.analog-stereo.monitor' 'Monitor of Microsoft LifeChat LX-6000 Analog Stereo') vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioGetSourceCB(pa_context*, const pa_source_info*, int, void*) - channel:0 vol:65536
-
選択したデバイスのいずれかのソース オーディオ レベルが PulseAudio 基準を満たしていない場合 (ソースが100% (0 dB) に設定されていない場合)、または選択したソース デバイスがミュートになっている場合は、以下の警告が表示されます。
vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioSourceInfoCB(pa_context*, const pa_source_info*, int, void*) - Note, selected device channel volume: 0: 67% vthread-18| I120: RTAV: static void AudioCaptureLin::PulseAudioSourceInfoCB(pa_context*, const pa_source_info*, int, void*) - Note, selected device channel is muted
- Web カメラを抽出する例を以下に示します。
- テキスト エディタでデバッグ ログ ファイルを開きます。
- デバイスの記述をコピーし、それを利用して /etc/vmware/config ファイルに正しくプロパティを設定します。
- Web カメラの例では、Microsoft® LifeCam HD-6000 for Notebooks と Microsoft® LifeCam HD-6000 for Notebooks#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.6 をコピーして、優先される Web カメラとして Microsoft の Web カメラを指定し、次のようにプロパティを設定します。
rtav.srcWCamName = “Microsoft® LifeCam HD-6000 for Notebooks” rtav.srcWCamId = “Microsoft® LifeCam HD-6000 for Notebooks#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.6”
この例では、rtav.srcWCamId プロパティを "Microsoft" に設定することもできます。rtav.srcWCamId プロパティは、部分および完全一致の両方をサポートします。rtav.srcWCamName プロパティは、完全一致のみをサポートします。
- オーディオ デバイスの場合には、たとえば Logitech ヘッドセットを優先オーディオ デバイスとして指定するために Logitech USB Headset Analog Mono をコピーし、プロパティを次のように設定します。
rtav.srcAudioInId="Logitech USB Headset Analog Mono"
- Web カメラの例では、Microsoft® LifeCam HD-6000 for Notebooks と Microsoft® LifeCam HD-6000 for Notebooks#/sys/devices/pci0000:00/0000:00:1a.7/usb1/1-3/1-3.6 をコピーして、優先される Web カメラとして Microsoft の Web カメラを指定し、次のようにプロパティを設定します。
- 変更を保存し、/etc/vmware/config 構成ファイルを閉じます。
- デスクトップ セッションからログアウトし、新しいセッションを開始します。
新しい構成は、新しいセッションの開始後に有効になります。