- memset(buffer, 0, 88);
- startpos = url_ftell(pb);
- put_le16(pb, 0); /* length */
- put_le16(pb, sc->media_info);
- put_le16(pb, 0); /* reserved */
- put_le16(pb, 0); /* reserved */
- put_le32(pb, gxf->nb_fields);
- put_le32(pb, 0); /* attributes rw, ro */
- put_le32(pb, 0); /* mark in */
- put_le32(pb, gxf->nb_fields); /* mark out */
- strncpy(buffer, ES_NAME_PATTERN, path_size);
- put_buffer(pb, (uint8_t *)buffer, path_size);
- put_be16(pb, sc->media_info);
- put_buffer(pb, (uint8_t *)buffer + path_size + 2, 88 - path_size - 2);
- put_le32(pb, sc->track_type);
- put_le32(pb, sc->sample_rate);
- put_le32(pb, sc->sample_size);
- put_le32(pb, 0); /* reserved */
+ startpos = avio_tell(pb);
+ avio_wl16(pb, 0); /* length */
+ avio_wl16(pb, sc->media_info);
+ avio_wl16(pb, 0); /* reserved */
+ avio_wl16(pb, 0); /* reserved */
+ avio_wl32(pb, gxf->nb_fields);
+ avio_wl32(pb, 0); /* attributes rw, ro */
+ avio_wl32(pb, 0); /* mark in */
+ avio_wl32(pb, gxf->nb_fields); /* mark out */
+ avio_write(pb, ES_NAME_PATTERN, strlen(ES_NAME_PATTERN));
+ avio_wb16(pb, sc->media_info);
+ for (j = strlen(ES_NAME_PATTERN)+2; j < 88; j++)
+ avio_w8(pb, 0);
+ avio_wl32(pb, sc->track_type);
+ avio_wl32(pb, sc->sample_rate);
+ avio_wl32(pb, sc->sample_size);
+ avio_wl32(pb, 0); /* reserved */