CVS: rdesktop rdpsnd.c, 1.14, 1.15 rdpsnd_dsp.c, 1.4, 1.5 rdpsnd_dsp.h, 1.1, 1.2

Michael Gernoth <[email protected]> Sun, 17 Sep 2006 11:08:54 -0700
Newsgroups gmane.network.rdesktop.cvs
Message-ID <[email protected]>
Update of /cvsroot/rdesktop/rdesktop
In directory sc8-pr-cvs9.sourceforge.net:/tmp/cvs-serv3802

Modified Files:
	rdpsnd.c rdpsnd_dsp.c rdpsnd_dsp.h 
Log Message:
call rdpsnd_dsp_process from a better place


Index: rdpsnd.c
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/rdpsnd.c,v
retrieving revision 1.14
retrieving revision 1.15
diff -C2 -d -r1.14 -r1.15
*** rdpsnd.c	17 Sep 2006 14:41:16 -0000	1.14
--- rdpsnd.c	17 Sep 2006 18:08:51 -0000	1.15
***************
*** 227,231 ****
  		}
  
! 		current_driver->wave_out_write(s, tick, packet_index);
  		awaiting_data_packet = False;
  		return;
--- 227,234 ----
  		}
  
! 		current_driver->
! 			wave_out_write(rdpsnd_dsp_process
! 				       (s, current_driver, &formats[current_format]), tick,
! 				       packet_index);
  		awaiting_data_packet = False;
  		return;
***************
*** 395,410 ****
  
  	packet->s = *s;
- 	packet->s.data =
- 		rdpsnd_dsp_process(s->data, s->size, current_driver, &formats[current_format]);
- 	packet->s.p = packet->s.data + 4;
- 	packet->s.end = packet->s.data + s->size;
  	packet->tick = tick;
  	packet->index = index;
  
- #if 0				/* Handled by DSP */
- 	/* we steal the data buffer from s, give it a new one */
- 	s->data = xmalloc(s->size);
- #endif
- 
  	if (!g_dsp_busy)
  		current_driver->wave_out_play();
--- 398,404 ----

Index: rdpsnd_dsp.c
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/rdpsnd_dsp.c,v
retrieving revision 1.4
retrieving revision 1.5
diff -C2 -d -r1.4 -r1.5
*** rdpsnd_dsp.c	17 Sep 2006 15:49:14 -0000	1.4
--- rdpsnd_dsp.c	17 Sep 2006 18:08:51 -0000	1.5
***************
*** 93,98 ****
  	}
  
! 	DEBUG(("using softvol with factors left: %d, right: %d (%d/%d)\n", factor_left, factor_right,
! 	       format->wBitsPerSample, format->nChannels));
  }
  
--- 93,98 ----
  	}
  
! 	DEBUG(("using softvol with factors left: %d, right: %d (%d/%d)\n", factor_left,
! 	       factor_right, format->wBitsPerSample, format->nChannels));
  }
  
***************
*** 114,136 ****
  }
  
- unsigned char *
- rdpsnd_dsp_process(unsigned char *inbuffer, unsigned int size, struct audio_driver *current_driver,
- 		   WAVEFORMATEX * format)
- {
- 	unsigned char *outbuffer;
  
! 	outbuffer = xmalloc(size);
! 
! 	memcpy(outbuffer, inbuffer, size);
  
! 	/* Software volume control */
  	if (current_driver->wave_out_volume == rdpsnd_dsp_softvol_set)
! 		rdpsnd_dsp_softvol(outbuffer, size, format);
  
  #ifdef B_ENDIAN
  	if (current_driver->need_byteswap_on_be)
! 		rdpsnd_dsp_swapbytes(outbuffer, size, format);
  #endif
  
! 	return outbuffer;
  }
--- 114,142 ----
  }
  
  
! STREAM
! rdpsnd_dsp_process(STREAM s, struct audio_driver *current_driver, WAVEFORMATEX * format)
! {
! 	static struct stream out;
  
! 	/* softvol and byteswap do not change the amount of data they
! 	   return, so they can operate on the input-stream */
  	if (current_driver->wave_out_volume == rdpsnd_dsp_softvol_set)
! 		rdpsnd_dsp_softvol(s->data, s->size, format);
  
  #ifdef B_ENDIAN
  	if (current_driver->need_byteswap_on_be)
! 		rdpsnd_dsp_swapbytes(s->data, s->size, format);
  #endif
  
! 	/* FIXME: where do we lose the 4 bytes referenced here? */
! 	out.data = xmalloc(s->size - 4);
! 
! 	memcpy(out.data, s->data + 4, s->size - 4);
! 
! 	out.size = s->size - 4;
! 	out.p = out.data;
! 	out.end = out.p + out.size;
! 
! 	return &out;
  }

Index: rdpsnd_dsp.h
===================================================================
RCS file: /cvsroot/rdesktop/rdesktop/rdpsnd_dsp.h,v
retrieving revision 1.1
retrieving revision 1.2
diff -C2 -d -r1.1 -r1.2
*** rdpsnd_dsp.h	17 Sep 2006 14:41:16 -0000	1.1
--- rdpsnd_dsp.h	17 Sep 2006 18:08:51 -0000	1.2
***************
*** 20,23 ****
  
  void rdpsnd_dsp_softvol_set(uint16 left, uint16 right);
! unsigned char *rdpsnd_dsp_process(unsigned char *inbuffer, unsigned int size,
! 				  struct audio_driver *current_driver, WAVEFORMATEX * format);
--- 20,23 ----
  
  void rdpsnd_dsp_softvol_set(uint16 left, uint16 right);
! 
! STREAM rdpsnd_dsp_process(STREAM s, struct audio_driver *current_driver, WAVEFORMATEX * format);


-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642