static int asf_read_replicated_data(AVFormatContext *s, ASFPacket *asf_pkt)

{

    ASFContext *asf = s->priv_data;

    AVIOContext *pb = s->pb;

    int ret;



    if (!asf_pkt->data_size) {

        asf_pkt->data_size = asf_pkt->size_left = avio_rl32(pb); // read media object size

        if (asf_pkt->data_size <= 0)

            return AVERROR_INVALIDDATA;

        if ((ret = av_new_packet(&asf_pkt->avpkt, asf_pkt->data_size)) < 0)

            return ret;

    } else

        avio_skip(pb, 4); // reading of media object size is already done

    asf_pkt->dts = avio_rl32(pb); // read presentation time

    if (asf->rep_data_len && (asf->rep_data_len >= 8))

        avio_skip(pb, asf->rep_data_len - 8); // skip replicated data



    return 0;

}

static int asf_read_replicated_data(AVFormatContext *s, ASFPacket *asf_pkt)

{

    ASFContext *asf = s->priv_data;

    AVIOContext *pb = s->pb;

    int ret;



    if (!asf_pkt->data_size) {

        asf_pkt->data_size = asf_pkt->size_left = avio_rl32(pb); 

        if (asf_pkt->data_size <= 0)

            return AVERROR_INVALIDDATA;

        if ((ret = av_new_packet(&asf_pkt->avpkt, asf_pkt->data_size)) < 0)

            return ret;

    } else

        avio_skip(pb, 4); 

    asf_pkt->dts = avio_rl32(pb); 

    if (asf->rep_data_len && (asf->rep_data_len >= 8))

        avio_skip(pb, asf->rep_data_len - 8); 



    return 0;

}

    int ret;         if (asf_pkt->data_size <= 0)         if ((ret = av_new_packet(&asf_pkt->avpkt, asf_pkt->data_size)) < 0)     int ret;         if (asf_pkt->data_size <= 0)         if ((ret = av_new_packet(&asf_pkt->avpkt, asf_pkt->data_size)) < 0)
static int FUNC_0(AVFormatContext *VAR_0, ASFPacket *VAR_1)

{

    ASFContext *asf = VAR_0->priv_data;

    AVIOContext *pb = VAR_0->pb;

    int VAR_2;



    if (!VAR_1->data_size) {

        VAR_1->data_size = VAR_1->size_left = avio_rl32(pb); 

        if (VAR_1->data_size <= 0)

            return AVERROR_INVALIDDATA;

        if ((VAR_2 = av_new_packet(&VAR_1->avpkt, VAR_1->data_size)) < 0)

            return VAR_2;

    } else

        avio_skip(pb, 4); 

    VAR_1->dts = avio_rl32(pb); 

    if (asf->rep_data_len && (asf->rep_data_len >= 8))

        avio_skip(pb, asf->rep_data_len - 8); 



    return 0;

}

static int FUNC_0(AVFormatContext *VAR_0, ASFPacket *VAR_1)
{ ASFContext *asf = VAR_0->priv_data; AVIOContext *pb = VAR_0->pb; int VAR_2; if (!VAR_1->data_size) { VAR_1->data_size = VAR_1->size_left = avio_rl32(pb); if (VAR_1->data_size <= 0)
return AVERROR_INVALIDDATA; if ((VAR_2 = av_new_packet(&VAR_1->avpkt, VAR_1->data_size)) < 0)
return VAR_2; } else avio_skip(pb, 4); VAR_1->dts = avio_rl32(pb); if (asf->rep_data_len && (asf->rep_data_len >= 8))
avio_skip(pb, asf->rep_data_len - 8); return 0; }