If you have multiple webcams or microphones on the Mac client, you can use only one webcam and one microphone in a remote desktop with the Real-Time Audio-Video feature. You specify the preferred webcam and microphone at the command line by using the Mac defaults system.

With the Real-Time Audio-Video feature, webcams, audio input devices, and audio output devices do not require USB redirection to work and the required network bandwidth is reduced. Analog audio input devices are also supported.

In most environments, you do not need to configure a preferred microphone or webcam. If you do not set a preferred microphone, remote desktops use the default audio device set in the client system's System Preferences. See Select a Default Microphone on the Mac Client. If you do not configure a preferred webcam, the remote desktop selects the webcam by enumeration.

Prerequisites

  • If you are configuring a preferred USB webcam, verify that the webcam is installed and operational on the client system.
  • If you are configuring a preferred USB microphone or another type of microphone, verify that the microphone is installed and operational on the Mac client.
  • Use the VMware Blast display protocol or the PCoIP display protocol for the remote desktop.

Procedure

  1. On the Mac client, start a webcam or microphone application to trigger an enumeration of camera devices or audio devices to the Real-Time Audio-Video log file.
    1. Attach the webcam or audio device.
    2. In the Applications folder, double-click VMware Horizon Client to start Horizon Client.
    3. Start a call and then stop the call.
  2. Find log entries for the webcam or microphone in the Real-Time Audio-Video log file.
    1. In a text editor, open the Real-Time Audio-Video log file.
      The Real-Time Audio-Video log file is named ~/Library/Logs/VMware Horizon Client/vmware-RTAV-pid.log, where pid is the process ID of the current session.
    2. Search the Real-Time Audio-Video log file for entries that identify the attached webcams or microphones.
    The following example shows how webcam entries might appear in the Real-Time Audio-Video log file:
    2013-12-16T12:18:17.404Z| vthread-3| I120: RTAV: static void VideoInputBase::LogDevEnum() - 1 Device(s) found
    2013-12-16T12:18:17.404Z| vthread-3| I120: RTAV: static void VideoInputBase::LogDevEnum() - Name=FaceTime HD Camera (Built-in)   UserId=FaceTime HD Camera (Built-in)#0xfa20000005ac8509   SystemId=0xfa20000005ac8509
    The following example shows how microphone entries might appear in the Real-Time Audio-Video log file:
    2013-12-16T12:18:17.404Z| vthread-3| I120: RTAV: int AVCaptureEnumerateAudioDevices(MMDev::DeviceList&) - 
    2013-12-16T12:18:17.404Z| vthread-3| I120: RTAV: static void AudioCaptureBase::LogDevEnum() - 2 Device(s) found
    2013-12-16T12:18:17.404Z| vthread-3| I120: RTAV: static void AudioCaptureBase::LogDevEnum() - Index=255   Name=Built-in Microphone   UserId=Built-in Microphone#AppleHDAEngineInput:1B,0,1,0:1   SystemId=AppleHDAEngineInput:1B,0,1,0:1
    2013-12-16T12:18:17.404Z| vthread-3| I120: RTAV: static void AudioCaptureBase::LogDevEnum() - Index=255   Name=Built-in Input   UserId=Built-in Input#AppleHDAEngineInput:1B,0,1,1:2   SystemId=AppleHDAEngineInput:1B,0,1,1:2
  3. Find the webcam or microphone that you prefer in the Real-Time Audio-Video log file and make a note of its user ID.
    The user ID appears after the string UserId= in the log file. For example, the user ID of the internal face time camera is FaceTime HD Camera (Built-in) and the user ID of the internal microphone is Built-in Microphone.
  4. In Terminal (/Applications/Utilities/Terminal.app), use the defaults write command to set the preferred webcam or microphone.
    Option Action
    Set the preferred webcam Type defaults write com.vmware.rtav srcWCamId "webcam-userid", where webcam-userid is the user ID of the preferred webcam, which you obtained from the Real-Time Audio-Video log file. For example:
    defaults write com.vmware.rtav srcWCamId "HD Webcam C525”
    Set the preferred microphone Type defaults write com.vmware.rtav srcAudioInId "audio-device-userid", where audio-device-userid is the user ID of the preferred microphone, which you obtained from the Real-Time Audio-Video log file. For example:
    defaults write com.vmware.rtav srcAudioInId "Built-in Microphone"
  5. (Optional) Use the defaults read command to verify your changes to the Real-Time Audio-Video feature.
    For example: defaults read com.vmware.rtav
    The command lists all the Real-Time Audio-Video settings.

Results

The next time you connect to a remote desktop and start a new call, the remote desktop uses the preferred webcam or microphone that you configured, if it is available. If the preferred webcam or microphone is not available, the remote desktop can use another available webcam or microphone.