mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2025-01-08 13:22:53 +02:00
update swf video frame number when muxing done, fix #439
Originally committed as revision 14293 to svn://svn.ffmpeg.org/ffmpeg/trunk
This commit is contained in:
parent
79f4494a04
commit
9b92ed7666
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user