Changeset 455:2aca84291306 in roaraudio
- Timestamp:
- 08/12/08 04:00:00 (16 years ago)
- Branch:
- default
- Phase:
- public
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
plugins/xmms/roar.c
r454 r455 52 52 roar_free, 53 53 roar_playing, 54 NULL, //roar_get_output_time,55 NULL, //roar_get_written_time,54 roar_get_output_time, 55 roar_get_written_time, 56 56 }; 57 57 … … 65 65 struct roar_stream stream; 66 66 int data_fh; 67 long int written; 68 int bps; 67 69 } g_inst; 68 70 … … 82 84 83 85 void roar_write(void *ptr, int length) { 84 write(g_inst.data_fh, ptr, length); 86 int r; 87 if ( (r = write(g_inst.data_fh, ptr, length)) != -1 ) 88 g_inst.written += r; 85 89 } 86 90 … … 132 136 } 133 137 138 g_inst.bps = nch * rate * bits / 8; 139 134 140 if ( (g_inst.data_fh = roar_simple_new_stream_obj(&(g_inst.con), &(g_inst.stream), 135 141 rate, nch, bits, codec, ROAR_DIR_PLAY)) == -1) { … … 137 143 } 138 144 g_inst.state |= STATE_PLAYING; 145 146 g_inst.written = 0; 139 147 140 148 return TRUE; … … 145 153 g_inst.state |= STATE_PLAYING; 146 154 g_inst.state -= STATE_PLAYING; 155 g_inst.written = 0; 147 156 } 148 157 149 158 void roar_pause(short p); 150 int roar_get_output_time(void);151 int roar_get_written_time(void);152 159 153 160 int roar_free(void) { … … 155 162 } 156 163 164 int roar_get_output_time(void) { 165 return roar_get_written_time(); 166 } 167 int roar_get_written_time(void) { 168 return (g_inst.written * 1000) / g_inst.bps; 169 } 170 157 171 //ll
Note: See TracChangeset
for help on using the changeset viewer.