Ignore:
Timestamp:
Dec 10, 2010 11:04:30 AM (13 years ago)
Author:
bennylp
Message:

Migration of current video works from private repository to this repository. This closed #1176

File:
1 edited

Legend:

Unmodified
Added
Removed
  • pjproject/branches/projects/2.0-dev/pjmedia/src/pjmedia/wav_player.c

    r2394 r3392  
    169169    pj_ssize_t size_to_read, size_read; 
    170170    struct file_reader_port *fport; 
     171    pjmedia_audio_format_detail *ad; 
    171172    pj_off_t pos; 
     173    pj_str_t name; 
     174    unsigned samples_per_frame; 
    172175    pj_status_t status = PJ_SUCCESS; 
    173176 
     
    332335 
    333336    /* Update port info. */ 
    334     fport->base.info.channel_count = wave_hdr.fmt_hdr.nchan; 
    335     fport->base.info.clock_rate = wave_hdr.fmt_hdr.sample_rate; 
    336     fport->base.info.bits_per_sample = BITS_PER_SAMPLE; 
    337     fport->base.info.samples_per_frame = fport->base.info.clock_rate * 
    338                                          wave_hdr.fmt_hdr.nchan * 
    339                                          ptime / 1000; 
    340     fport->base.info.bytes_per_frame =  
    341         fport->base.info.samples_per_frame *  
    342         fport->base.info.bits_per_sample / 8; 
    343  
    344     pj_strdup2(pool, &fport->base.info.name, filename); 
     337    ad = pjmedia_format_get_audio_format_detail(&fport->base.info.fmt, 1); 
     338    pj_strdup2(pool, &name, filename); 
     339    samples_per_frame = ptime * wave_hdr.fmt_hdr.sample_rate * 
     340                        wave_hdr.fmt_hdr.nchan / 1000; 
     341    pjmedia_port_info_init(&fport->base.info, &name, SIGNATURE, 
     342                           wave_hdr.fmt_hdr.sample_rate, 
     343                           wave_hdr.fmt_hdr.nchan, 
     344                           BITS_PER_SAMPLE, 
     345                           samples_per_frame); 
    345346 
    346347    /* If file is shorter than buffer size, adjust buffer size to file 
     
    359360     * doesn't handle this case). 
    360361     */ 
    361     if (fport->base.info.samples_per_frame * fport->bytes_per_sample >= 
    362         fport->bufsize) 
    363     { 
     362    if (samples_per_frame * fport->bytes_per_sample >= fport->bufsize) { 
    364363        pj_file_close(fport->fd); 
    365364        return PJ_EINVAL; 
     
    395394              (int)fport->base.info.name.slen, 
    396395              fport->base.info.name.ptr, 
    397               fport->base.info.clock_rate, 
    398               fport->base.info.channel_count, 
     396              ad->clock_rate, 
     397              ad->channel_count, 
    399398              fport->bufsize / 1000, 
    400399              (unsigned long)(fport->fsize / 1000))); 
Note: See TracChangeset for help on using the changeset viewer.