timestamps in flv are 32bits _signed_ according to flash player, specs are wrong

Originally committed as revision 15045 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
Baptiste Coudurier 2008-08-30 03:07:31 +00:00
parent 6f4eb12d31
commit b83a00b8b6
1 changed files with 1 additions and 1 deletions

View File

@ -351,7 +351,7 @@ static int flv_write_packet(AVFormatContext *s, AVPacket *pkt)
ts = pkt->dts + flv->delay; // add delay to force positive dts ts = pkt->dts + flv->delay; // add delay to force positive dts
put_be24(pb,size + flags_size); put_be24(pb,size + flags_size);
put_be24(pb,ts); put_be24(pb,ts);
put_byte(pb,ts >> 24); put_byte(pb,(ts >> 24) & 0x7F); // timestamps are 32bits _signed_
put_be24(pb,flv->reserved); put_be24(pb,flv->reserved);
put_byte(pb,flags); put_byte(pb,flags);
if (enc->codec_id == CODEC_ID_VP6) if (enc->codec_id == CODEC_ID_VP6)