Lines Matching refs:vhd
108 struct raw_vhd *vhd = (struct raw_vhd *)lws_protocol_vh_priv_get(
114 vhd = lws_protocol_vh_priv_zalloc(lws_get_vhost(wsi),
117 if (set_hw_params(lws_get_vhost(wsi), &vhd->pcm_playback,
125 if (set_hw_params(lws_get_vhost(wsi), &vhd->pcm_capture,
136 if (vhd && vhd->pcm_playback) {
137 snd_pcm_drain(vhd->pcm_playback);
138 snd_pcm_close(vhd->pcm_playback);
139 vhd->pcm_playback = NULL;
141 if (vhd && vhd->pcm_capture) {
142 snd_pcm_close(vhd->pcm_capture);
143 vhd->pcm_capture = NULL;
148 if (vhd->times >= 6) { /* delay amount decided by this */
149 n = snd_pcm_writei(vhd->pcm_playback,
150 &vhd->simplebuf[vhd->rpos],
151 ((vhd->wpos - vhd->rpos) &
152 (sizeof(vhd->simplebuf) - 1)) / 2);
153 vhd->rpos = (vhd->rpos + (n * 2)) &
154 (sizeof(vhd->simplebuf) - 1);
157 n = snd_pcm_readi(vhd->pcm_capture, &vhd->simplebuf[vhd->wpos],
158 (sizeof(vhd->simplebuf) - vhd->wpos) / 2);
160 vhd->times++;
162 vhd->wpos = (vhd->wpos + (n * 2)) & (sizeof(vhd->simplebuf) - 1);