Browse Source

Parse fact chunks from wav files to find duration.

Originally committed as revision 26370 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/n0.8
Michael Niedermayer 14 years ago
parent
commit
f9329946d0
1 changed files with 12 additions and 1 deletions
  1. +12
    -1
      libavformat/wav.c

+ 12
- 1
libavformat/wav.c View File

@@ -232,7 +232,18 @@ static int wav_read_header(AVFormatContext *s,

av_set_pts_info(st, 64, 1, st->codec->sample_rate);

size = find_tag(pb, MKTAG('d', 'a', 't', 'a'));
for (;;) {
if (url_feof(pb))
return -1;
size = next_tag(pb, &tag);
if (tag == MKTAG('d', 'a', 't', 'a')){
break;
}else if (tag == MKTAG('f','a','c','t') && !sample_count){
sample_count = get_le32(pb);
size -= 4;
}
url_fseek(pb, size, SEEK_CUR);
}
if (rf64)
size = data_size;
if (size < 0)


Loading…
Cancel
Save