Skip to main content

2026 年 8 月 24 日

Linux クライアント システムでデフォルトまたは優先する Web カメラまたはマイクの選択

クライアントに複数の Web カメラまたはマイクが接続されている場合、リモート デスクトップの Real-Time Audio-Video 機能で優先して使用できる Web カメラとマイクはそれぞれ 1 つだけです。優先する Web カメラとマイクを指定するには、ユーザーは [設定] メニューでオプションを設定するか、管理者は構成ファイルを編集できます。

優先する Web カメラまたはマイクは、使用できる場合はリモート デスクトップで使用され、使用できない場合はすべての Web カメラとマイクがリダイレクトされます。

Real-Time Audio-Video 機能を使用すると、オーディオ入力デバイスは USB リダイレクトを使用せずに動作し、必要となるネットワーク帯域幅の量が大幅に削減されます。アナログ オーディオ入力デバイスもサポートされます。

前提条件

  • 優先する Web カメラを構成する場合は、その Web カメラがクライアント システムにインストールされ、動作可能な状態であることを確認します。
  • 優先マイクを構成する場合は、そのマイクがクライアント システムにインストールされ、動作できる状態であることを確認します。
  • リモート デスクトップ用に Omnissa Horizon Blast 表示プロトコルまたは PCoIP 表示プロトコルを使用していることを確認します。

優先 Web カメラとマイクの構成の仕組み

Omnissa Horizon Client では、Real-Time Audio-Video で優先する Web カメラとマイクの構成方法として、[設定] メニューを使用する方法と /etc/omnissa/config 構成ファイルを使用する方法がサポートされています。それぞれの方法で設定された構成がどのように有効になり、他の構成と同期するかを次に示します。

  • ユーザーが [設定] メニューで優先する Web カメラとマイクの構成を変更した場合は、新しい構成がすぐに有効になります。この構成は、/etc/omnissa/config で定義されている既存の構成よりも優先されます。
  • 管理者が /etc/omnissa/config で優先する Web カメラとマイクの構成を変更した場合は、ユーザーが Horizon Client を開始した後かリモート セッションに再接続した後に、新しい構成が有効になります。この時点で、[設定] メニューの構成と同期され、/etc/omnissa/config の新しい構成が反映されます。
  • 現在の Web カメラとマイクの構成を確認するには、~/.omnissa/rtav-preferences ファイルを開きます。

いずれかの方法で優先する Web カメラとマイクの構成を設定する方法については、次のセクションを参照してください。

[設定] メニューを使用した優先 Web カメラとマイクの構成

  1. Horizon Client を起動してサーバに接続します。

  2. デスクトップとアプリケーションの選択ウィンドウの右上隅で、[設定] ボタン(歯車のアイコン)をクリックします。

  3. [リアルタイム オーディオビデオ] を選択します。

  4. 優先デバイスを構成します。

    • 優先 Web カメラを構成するには、[優先 Web カメラ] ドロップダウン メニューから、特定の Web カメラを選択します。
    • 優先マイクを構成するには、[優先マイク] ドロップダウン メニューから特定のマイクを選択します。[デフォルト] を選択すると、クライアント システムで設定されているデフォルトのマイクが使用されます。 特定のデバイスを選択すると、選択したデバイスのみがリモート デスクトップにリダイレクトされます。

    [すべて] を選択すると、次のようにリダイレクトされます。

    • Web カメラの場合、Horizon Client は、システムの Video4Linux (V4L) デバイス リストにあるすべてのデバイスをリダイレクトします。
    • マイクの場合、Horizon Client は、クライアント システムに接続されているすべてのオーディオ入力デバイスをリダイレクトします。

/etc/omnissa/config を使用した優先 Web カメラとマイクの構成

/etc/omnissa/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 フィールドの値に設定します。

  1. クライアントを起動し、Web カメラまたはマイク アプリケーションを開始して、クライアント ログへのカメラ デバイスまたはオーディオ デバイスの列挙をトリガします。

    1. 使用する Web カメラまたはオーディオ デバイスを接続します。
    2. horizon-client コマンドを使用して Horizon Client を起動します。
    3. 呼び出しを開始して停止します。 このプロセスにより、ログ ファイルが作成されます。
  2. Web カメラまたはマイクのログ エントリを検索します。

    1. テキスト エディタで、デバッグ ログ ファイルを開きます。

      リアルタイム オーディオビデオのログ メッセージが含むログ ファイルは、/tmp/omnissa-<username>/omnissa-RTAV-<pid>.log に保存されています。クライアント ログは /tmp/omnissa-<username>/horizon-client-<pid>.log に保存されています。

    2. ログ ファイルを検索し、接続した 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
        
  3. デバイスの記述をコピーし、それを利用して /etc/omnissa/config ファイルに正しくプロパティを設定します。

    • Web カメラの例では、Microsoft® LifeCam HD-6000 for NotebooksMicrosoft® 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"
      
  4. 変更を保存し、/etc/omnissa/config 構成ファイルを閉じます。

  5. デスクトップ セッションをログアウトして、新しいセッションを開始します。

    新しいセッションを開始すると、新しい構成が有効になります。

このページは役に立ちましたか?

このトピックについてフィードバックを送信

このトピックは役に立ちましたか?

個人情報や機密情報は入力しないでください。

リンクを生成しています…