/[rdesktop]/jpeg/rdesktop/trunk/rdpsnd_sun.c
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /jpeg/rdesktop/trunk/rdpsnd_sun.c

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1260 by stargo, Sun Sep 17 15:25:10 2006 UTC revision 1345 by ossman_, Thu Dec 7 11:54:29 2006 UTC
# Line 50  sun_open(void) Line 50  sun_open(void)
50          /* Non-blocking so that user interface is responsive */          /* Non-blocking so that user interface is responsive */
51          fcntl(g_dsp_fd, F_SETFL, fcntl(g_dsp_fd, F_GETFL) | O_NONBLOCK);          fcntl(g_dsp_fd, F_SETFL, fcntl(g_dsp_fd, F_GETFL) | O_NONBLOCK);
52    
         rdpsnd_queue_init();  
53          g_reopened = True;          g_reopened = True;
54    
55          return True;          return True;
# Line 61  sun_close(void) Line 60  sun_close(void)
60  {  {
61          /* Ack all remaining packets */          /* Ack all remaining packets */
62          while (!rdpsnd_queue_empty())          while (!rdpsnd_queue_empty())
63          {                  rdpsnd_queue_next(0);
                 rdpsnd_send_completion(rdpsnd_queue_current_packet()->tick,  
                                        rdpsnd_queue_current_packet()->index);  
                 rdpsnd_queue_next();  
         }  
64    
65  #if defined I_FLUSH && defined FLUSHW  #if defined I_FLUSH && defined FLUSHW
66          /* Flush the audiobuffer */          /* Flush the audiobuffer */
# Line 235  sun_play(void) Line 230  sun_play(void)
230                                  samplecnt += numsamples;                                  samplecnt += numsamples;
231                                  /* We need to add 50 to tell windows that time has passed while                                  /* We need to add 50 to tell windows that time has passed while
232                                   * playing this packet */                                   * playing this packet */
233                                  rdpsnd_send_completion(packet->tick + 50, packet->index);                                  rdpsnd_queue_next(50);
                                 rdpsnd_queue_next();  
234                                  sentcompletion = True;                                  sentcompletion = True;
235                          }                          }
236                          else                          else
# Line 248  sun_play(void) Line 242  sun_play(void)
242          }          }
243  }  }
244    
245    static struct audio_driver sun_driver = {
246            .name = "sun",
247            .description = "SUN/BSD output driver, default device: " DEFAULTDEVICE " or $AUDIODEV",
248    
249            .wave_out_open = sun_open,
250            .wave_out_close = sun_close,
251            .wave_out_format_supported = sun_format_supported,
252            .wave_out_set_format = sun_set_format,
253            .wave_out_volume = sun_volume,
254            .wave_out_play = sun_play,
255    
256            .need_byteswap_on_be = 1,
257            .need_resampling = 0,
258    };
259    
260  struct audio_driver *  struct audio_driver *
261  sun_register(char *options)  sun_register(char *options)
262  {  {
         static struct audio_driver sun_driver;  
   
         sun_driver.wave_out_write = rdpsnd_queue_write;  
         sun_driver.wave_out_open = sun_open;  
         sun_driver.wave_out_close = sun_close;  
         sun_driver.wave_out_format_supported = sun_format_supported;  
         sun_driver.wave_out_set_format = sun_set_format;  
         sun_driver.wave_out_volume = sun_volume;  
         sun_driver.wave_out_play = sun_play;  
         sun_driver.name = xstrdup("sun");  
         sun_driver.description =  
                 xstrdup("SUN/BSD output driver, default device: " DEFAULTDEVICE " or $AUDIODEV");  
         sun_driver.need_byteswap_on_be = 1;  
         sun_driver.next = NULL;  
   
263          if (options)          if (options)
264          {          {
265                  dsp_dev = xstrdup(options);                  dsp_dev = xstrdup(options);

Legend:
Removed from v.1260  
changed lines
  Added in v.1345

  ViewVC Help
Powered by ViewVC 1.1.26