# HG changeset patch # User bcoudurier # Date 1214124657 0 # Node ID 31aa7b51c13bf947b9e5ab8c6d1f25aa99a96500 # Parent e410c33e60f643ea237d633e9ac974776cc4d233 store dts in ffm headers diff -r e410c33e60f6 -r 31aa7b51c13b ffmenc.c --- a/ffmenc.c Sun Jun 22 08:44:58 2008 +0000 +++ b/ffmenc.c Sun Jun 22 08:50:57 2008 +0000 @@ -188,11 +188,11 @@ static int ffm_write_packet(AVFormatContext *s, AVPacket *pkt) { - int64_t pts; + int64_t dts; uint8_t header[FRAME_HEADER_SIZE]; int header_size = FRAME_HEADER_SIZE; - pts = s->timestamp + pkt->pts; + dts = s->timestamp + pkt->dts; /* packet size & key_frame */ header[0] = pkt->stream_index; header[1] = 0; @@ -200,14 +200,14 @@ header[1] |= FLAG_KEY_FRAME; AV_WB24(header+2, pkt->size); AV_WB24(header+5, pkt->duration); - AV_WB64(header+8, pts); + AV_WB64(header+8, s->timestamp + pkt->pts); if (pkt->pts != pkt->dts) { header[1] |= FLAG_DTS; AV_WB32(header+16, pkt->pts - pkt->dts); header_size += 4; } - ffm_write_data(s, header, header_size, pts, 1); - ffm_write_data(s, pkt->data, pkt->size, pts, 0); + ffm_write_data(s, header, header_size, dts, 1); + ffm_write_data(s, pkt->data, pkt->size, dts, 0); return 0; }