347 {
"IART",
"artist" },
348 {
"ICMT",
"comment" },
349 {
"ICOP",
"copyright" },
352 {
"ILNG",
"language" },
356 {
"ISFT",
"encoder" },
357 {
"ITCH",
"encoded_by"},
362 "IARL",
"IART",
"ICMS",
"ICMT",
"ICOP",
"ICRD",
"ICRP",
"IDIM",
"IDPI",
363 "IENG",
"IGNR",
"IKEY",
"ILGT",
"ILNG",
"IMED",
"INAM",
"IPLT",
"IPRD",
364 "IPRT",
"ISBJ",
"ISFT",
"ISHP",
"ISRC",
"ISRF",
"ITCH",
390 int bps, blkalign, bytespersec;
392 int waveformatextensible;
394 uint8_t *riff_extradata= temp;
395 uint8_t *riff_extradata_start= temp;
403 if (waveformatextensible) {
448 bytestream_put_le16(&riff_extradata, 1);
449 bytestream_put_le32(&riff_extradata, 2);
450 bytestream_put_le16(&riff_extradata, 1152);
451 bytestream_put_le16(&riff_extradata, 1);
452 bytestream_put_le16(&riff_extradata, 1393);
455 bytestream_put_le16(&riff_extradata, 2);
456 bytestream_put_le32(&riff_extradata, enc->
bit_rate);
457 bytestream_put_le16(&riff_extradata, enc->
channels == 2 ? 1 : 8);
458 bytestream_put_le16(&riff_extradata, 0);
459 bytestream_put_le16(&riff_extradata, 1);
460 bytestream_put_le16(&riff_extradata, 16);
461 bytestream_put_le32(&riff_extradata, 0);
462 bytestream_put_le32(&riff_extradata, 0);
465 bytestream_put_le16(&riff_extradata, enc->
frame_size);
471 if(waveformatextensible) {
473 avio_wl16(pb, riff_extradata - riff_extradata_start + 22);
481 avio_wl16(pb, riff_extradata - riff_extradata_start);
483 avio_write(pb, riff_extradata_start, riff_extradata - riff_extradata_start);
515 #endif //CONFIG_MUXERS
543 cbSize =
FFMIN(size, cbSize);
544 if (cbSize >= 22 &&
id == 0xfffe) {
616 #endif // CONFIG_DEMUXERS
635 gcd=
av_gcd(*au_scale, *au_rate);
642 int64_t start, end, cur;
648 while ((cur =
avio_tell(pb)) >= 0 && cur <= end - 8 ) {
656 if (chunk_size > end || end - chunk_size < cur || chunk_size == UINT_MAX) {
661 chunk_size += (chunk_size & 1);
671 if (
avio_read(pb, value, chunk_size) != chunk_size) {
678 value[chunk_size] = 0;