mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avformat: remove more unneeded avio_flush() calls
These instances are simply redundant or present because avio_flush() used to be required before doing a seekback. That is no longer the case, aviobuf code does the flush automatically on seek. This only affects code which is either disabled for streaming IO contexts or does no seekbacks after the flush, so this change should have no adverse effect on streaming. Signed-off-by: Marton Balint <cus@passwd.hu>
This commit is contained in:
parent
c371463915
commit
f4a8ea7ff6
@ -1130,7 +1130,6 @@ static int asf_write_trailer(AVFormatContext *s)
|
|||||||
return ret;
|
return ret;
|
||||||
asf_write_index(s, asf->index_ptr, asf->maximum_packet, asf->next_start_sec);
|
asf_write_index(s, asf->index_ptr, asf->maximum_packet, asf->next_start_sec);
|
||||||
}
|
}
|
||||||
avio_flush(s->pb);
|
|
||||||
|
|
||||||
if (asf->is_streamed || !(s->pb->seekable & AVIO_SEEKABLE_NORMAL)) {
|
if (asf->is_streamed || !(s->pb->seekable & AVIO_SEEKABLE_NORMAL)) {
|
||||||
put_chunk(s, 0x4524, 0, 0); /* end of stream */
|
put_chunk(s, 0x4524, 0, 0); /* end of stream */
|
||||||
|
@ -591,7 +591,6 @@ static void update_odml_entry(AVFormatContext *s, int stream_index, int64_t ix,
|
|||||||
int64_t pos;
|
int64_t pos;
|
||||||
int au_byterate, au_ssize, au_scale;
|
int au_byterate, au_ssize, au_scale;
|
||||||
|
|
||||||
avio_flush(pb);
|
|
||||||
pos = avio_tell(pb);
|
pos = avio_tell(pb);
|
||||||
|
|
||||||
/* Updating one entry in the AVI OpenDML master index */
|
/* Updating one entry in the AVI OpenDML master index */
|
||||||
|
@ -863,13 +863,11 @@ static int gxf_write_trailer(AVFormatContext *s)
|
|||||||
return ret;
|
return ret;
|
||||||
gxf_write_flt_packet(s);
|
gxf_write_flt_packet(s);
|
||||||
gxf_write_umf_packet(s);
|
gxf_write_umf_packet(s);
|
||||||
avio_flush(pb);
|
|
||||||
/* update duration in all map packets */
|
/* update duration in all map packets */
|
||||||
for (i = 1; i < gxf->map_offsets_nb; i++) {
|
for (i = 1; i < gxf->map_offsets_nb; i++) {
|
||||||
avio_seek(pb, gxf->map_offsets[i], SEEK_SET);
|
avio_seek(pb, gxf->map_offsets[i], SEEK_SET);
|
||||||
if ((ret = gxf_write_map_packet(s, 1)) < 0)
|
if ((ret = gxf_write_map_packet(s, 1)) < 0)
|
||||||
return ret;
|
return ret;
|
||||||
avio_flush(pb);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
avio_seek(pb, end, SEEK_SET);
|
avio_seek(pb, end, SEEK_SET);
|
||||||
|
@ -362,8 +362,6 @@ static int film_write_header(AVFormatContext *format_context)
|
|||||||
|
|
||||||
avio_wb32(pb, film->packet_count);
|
avio_wb32(pb, film->packet_count);
|
||||||
|
|
||||||
avio_flush(pb);
|
|
||||||
|
|
||||||
/* Finally, write out each packet's data to the header */
|
/* Finally, write out each packet's data to the header */
|
||||||
packet = film->start;
|
packet = film->start;
|
||||||
while (packet != NULL) {
|
while (packet != NULL) {
|
||||||
|
@ -411,17 +411,13 @@ static int wav_write_trailer(AVFormatContext *s)
|
|||||||
int rf64 = 0;
|
int rf64 = 0;
|
||||||
int ret = 0;
|
int ret = 0;
|
||||||
|
|
||||||
avio_flush(pb);
|
|
||||||
|
|
||||||
if (s->pb->seekable & AVIO_SEEKABLE_NORMAL) {
|
if (s->pb->seekable & AVIO_SEEKABLE_NORMAL) {
|
||||||
if (wav->write_peak != PEAK_ONLY && avio_tell(pb) - wav->data < UINT32_MAX) {
|
if (wav->write_peak != PEAK_ONLY && avio_tell(pb) - wav->data < UINT32_MAX) {
|
||||||
ff_end_tag(pb, wav->data);
|
ff_end_tag(pb, wav->data);
|
||||||
avio_flush(pb);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (wav->write_peak && wav->peak_output) {
|
if (wav->write_peak && wav->peak_output) {
|
||||||
ret = peak_write_chunk(s);
|
ret = peak_write_chunk(s);
|
||||||
avio_flush(pb);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* update file size */
|
/* update file size */
|
||||||
@ -433,8 +429,6 @@ static int wav_write_trailer(AVFormatContext *s)
|
|||||||
avio_seek(pb, 4, SEEK_SET);
|
avio_seek(pb, 4, SEEK_SET);
|
||||||
avio_wl32(pb, (uint32_t)(file_size - 8));
|
avio_wl32(pb, (uint32_t)(file_size - 8));
|
||||||
avio_seek(pb, file_size, SEEK_SET);
|
avio_seek(pb, file_size, SEEK_SET);
|
||||||
|
|
||||||
avio_flush(pb);
|
|
||||||
} else {
|
} else {
|
||||||
av_log(s, AV_LOG_ERROR,
|
av_log(s, AV_LOG_ERROR,
|
||||||
"Filesize %"PRId64" invalid for wav, output file will be broken\n",
|
"Filesize %"PRId64" invalid for wav, output file will be broken\n",
|
||||||
@ -454,7 +448,6 @@ static int wav_write_trailer(AVFormatContext *s)
|
|||||||
} else {
|
} else {
|
||||||
avio_wl32(pb, number_of_samples);
|
avio_wl32(pb, number_of_samples);
|
||||||
avio_seek(pb, file_size, SEEK_SET);
|
avio_seek(pb, file_size, SEEK_SET);
|
||||||
avio_flush(pb);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user