Why do I hear pops and crackles or dead air in my PCoIP session when connecting with a PCoIP Zero Client?

Rate this Article
Average: 1 (1 vote)

This article refers to the audio playback using the PCoIP Analog Audio Data Channel from a host machine to a PCoIP Zero Client. It does not apply to microphone input from a PCoIP Zero Client to a VM.

 

Problem

The PCoIP Zero Client must have either an Analogue audio device or a locally terminated USB Audio device attached while host machine has either the VMware virtual audio driver or Teradici virtual audio driver installed. The Teradici virtual audio driver is installed by default with the HP Anyware PCoIP Agent..

During audio playback pops and crackles or silence (dead air) can be heard sporadically.

 

Pops and Crackles

 

Cause

The PCoIP stream expects to use audio frames of 1920 bytes from the audio buffer. In the case where there are less than 1920 bytes available in the buffer (underrun), a crackle or pop results and the following line is logged in the PCoIP Zero Client:

MGMT_HDA:Not enough data in audio buffer, num_bytes =384, frame_size=1920, missing_bytes=1536

Underruns may develop when network impairments (i.e. bursty traffic, packet re-ordering, lost packets) occur which may cause some loss of audio data. The PCoIP protocol\u2019s audio algorithm will attempt to compensate for the change in network conditions and loss of audio data by copying previous data into the data stream using an interpolation process. This means even one byte missing will induce a crackle or pop in the audio data stream. If you see this line (see above) multiple times, it indicates a worsening network condition.

 

Silence / Dead Air

 

Cause

If the host machine determines that its transmit bandwidth is less than 50 kbits/s, audio playback is not transmitted. This will cause dead air in the audio stream. When this happens, you will see an entry in the VM log as the following:

MGMT_HDA :AUDIO enable changed state from 1 to 0

When enough bandwidth is once again available, you will see:

MGMT_HDA :AUDIO enable changed state from 0 to 1

The following log lines are more detailed log message generated from the PCoIP_Server logs (VM logs)

LVL:2 RC: 0 MGMT_HDA :Speaker audio disabled because of bandwidth constraint (bw_active = 0.00 MBit/s )
LVL:2 RC: 0 MGMT_HDA :Speaker audio is being disabled! (active-bw = 0.00 Mbps)
LVL:2 RC: 0 MGMT_HDA :AUDIO enable changed state from 1 to 0 
LVL:2 RC: 0 MGMT_HDA :Speaker audio is being enabled: encoding=STEREO-48K-ADPCM (active-bw=9.26 Mbps)
​LVL:2 RC: 0 MGMT_HDA :AUDIO enable changed state from 0 to 1

 

Resolution

These are expected behaviors if the network is congested or limited. For best performance, ensure the network bandwidth is sufficient.