Mercurial > libavformat.hg
changeset 2756:8258fb5a6aa0 libavformat
Honor the 8bit extension (now 32bit instaed 24bit) of the pts field introduced in FLV specification v9.
author | alex |
---|---|
date | Fri, 16 Nov 2007 00:09:34 +0000 |
parents | bb9c77d499dd |
children | 39cac1b7296e |
files | flvdec.c flvenc.c |
diffstat | 2 files changed, 4 insertions(+), 2 deletions(-) [+] |
line wrap: on
line diff
--- a/flvdec.c Thu Nov 15 23:53:19 2007 +0000 +++ b/flvdec.c Fri Nov 16 00:09:34 2007 +0000 @@ -275,10 +275,11 @@ type = get_byte(&s->pb); size = get_be24(&s->pb); pts = get_be24(&s->pb); + pts |= get_byte(&s->pb) << 24; // av_log(s, AV_LOG_DEBUG, "type:%d, size:%d, pts:%d\n", type, size, pts); if (url_feof(&s->pb)) return AVERROR(EIO); - url_fskip(&s->pb, 4); /* reserved */ + url_fskip(&s->pb, 3); /* stream id, always 0 */ flags = 0; if(size == 0)
--- a/flvenc.c Thu Nov 15 23:53:19 2007 +0000 +++ b/flvenc.c Fri Nov 16 00:09:34 2007 +0000 @@ -307,7 +307,8 @@ put_be24(pb,size + flags_size); put_be24(pb,pkt->pts); - put_be32(pb,flv->reserved); + put_byte(pb,pkt->pts >> 24); + put_be24(pb,flv->reserved); put_byte(pb,flags); if (enc->codec_id == CODEC_ID_VP6) put_byte(pb,0);