[FFmpeg-cvslog] r11043 - in trunk/libavformat: flvdec.c flvenc.c
alex
subversion
Fri Nov 16 01:09:35 CET 2007
Author: alex
Date: Fri Nov 16 01:09:34 2007
New Revision: 11043
Log:
Honor the 8bit extension (now 32bit instaed 24bit) of the pts field introduced in FLV specification v9.
Modified:
trunk/libavformat/flvdec.c
trunk/libavformat/flvenc.c
Modified: trunk/libavformat/flvdec.c
==============================================================================
--- trunk/libavformat/flvdec.c (original)
+++ trunk/libavformat/flvdec.c Fri Nov 16 01:09:34 2007
@@ -275,10 +275,11 @@ static int flv_read_packet(AVFormatConte
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)
Modified: trunk/libavformat/flvenc.c
==============================================================================
--- trunk/libavformat/flvenc.c (original)
+++ trunk/libavformat/flvenc.c Fri Nov 16 01:09:34 2007
@@ -307,7 +307,8 @@ static int flv_write_packet(AVFormatCont
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);
More information about the ffmpeg-cvslog
mailing list