Changeset 1843:cc60d60e3d67 in roaraudio


Ignore:
Timestamp:
05/23/09 04:51:20 (15 years ago)
Author:
phi
Branch:
default
Phase:
public
Message:

warp midi_cb_*() functions in midi_*() functions, added bridge for CB

Location:
roard
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • roard/include/midi.h

    r1841 r1843  
    3737 
    3838int g_console; 
     39int g_midi_cb_stream; 
    3940 
    4041uint32_t g_midi_cb_stoptime; 
     
    5051 
    5152// cb = console beep 
     53int midi_cb_init(void); 
     54int midi_cb_free(void); 
    5255int midi_cb_play(float t, float freq, int override); 
    5356int midi_cb_update (void); 
  • roard/loop.c

    r1750 r1843  
    105105#endif 
    106106 
    107   midi_cb_update(); 
     107  midi_update(); 
    108108//  output_buffer_reinit(); 
    109109 
  • roard/midi.c

    r1751 r1843  
    3030 
    3131int midi_init (void) { 
     32 
     33 if ( midi_cb_init() == -1 ) { 
     34  ROAR_WARN("Can not initialize MIDI subsystem component CB"); 
     35 } 
     36 
     37 return 0; 
     38} 
     39int midi_free (void) { 
     40 return midi_cb_free(); 
     41} 
     42 
     43int midi_update(void) { 
     44 return midi_cb_update(); 
     45} 
     46 
     47 
     48int midi_cb_init (void) { 
    3249#ifdef _HAVE_CONSOLE 
     50 struct roar_stream * s; 
     51 struct roar_stream_server * ss; 
    3352 int i; 
    3453 char * files[] = { 
     
    4261 
    4362 g_console          = -1; 
    44  g_midi_cb_stoptime = 0; 
    45  g_midi_cb_playing  = 0; 
     63 g_midi_cb_stream   = -1; 
     64 g_midi_cb_stoptime =  0; 
     65 g_midi_cb_playing  =  0; 
    4666 
    4767 for (i = 0; files[i] != NULL; i++) { 
     
    5070 } 
    5171 
    52  if ( g_console != -1 ) { 
    53   return 0; 
    54  } else { 
     72 if ( g_console == -1 ) 
     73  return -1; 
     74 
     75 if ( (g_midi_cb_stream = streams_new()) == -1 ) { 
     76  ROAR_WARN("Error while initializing MIDI subsystem component CB"); 
     77  midi_cb_free(); 
    5578  return -1; 
    5679 } 
     80 
     81 streams_get(g_midi_cb_stream, &ss); 
     82 s = ROAR_STREAM(ss); 
     83 
     84 memcpy(&(s->info), g_sa, sizeof(struct roar_audio_info)); 
     85 
     86 s->pos_rel_id    = -1; 
     87 
     88 s->info.codec    =  0; 
     89 ss->codec_orgi   =  0; 
     90 
     91 s->info.channels =  1; 
     92 s->info.rate     = 1193180; 
     93 s->info.bits     =  8; 
     94 
     95 if ( streams_set_dir(g_midi_cb_stream, ROAR_DIR_BRIDGE, 1) == -1 ) { 
     96  ROAR_WARN("Error while initializing MIDI subsystem component CB"); 
     97  midi_cb_free(); 
     98  return -1; 
     99 } 
     100 
     101 streams_set_name(g_midi_cb_stream, "Console speaker bridge"); 
     102 
     103 streams_set_flag(g_midi_cb_stream, ROAR_FLAG_OUTPUT); 
     104 streams_set_flag(g_midi_cb_stream, ROAR_FLAG_PRIMARY); 
     105 
     106 return 0; 
    57107#else 
     108 g_console          = -1; 
     109 g_midi_cb_stream   = -1; 
     110 
    58111 return -1; 
    59112#endif 
    60113} 
    61114 
    62 int midi_free (void) { 
     115int midi_cb_free (void) { 
    63116#ifdef _HAVE_CONSOLE 
     117 
     118 midi_cb_stop(); 
     119 
     120 if ( g_midi_cb_stream != -1 ) 
     121  streams_delete(g_midi_cb_stream); 
     122 
    64123 if ( g_console != -1 ) 
    65124  close(g_console); 
     125 
    66126 return 0; 
    67127#else 
Note: See TracChangeset for help on using the changeset viewer.