Commit 9b92ed76 authored by Baptiste Coudurier's avatar Baptiste Coudurier
Browse files

update swf video frame number when muxing done, fix #439

Originally committed as revision 14293 to svn://svn.ffmpeg.org/ffmpeg/trunk
parent 79f4494a
......@@ -67,7 +67,7 @@ typedef struct {
int audio_stream_index;
offset_t duration_pos;
offset_t tag_pos;
offset_t vframes_pos;
int samples_per_frame;
int sound_samples;
int swf_frame_number;
......
......@@ -344,6 +344,7 @@ static int swf_write_video(AVFormatContext *s,
/* create a new video object */
put_swf_tag(s, TAG_VIDEOSTREAM);
put_le16(pb, VIDEO_ID);
swf->vframes_pos = url_ftell(pb);
put_le16(pb, 15000); /* hard flash player limit */
put_le16(pb, enc->width);
put_le16(pb, enc->height);
......@@ -495,6 +496,8 @@ static int swf_write_trailer(AVFormatContext *s)
put_le32(pb, file_size);
url_fseek(pb, swf->duration_pos, SEEK_SET);
put_le16(pb, swf->video_frame_number);
url_fseek(pb, swf->vframes_pos, SEEK_SET);
put_le16(pb, swf->video_frame_number);
url_fseek(pb, file_size, SEEK_SET);
}
return 0;
......
......@@ -12,7 +12,7 @@ bdb7484c68db722f66ba1630cf79844c *./tests/data/b-libav.mpg
447b005e527cf495ec13092e788f028d *./tests/data/b-libav.ts
471692 ./tests/data/b-libav.ts
./tests/data/b-libav.ts CRC=0xcc4948e1
d6fdeb9f7083cc827f9510c6c4517dc0 *./tests/data/b-libav.swf
1b28a16652bb8ac528b33f7478ca18b6 *./tests/data/b-libav.swf
335771 ./tests/data/b-libav.swf
./tests/data/b-libav.swf CRC=0xe14e8847
3dbacdc3fccb551f8ab54c32f648e7a8 *./tests/data/b-libav.ffm
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment