- Timestamp:
- Mar 1, 2011 3:55:34 PM (13 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
pjproject/branches/projects/2.0-dev/pjmedia/src/pjmedia/clock_thread.c
r3402 r3431 143 143 pjmedia_clock **p_clock) 144 144 { 145 return pjmedia_clock_create2(pool, 146 (unsigned)(samples_per_frame * USEC_IN_SEC / 147 channel_count / clock_rate), 148 clock_rate, options, cb, user_data, p_clock); 145 pjmedia_clock_param param; 146 147 param.usec_interval = (unsigned)(samples_per_frame * USEC_IN_SEC / 148 channel_count / clock_rate); 149 param.clock_rate = clock_rate; 150 return pjmedia_clock_create2(pool, ¶m, options, cb, 151 user_data, p_clock); 149 152 } 150 153 151 154 PJ_DEF(pj_status_t) pjmedia_clock_create2(pj_pool_t *pool, 152 unsigned usec_interval, 153 unsigned clock_rate, 155 const pjmedia_clock_param *param, 154 156 unsigned options, 155 157 pjmedia_clock_callback *cb, … … 160 162 pj_status_t status; 161 163 162 PJ_ASSERT_RETURN(pool && usec_interval && clock_rate && p_clock,163 164 PJ_ASSERT_RETURN(pool && param->usec_interval && param->clock_rate && 165 p_clock, PJ_EINVAL); 164 166 165 167 clock = PJ_POOL_ALLOC_T(pool, pjmedia_clock); … … 169 171 return status; 170 172 171 clock->interval.u64 = usec_interval * clock->freq.u64 / USEC_IN_SEC; 173 clock->interval.u64 = param->usec_interval * clock->freq.u64 / 174 USEC_IN_SEC; 172 175 clock->next_tick.u64 = 0; 173 176 clock->timestamp.u64 = 0; 174 177 clock->max_jump = MAX_JUMP_MSEC * clock->freq.u64 / 1000; 175 clock->timestamp_inc = (unsigned)(usec_interval * clock_rate / 178 clock->timestamp_inc = (unsigned)(param->usec_interval * 179 param->clock_rate / 176 180 USEC_IN_SEC); 177 181 clock->options = options; … … 203 207 204 208 205 206 209 /* 207 210 * Start the clock. … … 238 241 239 242 clock->running = PJ_FALSE; 243 244 return PJ_SUCCESS; 245 } 246 247 248 /* 249 * Update the clock. 250 */ 251 PJ_DEF(pj_status_t) pjmedia_clock_modify(pjmedia_clock *clock, 252 const pjmedia_clock_param *param) 253 { 254 clock->interval.u64 = param->usec_interval * clock->freq.u64 / 255 USEC_IN_SEC; 256 clock->timestamp_inc = (unsigned)(param->usec_interval * 257 param->clock_rate / 258 USEC_IN_SEC); 240 259 241 260 return PJ_SUCCESS;
Note: See TracChangeset
for help on using the changeset viewer.